【发布时间】:2019-05-10 13:50:50
【问题描述】:
我将使用firebase-messaging 库并尝试在应用启动时使用以下方法获取令牌。
应用程序在启动时崩溃
java.lang.NullPointerException: Attempt to invoke virtual method 'com.google.android.gms.tasks.Task com.google.firebase.iid.FirebaseInstanceId.getInstanceId()' on a null object reference
AndroidManifest
<service
android:name=".MyFirebaseMessageService">
<intent-filter>
<action android:name="com.google.firebase.MESSAGING_EVENT"/>
</intent-filter>
</service>
构建.gradle:
implementation 'com.google.android.gms:play-services-analytics:16.0.5'
implementation 'com.google.firebase:firebase-messaging:17.3.4'
另外,我曾尝试在 SharedPreferences 中缓存令牌,但似乎从未调用过 onNewToken()。
@Override
public void onNewToken(String token) {
super.onNewToken(token);
SharedPreferences preference = PreferenceManager.getDefaultSharedPreferences(this);
SharedPreferences.Editor editor = preference.edit();
editor.putString("TOKEN",token);
editor.apply();
}
可能是什么问题?
【问题讨论】:
标签: android firebase firebase-cloud-messaging