Android 在清单文件中的应用程序下实现两(2)个名称空间

Android 在清单文件中的应用程序下实现两(2)个名称空间,android,firebase,firebase-realtime-database,firebase-storage,Android,Firebase,Firebase Realtime Database,Firebase Storage,我想在android清单文件中的应用程序下实现2个名称空间,以实现firebase脱机功能,但它拒绝在清单文件中使用2个名称空间,请参阅: 我尝试在MiLibrary类中扩展Multidex应用程序,请参见: 公共类MiLibrary扩展了应用程序{ @Override public void onCreate() { super.onCreate(); if (!FirebaseApp.getApps(this).isEmpty()) { FirebaseDa

我想在android清单文件中的应用程序下实现2个名称空间,以实现firebase脱机功能,但它拒绝在清单文件中使用2个名称空间,请参阅:

我尝试在MiLibrary类中扩展Multidex应用程序,请参见:

公共类MiLibrary扩展了应用程序{

@Override
public void onCreate() {
    super.onCreate();

    if (!FirebaseApp.getApps(this).isEmpty()) {
        FirebaseDatabase.getInstance().setPersistenceEnabled(true);
    }

    Picasso.Builder builder = new Picasso.Builder(this);
    builder.downloader(new OkHttpDownloader(this, Integer.MAX_VALUE));
    Picasso built = builder.build();
    built.setIndicatorsEnabled(false);
    built.setLoggingEnabled(true);
    Picasso.setSingletonInstance(built);

}
但它给了我一个错误,请参见stackTrace:


我也尝试过在stack overflow和Google上搜索,但有一些结果或答案与此相关,有人知道我如何实现这一点吗?

首先,在application tag中,您只能为以下内容定义单个属性:-

android:name=".YourApplication"
其次,为okHttpClient添加以下依赖项:-

compile 'com.squareup.okhttp3:okhttp:3.2.0'
您的应用程序的gradle文件应如下所示:-

defaultConfig {
    ...
    minSdkVersion 14 
    targetSdkVersion //Yours

    // Enabling multidex support.
    multiDexEnabled true
}

dependencies {
 compile 'com.android.support:multidex:1.0.0'
 compile 'com.squareup.okhttp3:okhttp:3.2.0'
}
使用MultiDexApplication类扩展应用程序:-

public class MiLibrary extends MultiDexApplication { ... }
在清单中添加应用程序的名称,如下所示:-

<application
android:name=".MiLibrary"
...>

…当添加2个名称时,您想要什么?不能这样做?因为您的MiLibray extend MultiDexApplication,所以只需要名称MiLibray当我从MiLibrary扩展MultiDexApplication时,我只有一个名称,在清单上是name=.MiLibrary,它给了我stackTrace显示的错误。请不要发布代码的图像。好的,我现在用真实的代码更新它。你能发布你的声明吗?它仍然没有运行,它抱怨我上面发布的MiLibrary类的这行代码:builder.downloadernew-OkhttpDownloader这个,Integer.MAX_VALUE;请共享你的应用程序的gradle文件。我刚刚清理了应用程序,现在运行良好,非常感谢你的朋友。@Karacken