问题描述:
按标题,我的应用程序崩溃:我真的只是发出react-native init testProj
,npm install
,npm install --save react-native-billing
,react-native link react-native-billing
。 然后我继续设置new InAppBillingBridgePackage(APP_KEY)
我MainApplication.java如何,只要我使用<code>purchase()</code>方法</p> <p>测试在一个干净的反应本地项目中使用的反应本地计费
这是我在index.android.js
export default class testProj extends Component {
componentDidMount() {
const InAppBilling = require("react-native-billing")
console.log(InAppBilling)
InAppBilling.open()
.then(() => InAppBilling.purchase('android.test.purchased'))
.then((details) => {
console.log("You purchased: ", details)
return InAppBilling.close()
})
.catch((err) => {
console.log(err);
});
}
render() {...}
的package.json
{
"name": "testProj",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"test": "jest"
},
"dependencies": {
"react": "16.0.0-alpha.12",
"react-native": "0.46.3",
"react-native-billing": "^2.3.0"
},
"devDependencies": {
"babel-jest": "20.0.3",
"babel-preset-react-native": "2.1.0",
"jest": "20.0.4",
"react-test-renderer": "16.0.0-alpha.12"
},
"jest": {
"preset": "react-native"
}
}
编辑的唯一代码
一旦应用程序达到此componentDidMount
,购买对话框加载一个spl它第二次在后台崩溃我的应用程序和Play商店。在上面显示了运行adb logcat *:E
这一点:
E/AndroidRuntime(31592): FATAL EXCEPTION: AsyncTask #4
E/AndroidRuntime(31592): Process: com.android.vending, PID: 31592
E/AndroidRuntime(31592): java.lang.RuntimeException: An error occured while executing doInBackground()
E/AndroidRuntime(31592): at android.os.AsyncTask$3.done(AsyncTask.java:304)
E/AndroidRuntime(31592): at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355)
E/AndroidRuntime(31592): at java.util.concurrent.FutureTask.setException(FutureTask.java:222)
E/AndroidRuntime(31592): at java.util.concurrent.FutureTask.run(FutureTask.java:242)
E/AndroidRuntime(31592): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
E/AndroidRuntime(31592): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
E/AndroidRuntime(31592): at java.lang.Thread.run(Thread.java:818)
E/AndroidRuntime(31592): Caused by: java.lang.NullPointerException: Attempt to read from field 'long com.google.wireless.android.finsky.dfe.nano.an.b' on a null object reference
E/AndroidRuntime(31592): at com.google.android.finsky.billing.lightpurchase.s.a(SourceFile:5)
E/AndroidRuntime(31592): at com.google.android.finsky.billing.lightpurchase.h.doInBackground(SourceFile:27)
E/AndroidRuntime(31592): at android.os.AsyncTask$2.call(AsyncTask.java:292)
E/AndroidRuntime(31592): at java.util.concurrent.FutureTask.run(FutureTask.java:237)
E/AndroidRuntime(31592): ... 3 more
长话短说:我失去了一些东西明显?
答
这发生在使用静态响应测试应用内结算时。这看起来像是新版Google Play商店的问题。我们测试了Play Store的3个版本。 7.4按预期工作,7.8和8.0崩溃。
目前,我们也在寻找解决方案。