我想将其他值传递给GCM onRegistered
方法,因为我想检查用户是否未注册,然后我想调用GCMRegistrar.register(RegistrationActivity.this, SENDER_ID);
并将现有用户ID传递给onRegistered
方法。所以我的问题是如何传递一个额外的值,以便我可以在onRegistered
中获得该值。
package bd.org.basis.projectmanagement;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import com.google.android.gcm.GCMBaseIntentService;
import static bd.org.basis.projectmanagement.RegistrationActivity.SENDER_ID;;
public class GCMIntentService extends GCMBaseIntentService {
public GCMIntentService() {
super(SENDER_ID);
}
@Override
protected void onError(Context context, String error) {
// TODO Auto-generated method stub
}
@Override
protected void onMessage(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.e("onMessage", "See later");
String title=intent.getStringExtra("title");
String type=intent.getStringExtra("type");
String msg=intent.getStringExtra("msg");
String url=intent.getStringExtra("url");
Log.e("onMessage", title+"--"+type+"--"+msg+"-- "+url);
}
@Override
protected void onRegistered(Context context, String token) {
// TODO Auto-generated method stub
Log.e("onRegistered", token);
}
@Override
protected void onUnregistered(Context context, String token) {
// TODO Auto-generated method stub
}
}
答案 0 :(得分:0)
您无法向onRegistered添加参数,因为您无法更改要覆盖的方法的签名。
你为什么要这样做?你想在应用程序注册后调用onRegistered吗?调用GCMRegistrar.register会执行此操作,如果应用程序已注册,则现有注册ID仍将传递给onRegistered,因此您不需要新参数。