traduccion - se requiere autenticación de devolución android de facturación en la aplicación cuando intente suscribirse al producto
in app purchase traduccion (7)
Debajo funciona para mí:
- Cargue la aplicación preliminar como alfa o beta con algún código de versión.
- Inicie sesión en el dispositivo con cuenta que tiene suscripción activa.
- Instale la aplicación firmada en este dispositivo con la misma versión que en la versión alfa / beta.
Esta es la primera vez que trato con In-App Billing en Android 1) Estoy usando API v3 2) Tengo una versión alfa de mi aplicación para poder probarla luego
3) He creado un producto de suscripción
4) Este es mi código para suscribirse en el producto
mSubscribeButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
try {
Bundle subscribeIntentBundle = mService.getBuyIntent(3, getPackageName(), "my_product_id", "subs", "bGoa+V7g/yqDXvKRqq+JTFn4uQZbPiQJo4pf9RzJ");
PendingIntent pendingIntent = subscribeIntentBundle.getParcelable("BUY_INTENT");
if (subscribeIntentBundle.getInt("RESPONSE_CODE") == 0) {
startIntentSenderForResult(pendingIntent.getIntentSender(), 4002, new Intent(), Integer.valueOf(0), Integer.valueOf(0), Integer.valueOf(0));
} else {
Toast.makeText(MainActivity.this, "Error Code: " + subscribeIntentBundle.getInt("RESPONSE_CODE"), Toast.LENGTH_SHORT).show();
}
} catch (RemoteException e) {
e.printStackTrace();
} catch (SendIntentException e) {
e.printStackTrace();
}
}
});
5) Recibo el siguiente error
He tratado de usar diferentes dispositivos y todos tienen el mismo error, también estoy conectado con mi cuenta de Google y puedo abrir Google Play Store y ver mis aplicaciones
También intenté borrar datos de Google Play Store del administrador de la aplicación
¿Alguien puede ayudar, por favor?
En mi caso, versionCode
, versionName
y applicationId
estaban sincronizados con la versión actual de la aplicación en la consola de desarrollador. Cambié estos en el archivo build.gradle. Eran diferentes porque reescribí la aplicación en el estudio Android de Eclipse. Después de esto, en la facturación de la aplicación funcionó.
La documentación en developer.android.com parece estar desactualizada.
Si desea probar su facturación en la aplicación sin publicarla, debe crear un grupo de google y agregar una lista alfabética de probadores. Consulte aquí: https://support.google.com/googleplay/android-developer/answer/3131213?hl=en
ACTUALIZAR
A mediados de 2015, esto ya no es necesario. Tienes varias opciones nuevas para probar en la consola de desarrolladores de Google Play.
La mayoría de las soluciones anteriores funcionan, pero para aquellos que todavía tienen este problema, intente esto:
- En Android Studio, firme su aplicación con la tecla de liberación (Esto creará un archivo firmado de la aplicación-lanzamiento.apk )
- Luego ASEGÚRESE de instalarlo en su dispositivo físico usando la ruta de instalación de adb / a / your / app-release.apk ( NO a través del Alpha / Beta )
La prueba de Android Developer para la cuenta de compra en la aplicación debe seguir estas claves.
Base64EncodedPublicKey
// Prueba base64EncodedPublicKey
public static final String base64EncodedPublicKey = "MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCg" +
"KCAQEAhNe2XQ70DceAwE6uyYJGK1dIBbZcPdlER/9EEzylr6RDU6tnGj0Tk7kceN03GKvRf/ucT+ERLL3O" +
"aHR22PXRXLZ17NZ81x6oS2vGmLyXBnjrU/I+asl8cNuLGySaoCdXxPAV+A9g6OG13dk+KY9i0O1roGpFH" +
"fsAFyKCgSqR0PMJZ1bS+wFFBYf3M4IxgBcxuuZKDmR+MztCgm5N4zc6w2CwFZn3mXeDoTg15mWDU3sZO" +
"WeRwFeynhV+FCYdDp8DpAkLk1b5IiXYFQ53wxCh/GxiKqBB6uQMmAixFjAcZV1QWfcBABae9vxiV5" +
"VAEJvOOnhPxnaT9HYadW0pQ/UbJwIDAQAB";
Y el artículo comprado clave así
ARTICULO COMPRADO
// Pruebas ITEM_PURCHASED
public static final String ITEM_PURCHASED = "android.test.purchased";
Y a partir de poner este código en crear () a la clase IabHelper de inicialización para la compra en la aplicación ,
IabHelper helper = new IabHelper(this, Constants.base64EncodedPublicKey);
helper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
public void onIabSetupFinished(IabResult result) {
if (!result.isSuccess()) {
Log.d("#InAppStartSetup#", "In-app Billing setup failed: " + result);
} else {
Log.d("#InAppStartSetup#", "In-app Billing setup successful.");
}
}
});
Y finalmente compró el tiempo en este código maneja aquí,
helper.launchPurchaseFlow(YOUR_ACTIVITY, Constants.ITEM_PURCHASED,
YOUR_REQUEST_CODE, mPurchaseFinishedListener, "");
Gracias chicos...
Tengo el mismo problema anteriormente. Vaya a la consola de desarrollador de google y asegúrese de que su aplicación se PUBLIQUE a cualquier versión (alfa, beta o prod). Entonces, la compra en la aplicación funcionará :)
Tengo el mismo problema con el mensaje terrible:
Se requiere autenticacion. Debes iniciar sesión en tu cuenta de Google.
Hubo dos problemas para mí:
- Traté de comprar un producto en mi código con el identificador
"com.argonnetech.wordswriting.noads"
pero el producto de la aplicación en la consola Google Play Developer (GPD) se llamaba simplemente "noads" - Después de cambiar el nombre del producto de la aplicación en la consola GPD, tuve que cambiarlo al modo "Activo"
El funcionó. El mensaje de error es engañoso, un error como "en el elemento de la aplicación no existe sería mejor".