android - para - sat movil
IabResult: servicio de facturaciĆ³n no disponible en el dispositivo.(Respuesta: 3: FacturaciĆ³n no disponible) (14)
Bueno, no podemos ayudarlo sin tener mucha información. En lugar de eso, intentaré hacer una lista de verificación en caso de que haya olvidado algo:
1) ¿Está probando en un emulador? Los servicios de facturación deben probarse en dispositivos, PERO si realmente tiene que probar en el emulador, asegúrese de que el emulador tenga Google Play instalado y configurado. ¡Esto es muy importante!
2) ¿Pusiste el permiso correcto en el manifiesto? (com.android.vending.BILLING)
3) Si aún está probando la aplicación, ¿obtuvo una licencia de la aplicación de prueba del playstore, importó el lvl en su SDK, configuró su biblioteca de verificación de licencias? (Usted puede seguir a lo largo de aquí: la configuración
4) En su actividad enActivityResult, ¿manejó correctamente el resultado de la actividad? Como se ve en el ejemplo de google, debe hacerlo de esta manera:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
Log.i(TAG, "onActivityResult(" + requestCode + "," + resultCode + "," + data);
// Pass on the activity result to the helper for handling
if (!inappBillingHelper.handleActivityResult(requestCode, resultCode, data)) {
super.onActivityResult(requestCode, resultCode, data);
}
else {
Log.i(TAG, "onActivityResult handled by IABUtil.");
}
}
También tener más información podría ser útil, como si está probando en el emulador o dispositivo, nombre del dispositivo, versión de Android, etc.
Estoy tratando de usar la facturación en la aplicación:
mIabHelper = new IabHelper(this, BILLING_KEY);
mIabHelper.startSetup(new IabHelper.OnIabSetupFinishedListener() {
@Override
public void onIabSetupFinished(IabResult result) {
if (!result.isSuccess()) {
Log.d(TAG, "Problem setting up In-app Billing: " + result);
}
}
});
Y obteniendo el error:
Problem setting up In-app Billing: IabResult: Billing service unavailable on device. (response: 3:Billing Unavailable)
¿Por qué? Intenté borrar el caché de Play Store, no funcionó para mí.
En mi caso, he establecido un valor diferente para serviceIntent.setPackage ("com.android.vending"); de IabHelper. Asegúrate de dejarlo con este valor.
Encontré un problema para solucionar, intente root con su LuckyPatcher, abra la configuración Alterna -> Deshabilitar facturación.
Este error indica que se está conectando al servicio de facturación en la aplicación en su dispositivo, pero que el servicio no es compatible con la versión 3 de IAB. Es posible que la versión de Google Play de su dispositivo solo sea compatible con la versión 2 de IAB. ¿Qué versión de Google Play se está ejecutando en su dispositivo?
¿Es su versión de Google Play funcional de otra manera (por ejemplo, puede abrir la tienda Google Play)? A veces, si la fecha en su dispositivo está desactivada o si existe algún otro problema, Google Play en sí puede ir al sur.
Finalmente, ¿qué hay en tu salida logcat? Sería más fácil proporcionar asistencia si proporcionara más detalles.
Esto se debe a que la cuenta que está registrada actualmente en el dispositivo no está registrada en la Consola de desarrollador de Google. Para resolver este problema, 1. Vaya a su Google Developer Consol 2. En la pestaña de detalles de la cuenta, ingrese la dirección de correo electrónico (que está en el dispositivo) en "Cuentas de Gmail con acceso de prueba" y presione el botón Guardar en la parte superior.
Eso es.
Han ideado la solución.
Pruebe los siguientes 3 pasos:
- Borre la memoria caché de la aplicación GooglePlay y la aplicación de servicios Google Play.
- Eliminar el archivo IInAppBillingService.aidl.
- Copie el archivo anterior nuevamente desde la carpeta sdk y péguelo en la carpeta de ayuda en mi aplicación.
Este problema usualmente ocurre cuando copiamos el archivo de ayuda de un proyecto a otro proyecto.
La documentación para la versión 2.0 de la facturación fue en realidad más útil que la 3.0 para esta, a pesar de que estoy usando la versión 3.0 de la facturación.
Así es como 2.0 lo describe el código de respuesta 3:
Indica que la facturación en la aplicación no está disponible porque la aplicación Google Play no reconoce la API_VERSION que especificó o porque el usuario no es elegible para la facturación en la aplicación (por ejemplo, el usuario reside en un país que prohíbe las compras desde la aplicación) .
Para mí, primero tuve que configurar una cuenta de prueba de Google en mi teléfono antes de realizar la prueba. Olvidé ese paso. Una vez que lo hice me lo arreglé ...
Busque los códigos de respuesta del servidor aquí:
http://developer.android.com/google/play/billing/v2/billing_reference.html
http://developer.android.com/google/play/billing/billing_reference.html
Limpiar me ayudó. Error extraño
Obtuve ese error cuando instalé la aplicación ANTES de registrar todo y configurar Google Play store. Una vez que configuré la cuenta de Google Play Store, el error desapareció.
Recibí este error al borrar el caché de Google Play. Debe volver a abrir la aplicación Google Play y aceptar los términos antes de que vuelva a funcionar para IAB.
Tenía el mismo problema.
Mi dispositivo fue arraigado y ROM con una versión anterior de Google Market que no se actualizó automáticamente. Puedes verificar tu versión de Market / Play en AppManager.
De hecho, decidí usar otro dispositivo, pero supongo que de otro modo tendría que encontrar una manera de actualizar la versión Market / Play.
Tuve el mismo error y luego noté que mi teléfono estaba en modo avión. Una vez que se restauró la conectividad, estaba listo para irme.
Tuve exactamente este error cuando eliminé todas las cuentas de Google del teléfono (por lo tanto, elimine las correcciones porque después de borrar probablemente configures una cuenta después de reiniciar el teléfono).
Después de agregar una cuenta no vi este error.
Problema relacionado ¿Cuáles son las posibilidades de obtener este código de error 3 en la compra de InApp? .
IabHelper.java
Intent serviceIntent = new Intent("com.android.vending.billing.InAppBillingService.BIND");
serviceIntent.setPackage("com.android.vending");
Es un error si no es posible especificar correctamente la acción y packageName a IInAppBillingService.aidl
.