Anwendung nicht konfiguriert für die Zahlung über Google Play

Arbeite ich auf einem android-Projekt und ich bin zu versuchen, In-App-Billing-V3.

Hochgeladen habe ich meine app auf Google Play, und fügen Sie ein IAP um die app. Ich kann erfolgreich abrufen einer Liste der IAP meine app hat zusammen mit seinen Preis, aber wenn ich tatsächlich versuchen, einen Kauf zu tätigen mein Gerät bekommt die folgende Fehlermeldung (es ist kein Fehler in

Dieser version der Anwendung nicht konfiguriert ist für die Rechnungsstellung durch
Bei Google Play. Überprüfen Sie das Hilfe-Center für weitere Informationen.

Unten ist der code ruft die in-App-purchase verfügbar ist, und ist der Kauf

ArrayList skuList = new ArrayList();
        skuList.add("mysqlmanager_pro");

        Bundle querySkus = new Bundle();
        querySkus.putStringArrayList("ITEM_ID_LIST", skuList);
        try
        {
            Bundle skuDetail = mService.getSkuDetails(3, getPackageName(), "inapp", querySkus);
            Log.d("Billing", "Response Received");

            int billingResponse = skuDetail.getInt("RESPONSE_CODE");
            if (billingResponse == 0)
            {
                //Get list of IAP's to purcase - NOT NEEDED
                ArrayList responseList = skuDetail.getStringArrayList("DETAILS_LIST");

                Log.d("Billing", "Response");

                Bundle buyIntentBundle = mService.getBuyIntent(3, getPackageName(), 
                        "mysqlmanager_pro", "inapp", "");

                PendingIntent pendingIntent = buyIntentBundle.getParcelable("BUY_INTENT");

                startIntentSenderForResult(pendingIntent.getIntentSender(), 
                        Defines.IntentRequestCodes.IAP_PURCHASE_REQUEST, new Intent(), 
                        Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0));
                /*for (String thisResponse : responseList)
                {
                    JSONObject object = new JSONObject(thisResponse);
                    String sku = object.getString("productid");
                    String price = object.getString("price");
                }*/
            }

        }
        catch (Exception ex)
        {
            Log.e("Billing", ex.toString());
        }

Meiner onCreate enthält die folgenden

mServiceConn = new ServiceConnection() {

            @Override
            public void onServiceDisconnected(ComponentName name) {
                mService = null;
            }

            @Override
            public void onServiceConnected(ComponentName name, IBinder service) {
                mService = IInAppBillingService.Stub.asInterface(service);
            }
        };

        bindService(new Intent("com.android.vending.billing.InAppBillingService.BIND"), 
                mServiceConn, Context.BIND_AUTO_CREATE);

Unten ist mein manifest-Datei

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.BoardiesITSolutions.MysqlManager"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="10"
        android:targetSdkVersion="18" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="com.android.vending.BILLING" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.BoardiesITSolutions.MysqlManager.Agreement"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity 
            android:name=".MainActivity"
            android:label="@string/app_name">
        </activity>
        <activity
            android:name=".NewDBConnection"
            android:label="@string/new_mysql_connection">
        </activity>
        <activity
            android:name=".ConnectionManager"
            android:label="@string/connection_manager">
            <meta-data 
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".MainActivity"/>
        </activity>
        <activity
            android:name=".EditDBConnections"
            android:label="@string/edit_database_connections">
        </activity>
        <activity
            android:name=".ServerStatus"
            android:label="Server Status">
            <meta-data 
                android:name="android.support.PARENT_ACTIVITY"
                android:value=".ConnectionManager"/>
        </activity>
        <activity 
            android:name=".ConnectedDBManagerHost"
            android:label="Connected to DB">
        </activity>
        <receiver android:name="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>

Vielen Dank für jede Hilfe, die Sie bieten können

  • Zum testen Ihrer app mit real-skus müssen Sie die gleiche APK hochgeladen, um Google Play, D. H., eine apk, die mit demselben Zertifikat signiert
InformationsquelleAutor Boardy | 2013-12-19
Schreibe einen Kommentar