如何修复“此版本的应用程序未配置市场计费”?
当我尝试进行应用内购买时,我不断收到此错误。我已经上传了此应用程序的先前版本,在其中我能够成功进行应用内购买!我查看了清单文件,它是相同的(版本代码除外) - 但我无法摆脱这个错误:(
有没有一个文档描述如何处理这个问题?我已经尝试了这个论坛中建议的所有补救措施,包括: - 确保我构建了一个未签名的 apk 并使用我的发布密钥显式对其进行签名(是的 - 我已检查以确保密钥/密码准确) - 确保启用了正确的权限(自从上次成功构建以来没有改变这一点
我错过了一些微不足道的东西 - 但对于我的生活,我无法弄清楚什么!
请帮忙!
下面是我的清单文件:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.foo.bar"
android:versionName="1.4" android:versionCode="18">
<uses-sdk android:minSdkVersion="9"
android:targetSdkVersion="9" />
<uses-permission android:name="android.permission.WAKE_LOCK" >
</uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >
</uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" >
</uses-permission>
<uses-permission android:name="com.android.vending.BILLING" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<application
android:debuggable="false"
android:icon="@drawable/video"
android:label="@string/app_name" >
<activity android:name="com.inappbilling.InappActivity" />
<activity
android:configChanges="orientation"
android:label="@string/app_name"
android:name=".SplashActivity"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Favorites"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<activity
android:name=".PlayVideo"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<activity
android:name=".Featured"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<activity
android:name=".FacebookLike"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<service android:name="com.inappbilling.BillingService" />
<receiver android:name="com.inappbilling.BillingReceiver" >
<intent-filter >
<action android:name="com.android.vending.billing.IN_APP_NOTIFY" />
<action android:name="com.android.vending.billing.RESPONSE_CODE" />
<action android:name="com.android.vending.billing.PURCHASE_STATE_CHANGED" />
</intent-filter>
</receiver>
</application>
</manifest>
I keep getting this error when I try to make an in-app purchase. I have uploaded a previous version of this app where I was able to make in-app purchases successfully! I have looked at the manifest file and it is identical (except for the version code) - but I cannot shake off this error :(
Is there a document that describes how to handle this? I have tried all the remedies suggested in this forum, including:
- making sure that I build an unsigned apk and explicitly sign it with my release key (yes - I have checked to make sure that the key/password is accurate)
- making sure that the right permissions are enabled (havent changed this since the last successful build
I am missing something trivial - but for the life of me, I cannot figure what!
Please help!
Here is my manifest file below:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.foo.bar"
android:versionName="1.4" android:versionCode="18">
<uses-sdk android:minSdkVersion="9"
android:targetSdkVersion="9" />
<uses-permission android:name="android.permission.WAKE_LOCK" >
</uses-permission>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" >
</uses-permission>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET" >
</uses-permission>
<uses-permission android:name="com.android.vending.BILLING" />
<supports-screens
android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
<application
android:debuggable="false"
android:icon="@drawable/video"
android:label="@string/app_name" >
<activity android:name="com.inappbilling.InappActivity" />
<activity
android:configChanges="orientation"
android:label="@string/app_name"
android:name=".SplashActivity"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".Favorites"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<activity
android:name=".PlayVideo"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<activity
android:name=".Featured"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<activity
android:name=".FacebookLike"
android:screenOrientation="landscape"
android:theme="@android:style/Theme.NoTitleBar.Fullscreen" >
</activity>
<service android:name="com.inappbilling.BillingService" />
<receiver android:name="com.inappbilling.BillingReceiver" >
<intent-filter >
<action android:name="com.android.vending.billing.IN_APP_NOTIFY" />
<action android:name="com.android.vending.billing.RESPONSE_CODE" />
<action android:name="com.android.vending.billing.PURCHASE_STATE_CHANGED" />
</intent-filter>
</receiver>
</application>
</manifest>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
您说您已经导出了签名的应用程序(“发布”版本),所以我能想到的唯一其他可能性是您设备上的发布版本是 高于高于“已发布”的版本。
You say that you already exported a signed application ("release" version), so the only other possibility I can think of is that the release version on your device is higher than the one "published".
我遇到了这个错误,并尝试了有关该主题的其他帖子的各种建议,但没有成功。
最后我发现这是由于我的调试器使用了与我上传到 Google Play 的 APK 不同的密钥造成的。
我使用的是默认的 debug.keystore,它会在一年内过期。
我必须创建一个新的 debug.keystore,它会在五十多年后过期(当我尝试上传它时,此限制来自 Google Play 中的一条错误消息)。
然后,我构建了应用程序并从应用程序的 bin 文件夹(使用新的 debug.keystore 构建)上传了 APK。
在 Windows 7 上,您可以使用以下命令生成新的 debug.keystore(首先删除现有的 debug.keystore):
C:\Users\MyUserName\.android>"C:\Program Files\Java\jdk1.6.0\ bin"\keytool.exe -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 21900
您的 keytool.exe 路径可能与我的不同,具体取决于安装的内容。
I had this error and tried various suggestions from other posts on this topic but none worked.
In the end I found that it was caused by my debugger using a different key to the APK I uploaded to Google Play.
I was using the default debug.keystore which expires within a year.
I had to create a new debug.keystore which expires in more than fifty years (this limit came form an error message in Google Play when I tried to upload it).
I then built the application and uploaded the APK from my application's bin folder (built with my new debug.keystore).
On Windows 7 you can generate the new debug.keystore with this command (delete the existing debug.keystore first):
C:\Users\MyUserName\.android>"C:\Program Files\Java\jdk1.6.0\bin"\keytool.exe -genkey -v -keystore debug.keystore -alias androiddebugkey -storepass android -keypass android -keyalg RSA -validity 21900
Your path to keytool.exe might differ from mine depending upon what is installed.
请将该应用程序导出为签名应用程序,然后将其安装在手机上,您将永远不会再看到此错误。
您也可以参考该链接:
应用程序错误:此版本的应用程序未配置市场计费
PLease export the app as signed application and then install it on the phone, you will never see this error in further.
You can refer the link also:
Application Error : This version of the application is not configured for Market Billing
我遇到了同样的问题,必须从市场本身安装该应用程序才能正常工作。由于某种原因,侧载相同的 APK 不起作用。
I had the same problem and had to install the app from the market itself before it worked. Sideloading the same APK didn't work for some reason.
我没有直接从 IDe ( Eclipse ) 运行应用程序,而是
安装上传到 Android 市场的最新 Apk 文件,
后来我遇到了同样的问题,因为我正在运行应用程序的调试、未签名版本。在 Eclipse 中,当我导出并签署我的应用程序并将其安装在手机上时,我就可以使用我的应用内产品而不会看到此错误消息
Instead of running application directly from your IDe ( Eclipse )
Install Latest Apk file Which is uploaded to Android market
I face same problem later it was because I was running a debug, unsigned version of my app. In Eclipse, when I exported and signed my application and installed it on the phone, then I was able to use my in-app products without seeing this error messag
当您将签名的应用程序上传到市场(这是必要的),然后在设备上的 Debug .apk 文件上对其进行测试时,会出现此问题。因此,请避免这种情况,将签名的 .apk 添加到您的设备,然后运行该 .apk,您将看到该 .apk 和应用内产品没有问题
this issue occur wen you upload signed app to the market(which is necessary) and then test it on the device the Debug .apk file. so avoid this thing add the signed .apk to your device and then run the .apk you will see there is no issue with this .apk and in-app products
以下是我在使用应用内结算时观察到的情况。
当您上传您的发布 apk 时(无论 Alpha/Beta/Production),IAB 不会立即运行,您必须等待几个小时才能运行
上传新版本的apk(更高版本)也会一样。您必须等待几个小时才能最终发挥作用。不过,带有 IAB 的旧版本仍然可以工作。我通常做的是将我的发布 apk 作为 Beta 上传,等待几个小时,然后当它已经可以工作时,将 apk 推广到生产环境。
Here is what I have observed while using In-App-Billing.
When you upload your release apk (regardless of Alpha/Beta/Production), IAB will not work right away, you will have to wait for a few hours before it can work
Uploading a new version of the apk (higher version) will also be the same. You will have to wait for a few hours for it to eventually work. The older version with IAB will still work though. What I usually do is to upload my release apk as Beta, wait a few hours, then when it is already working, promote the apk to production.