पर एक गलत इंटरफ़ेस पर बाइंडर आमंत्रण I एक स्थान जागरूक एप्लिकेशन विकसित कर रहा हूं। मैंने अपने एप्लिकेशन में Google Play स्थान सेवाएं और Google मानचित्र एकीकृत किए हैं। मेरा एप्लिकेशन डीबग मोड में किसी समस्या के बिना चलता है।सुरक्षा अपवाद: हस्ताक्षरित एपीके
Process: com.example.akif, PID: 4233
java.lang.RuntimeException: Unable to resume activity {com.example.akif/com.example.akif.activities.MainActivity}: java.lang.SecurityException: Binder invocation to an incorrect interface
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3400)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3440)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2713)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:755)
Caused by: java.lang.SecurityException: Binder invocation to an incorrect interface
at android.os.Parcel.nativeEnforceInterface(Native Method)
at android.os.Parcel.enforceInterface(Parcel.java:482)
at vz.onTransact(:com.google.android.gms.DynamiteModulesB:81)
at android.os.Binder.transact(Binder.java:499)
at com.google.android.gms.maps.a.bt.c(Unknown)
at com.google.android.gms.maps.i.b(Unknown)
at com.google.android.gms.b.d.b(Unknown)
at com.google.android.gms.b.j.a(Unknown)
at com.google.android.gms.maps.h.b(Unknown)
at com.google.android.gms.maps.h.a(Unknown)
at com.google.android.gms.b.a.c(Unknown)
at com.google.android.gms.b.a.e(Unknown)
at com.google.android.gms.maps.g.f(Unknown)
at android.support.v4.app.k.ay(Unknown)
at android.support.v4.app.x.l(Unknown)
at android.support.v4.app.ax.h(Unknown)
at android.support.v4.app.ax.i(Unknown)
at android.support.v4.app.ax.run(Unknown)
at android.support.v4.app.x.ae(Unknown)
at android.support.v4.app.i.aa(Unknown)
at android.support.v4.app.a.onPostResume(Unknown)
at android.support.v7.app.a.onPostResume(Unknown)
at android.app.Activity.performResume(Activity.java:6792)
at android.app.ActivityThread.performResumeActivity(ActivityThread.java:3377)
at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:3440)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2713)
at android.app.ActivityThread.-wrap12(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1460)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6077)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:865)
मैं हर जीवन चक्र विधि यह मेरा टुकड़ा के onResume विधि मैं कहाँ के लिए जाँच में क्या होता है कि कम से निम्नलिखित लॉग द्वारा देखा: जब मैं रिलीज़ मोड में हस्ताक्षरित APK पैदा करते हैं और एप्लिकेशन को चलाने के लिए, यह निम्न अपवादों के साथ स्टार्टअप पर दुर्घटनाओं निम्नलिखित के रूप में Google Play सेवाओं की उपलब्धता:
apply plugin: 'com.android.application'
android {
compileSdkVersion 24
buildToolsVersion "24.0.1"
defaultConfig {
applicationId "com.example.akif"
minSdkVersion 15
targetSdkVersion 24
versionCode 1
versionName "0.1"
jackOptions {
enabled true
}
}
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
buildTypes {
debug {
applicationIdSuffix '.test'
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:24.2.0'
compile 'com.android.support:cardview-v7:24.2.0'
compile 'com.android.support:design:24.2.0'
compile 'com.android.support:preference-v7:24.2.0'
compile 'com.google.android.gms:play-services-location:9.4.0'
compile 'com.google.android.gms:play-services-maps:9.4.0'
compile 'com.github.mehmetakiftutuncu:toolbelt:1.1.0'
compile 'com.squareup.okhttp3:okhttp:3.4.1'
compile 'joda-time:joda-time:2.9.4'
}
मेरे पास दो गूगल मैप्स एपीआई k:
@Override public void onResume() {
Log.debug(getClass(), "onResume()");
GoogleApiAvailability googleApiAvailability = GoogleApiAvailability.getInstance();
int googlePlayServicesAvailabilityResult = googleApiAvailability.isGooglePlayServicesAvailable(getContext());
if (googlePlayServicesAvailabilityResult != ConnectionResult.SUCCESS) {
if (!googleApiAvailability.isUserResolvableError(googlePlayServicesAvailabilityResult)) {
Toast.makeText(getContext(), "Your device doesn't support Google Play location services. This application cannot run without it!", Toast.LENGTH_LONG).show();
getActivity().finish();
return;
}
Dialog errorDialog = googleApiAvailability.getErrorDialog(getActivity(), googlePlayServicesAvailabilityResult, GOOGLE_PLAY_SERVICES_REQUEST_CODE);
if (errorDialog != null) {
errorDialog.setCancelable(false);
errorDialog.setCanceledOnTouchOutside(false);
errorDialog.setOnDismissListener((DialogInterface dialogInterface) -> {
Toast.makeText(getContext(), "You need Google Play location services to run this application!", Toast.LENGTH_LONG).show();
getActivity().finish();
});
errorDialog.show();
}
} else if (googleApiClient.isConnected() && !isUpdatingLocation) {
startLocationUpdates();
}
super.onResume();
}
मेरे Gradle फ़ाइल ऐसा दिखाई देता है डीबग और रिलीज मोड के लिए क्रमशः मेरे पैकेज नाम com.example.akif.test
और com.example.akif
के अनुसार स्थापित किया गया है। इसलिए, मुझे नहीं लगता कि यह पैकेज नाम से संबंधित है लेकिन फिर से, यह बहुत अच्छा हो सकता है क्योंकि मुझे त्रुटि से कुछ भी समझ में नहीं आया।
कोई विचार क्या हो रहा है?
यह [थ्रेड] (http://stackoverflow.com/questions/24591282/securityexception-binder-invocation-to-an-incorrect-interface-using-in-app-bill) जैसा दिखता है। – noogui
@noogui लेकिन यह नहीं है। मैं बिलिंग सेवाओं का उपयोग नहीं कर रहा हूं। मेरे पास कोई एआईडीएल फाइल नहीं है। –