Nexus 4 API 22.
我正在使用Ubuntu。 Android Studio 3.0 我在标准模拟器上运行应用程序并获得此错误
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
}
我在Genimotion上尝试过同样的事情。 Android 4和5.0 6.0。一切都是一样的。
但如果你在真正的手机上做同样的事情。顺便说一句,我有Android 6.0。一切正常。在其他手机上也检查过。
但事实证明,模拟器或Ubuntu存在一些错误。
如何纠正此错误?
提前谢谢
顺便说一下,我注意到了这样的事情。如果我在模拟器上禁用Internet,那么应用程序就会启动。但如果我打开互联网登录,我就会收到错误。
即应用程序尝试通过模拟器使用Internet,此时我收到错误。
谁面对这个?)))
答案 0 :(得分:3)
只需启用multidex:按照以下步骤操作
android {
defaultConfig {
// Enabling multidex support.
multiDexEnabled true
}
}
dependencies {
compile 'com.android.support:multidex:1.0.0'
}
像这样创建一个类
public class Multi_Dex extends Application {
@Override
protected void attachBaseContext(Context base) {
super.attachBaseContext(base);
MultiDex.install(this);
}
}
现在在你最明显的文件中添加
<application
android:name=".Multi_Dex"
android:allowBackup="true"
android:icon="@drawable/logo"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
答案 1 :(得分:2)
在您的gradle中添加以下代码:
defaultConfig {
multiDexEnabled true
}
dependencies {
compile 'com.android.support:multidex:1.0.1'
}
创建一个类,我们将其命名为App
,并从MultiDexApplication
扩展,如下所示:
import android.support.multidex.MultiDexApplication;
public class App extends MultiDexApplication {
//you can leave this empty or override methods if you like so the thing is that you need to extend from MultiDexApplication
}
在您的清单中添加App
作为您的应用名称
<application
android:name=".App" // <-- this is the important line!
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name">
添加完所有内容之后,进行干净的构建,现在应该可以正常工作:)。