我正在尝试使用以下方法在Android即时应用中初始化Firebase(11.2.0):
FirebaseApp.initializeApp(this);
但它会抛出以下异常,说明不支持jobscheduler:
E/FirebaseApp: Firebase API initialization failure.
java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at com.google.firebase.FirebaseApp.zza(Unknown Source)
at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
at com.google.firebase.FirebaseApp.initializeApp(Unknown Source)
at com.hello.world.myapp.provider.MyApplication.onCreate(MyApplication.java:93)
at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1024)
at android.app.ActivityThread.handleBindApplication(ActivityThread.java:5403)
at android.app.ActivityThread.-wrap2(ActivityThread.java)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1545)
Caused by: java.lang.SecurityException: Service: jobscheduler is not supported.
at android.os.Parcel.readException(Parcel.java:1684)
at android.os.Parcel.readException(Parcel.java:1637)
at android.app.job.IJobScheduler$Stub$Proxy.cancel(IJobScheduler.java:202)
at android.app.JobSchedulerImpl.cancel(JobSchedulerImpl.java:60)
at com.google.android.gms.internal.zzcfj.zzazu(Unknown Source)
at com.google.android.gms.internal.zzcfj.zzuh(Unknown Source)
at com.google.android.gms.internal.zzcdm.initialize(Unknown Source)
我按照Android开发人员文档here上提供的集成说明进行操作。
答案 0 :(得分:3)
这可能是Firebase错误。此Firebase Google Groups post中显示相同的堆栈跟踪。 Firebase团队成员Ian Barber于8月2日回复了帖子并说:
我们发现了Google Analytics for Firebase调用的问题 不幸的是,JobScheduler在Instantapps中不受支持。我们 在内部有一个修复,但不幸的是它必须公平地进行 很长的发布链,所以它会在它到达SDK之前几周 管理器。
我建议您联系Firebase support。
答案 1 :(得分:0)
参考Google issue tracker JobScheduler现在应该修复
建议的方法是使用框架的JobScheduler for API> = 21因为Instant Apps只支持低至21 ,并将Firebase JobDispatcher用于21以下的已安装应用。
示例 https://github.com/firebase/firebase-jobdispatcher-android
如果任何问题仍然存在,请在Google issue tracker报告,他们将重新审核。