gpt4 book ai didi

java - Android Studio GCM 注册 ID 显示为空

转载 作者:行者123 更新时间:2023-11-30 01:57:27 25 4
gpt4 key购买 nike

已创建项目并从 https://developers.google.com/cloud-messaging/android/start 获取服务器 API key 和发件人 ID .并使用以下代码生成注册ID

GoogleCloudMessaging gcm;
String SENDER_ID = "mysenderid";
String Reg_id;
Context context;
EditText firstNumber;
@Override

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Reg_id=registerGCM();
}
public String registerGCM()
{
String regid=null;
try {

firstNumber = (EditText)findViewById(R.id.regisid_1);
context = getApplicationContext();
gcm = GoogleCloudMessaging.getInstance(context);
regid = gcm.register(SENDER_ID);
firstNumber.setText(regid);
}
catch(Exception ae)
{

}
return regid;
}

但是执行代码后,regid显示为null。

最佳答案

如果 gcm id 为 null 尝试启动后台任务并获取 id。检查下面的代码

private void registerInBackground() { 
new AsyncTask() {
@Override
protected String doInBackground(Object[] params) {
String msg = "";
try {
if (gcm == null) {
gcm = GoogleCloudMessaging.getInstance(context);
}
regid = gcm.register(SENDER_ID);
msg = "Device registered, registration ID=" + regid;


sendRegistrationIdToBackend();


// Persist the regID - no need to register again.
storeRegistrationId(context, regid);
} catch (IOException ex) {
msg = "Error :" + ex.getMessage();


}
return msg;
}

@Override
protected void onPostExecute(Object msg) {
// mDisplay.append(msg + "\n");

}
}.execute(null, null, null);
}

关于java - Android Studio GCM 注册 ID 显示为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32002416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com