wie pro Titel, meine app stürzt ab, sobald ich die purchase()
MethodeSo verwenden Sie reagieren-native-Abrechnung
auf einem sauberen reagieren-native Projekt getestet verwenden: i buchstäblich nur react-native init testProj
ausgegeben, npm install
, npm install --save react-native-billing
, react-native link react-native-billing
. Dann ging ich new InAppBillingBridgePackage(APP_KEY)
in meinem MainApplication.java
Dies ist der einzige Code einstellen i
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 in index.android.js bearbeitet
{
"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"
}
}
Sobald die App diese componentDidMount
erreicht, wird ein Kaufdialog für einen Spl geladen Es stürzt dann sowohl meine App als auch den Play Store im Hintergrund ab. das Lauf adb logcat *:E
während der oben zeigt:
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
Lange Rede kurzer Sinn: ich bin etwas fehlt offensichtlich?