我正在学习如何通过GCM
发送和接收推送通知,我跟着this tutorial
并在下面发布了一个名为GCMRegistrationIntentService
的课程。关于以下行:
InstanceID instanceID = InstanceID.getInstance(getApplicationContext());
//Getting the token from the instance id
token = instanceID.getToken(getString(R.string.gcm_defaultSenderId), GoogleCloudMessaging.INSTANCE_ID_SCOPE, null);
什么是R.string.gcm_defaultSenderId)
?我试图在strings.xml
找到它,但这样的条目不可用
可以澄清并解释一下吗?
答案 0 :(得分:0)
您可以使用FirebaseInstanceIdService获取令牌..如bellow
public class FirebaseIDService extends FirebaseInstanceIdService {
@Override
public void onTokenRefresh() {
String token = FirebaseInstanceId.getInstance().getToken();
}
}
不要忘记将下面的代码添加到andoridmainfest.xml
<service android:name=".FirebaseIDService" android:exported="true">
<intent-filter>
<action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
</intent-filter>
</service>
答案 1 :(得分:0)
该字符串包含您的project_number
,并由Gradle根据您的google-services.json
文件自动生成:
JSON处理的主要结果是生成两个XML文件 您可以在Java代码中将其引用为Android资源。下面 是每个文件的示例:
应用/建造/生成/ RES /谷歌的服务/ {build_type} /values/values.xml 强>
来源:https://developers.google.com/android/guides/google-services-plugin