之后implementation 'com.google.firebase:firebase-core:16.0.1'和classpath 'com.google.gms:google-services:4.0.1'
启动应用程序时,我开始收到以下错误:
致命异常:主要进程:com.fentury.android,PID:10771 java.lang.RuntimeException:无法获取提供者com.crashlytics.android.CrashlyticsInitProvider:io.fabric.sdk.android.services.concurrency.UnmetDependencyException:此应用程序依赖在Crashlytics上.请通过https://fabric.io/sign_up注册访问,安装Android构建工具并要求团队成员邀请您加入此应用的组织.在Android.app.A活动中的android.app.ActivityThread.installContentProviders(ActivityThread.java:5445)上的android.app.ActivityThread.installProvider(ActivityThread.java:5856),android.app.ActivityThread.handleBindApplication(ActivityThread.java:5384). android.app.Loper.loop上的android.app.A.运行时,Android.app.ActivityThread $ .handleMessage(ActivityThread.java:1545)的ActivityThread.-wrap2(ActivityThread.java)位于android.os.Handler.dispatchMessage(Handler.java:102) Looper.java:154)在android.app.ActivityThread.main(ActivityThread.java:6119)的java.lang.reflect.Method.invoke(Native Method)at com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run( ZygoteInit.java:886)在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:776)引起:io.fabric.sdk.android.services.concurrency.UnmetDependencyException:这个应用程序依赖于Crashlytics.请通过https://fabric.io/sign_up注册访问,安装Android构建工具并要求团队成员邀请您加入此应用的组织.at com.crashlytics.android.core.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:235)at com.crashlytics.android.core.CrashlyticsCore.onPreExecute(CrashlyticsCore.java:209)at io.fabric.sdk.android.InitializationTask.onPreExecute (InitializationTask.java:44)at io.fabric.sdk.android.services.concurrency.AsyncTask.executeOnExecutor(AsyncTask.java:611)at io.fabric.sdk.android.services.concurrency.PriorityAsyncTask.executeOnExecutor(PriorityAsyncTask.java) :43)io.fabric.sdk.android.Kit.initialize(Kit.java:69)at io.fabric.sdk.android.Fabric.initializeKits(Fabric.java:440)at io.fabric.sdk.android. Fabric.init(Fabric.java:384)at io.fabric.sdk.android.Fabric.setFabric(Fabric.java:342)at io.fabric.sdk.android.Fabric.with(Fabric.java:313)at com .crashlytics.android.CrashlyticsInitProvider.onCreate(CrashlyticsInitProvider.java:27)位于android.app的android.content.ContentProvider.attachInfo(ContentProvider.java:1751)android.content.ContentProvider.attachInfo(ContentProvider.java:1726).ActivityThread.installProvider(ActivityThread.java:5853)......还有10个
也AndroidManifest.xml在下一行添加:
<meta-data android:name="firebase_crash_collection_enabled" android:value="false" />
Run Code Online (Sandbox Code Playgroud) 我正在使用 Android Room 来存储我的应用程序数据。设备重新启动后,我需要检索它们并执行一些功能。我正在使用 LiveData 从数据库获取数据。但我无法将广播接收器绑定为所有者。我应该如何解决这个问题?
public class BootReciever extends BroadcastReceiver {
@Override
public void onReceive(final Context context, Intent intent) {
if (context != null) {
ProductUIRepository mRepository = new ProductUIRepository(context.getApplicationContext());
mRepository.findAllProducts().observe(this, new android.arch.lifecycle.Observer<List<ProductUI>>() {
@Override
public void onChanged(@Nullable List<ProductUI> productUIS) {
NotificationMan.setAlarmForProducts(context, productUIS);
}
});
}
}
}
Run Code Online (Sandbox Code Playgroud)
使用“this”会使应用程序无法编译。