当前位置: 首页 > 知识库问答 >
问题:

迁移到Android Studio后在运行时崩溃(NoSuchMultiodError)

令狐泓
2023-03-14

我迁移到Android studio,在我尝试运行该应用程序之前,一切似乎都正常。它在发射器活动中卡住,然后崩溃,打印:

E/AndroidRuntime: FATAL EXCEPTION: main
java.lang.NoSuchMethodError: No direct method <init>(ILjava/lang/String;)V in class Lcom/google/android/gms/common/api/Status; or its super classes (declaration of 'com.google.android.gms.common.api.Status' appears in /data/data/com.MY PACKAGE/files/instant-run/dex/slice-google-play-........b-classes.dex)
at com.google.android.gms.measurement.zza.<init>(Unknown Source)
at com.google.android.gms.measurement.zza.zzaR(Unknown Source)
at com.google.android.gms.measurement.internal.zzn.zziJ(Unknown Source)
at com.google.android.gms.measurement.internal.zzz.zza(Unknown Source)
at com.google.android.gms.measurement.internal.zzw.<init>(Unknown Source)
at com.google.android.gms.measurement.internal.zzaa.zzDj(Unknown Source)
at com.google.android.gms.measurement.internal.zzw.zzaT(Unknown Source)
at com.google.android.gms.measurement.AppMeasurementContentProvider.onCreate(Unknown Source)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1759)
at android.content.ContentProvider.attachInfo(ContentProvider.java:1728)
at android.app.ActivityThread.installProvider(ActivityThread.java:5534)
at android.app.ActivityThread.installContentProviders(ActivityThread.java:5105)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5045)
at android.app.ActivityThread.access$1600(ActivityThread.java:150)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1459)
at android.os.Handler.dispatchMessage(Handler.java:102)
at android.os.Looper.loop(Looper.java:168)
at android.app.ActivityThread.main(ActivityThread.java:5845)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:797)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:687)

共有3个答案

濮阳浩穰
2023-03-14

对我来说,我遇到了类似的丢失方法的崩溃,因为我必须在构建中更新最近添加的库版本。gradle文件。

尹善
2023-03-14

将此行添加到您的清单文件

<application
    ...
    android:name="android.support.multidex.MultiDexApplication">
    ...
</application>

也把这个加到你的梯度上

defaultConfig {
    ...
    minSdkVersion 14
    targetSdkVersion 21
    ...

    // Enabling multidex support.
    multiDexEnabled true
}

第二种解决方案:

将其添加到启动程序活动的onCreate()方法中

public void onCreate(Bundle arguments) {
 Context context = this.getInstrumentation().getTargetContext().getApplicationContext();
  MultiDex.install(context );
  super.onCreate(arguments);
...
}

需要在扩展应用程序的类中添加此项:

@Override
protected void attachBaseContext(Context base) {
    super.attachBaseContext(base);
    MultiDex.install(this);
}

有关更多详细信息:链接1、链接2、链接3、链接4

希望它能起作用。。

宋原
2023-03-14

对我来说,问题在于不同版本的play服务依赖项不同,比如

dependencies {
    compile 'com.google.android.gms:play-services-gcm:8.4.0' /different version
    compile 'com.google.android.gms:play-services-maps:9.0.2'
    compile 'com.google.android.gms:play-services-location:9.0.2'
}

应改为

dependencies {
    compile 'com.google.android.gms:play-services-gcm:9.0.2'
    compile 'com.google.android.gms:play-services-maps:9.0.2'
    compile 'com.google.android.gms:play-services-location:9.0.2'
}

我希望它对你或遇到同样问题的人有效。

 类似资料:
  • Fabric SDK现在已被弃用,并将继续报告应用程序的崩溃,直到2020年11月15日。 我在哪里可以找到这些报告?我不能再登录到fabric dashboard了,它们也没有显示在firebase控制台中。

  • 最近,我们将应用程序从Fabric迁移到Firebase Crashlytics和Firebase Analytics。在android中,在遵循谷歌文档之后,一切都像一个魅力一样运行。问题是,在iOS中,我们没有得到关于Firebase Crashlytics的报告(在Firebase Analytics上工作得很好),但遵循了相同的文档之后。 路径: Dev Google Service In

  • 问题内容: 我在夹层中使用Django1.7。我创建了简单的配置文件(根据Mezzanine文档),存储在单独的应用程序“配置文件”中: 创建迁移会返回: 当我运行“迁移配置文件”时: 问题是,当我尝试打开与mezzanine.accounts相关的任何页面(例如更新帐户)时,它崩溃并显示: 我做错了什么? 问题答案: 在MySQL数据库中,从表中删除行。 删除迁移文件夹中的所有迁移文件。 重试并

  • 我已经使用Sourceforge存储库在我的Raspberry Pi上编译了OpenCV 2.4.6。我使用以下命令安装它: 我编译时没有错误。我正在使用人脸识别API从通过Raspberry Pi摄像头模块捕获的视频中识别人脸。我正在使用一个名为RaspiCam的C API从相机捕获帧,它与OpenCV兼容,允许您将捕获的帧保存为OpenCV Mat对象。API的文档位于http://www.u

  • 我遵循了迁移指南文档。 构建签名Apk成功。 今天早上,当我检查Firebase Crashlytics控制台时。 没有与新版APK相关的崩溃报告。(我找不到老版本的崩溃报告。) 但是当我在PlayStore控制台上查看它时,我可以找到一些崩溃报告。 但只有坠机报告没有被追踪...为什么......