极光推送获取不到RegisterId(注册ID)Android
16lz
2021-01-23
官方文档介绍了两种获取RegistrationID的方法:
https://docs.jiguang.cn/jpush/client/Android/android_api/#registrationid-api
//SDK 初次注册成功后,开发者通过在自定义的 Receiver 里监听 Action - cn.jpush.android.intent.REGISTRATION 来获取对应的 RegistrationID。注册成功后,也可以通过此函数获取
public static String getRegistrationID(Context context)
在下看来第一种是误导,应该在application中才能拿到!!!而不是自定义Receiver!在application中对其进行的初始化!!
registrationId = JPushInterface.getRegistrationID(this); Log.e("1099", "run:--------->registrationId: "+registrationId );
public class MyApplication extends Application { public static String registrationId; private List mList = new LinkedList(); public static MyApplication instance; private static Context context; @Override public void onCreate() { super.onCreate(); JPushInterface.setDebugMode(true); JPushInterface.init(this); registrationId = JPushInterface.getRegistrationID(this); Log.e("1099", "run:--------->registrationId: "+registrationId ); SharePLogin mSharePLogin=new SharePLogin(this); mSharePLogin.saveData("registrationId",registrationId); Toast.makeText(instance, "registrationId", Toast.LENGTH_SHORT).show(); instance = this; OkHttpClient okHttpClient = new OkHttpClient.Builder()// .addInterceptor(new LoggerInterceptor("TAG")) .connectTimeout(10000L, TimeUnit.MILLISECONDS) .readTimeout(10000L, TimeUnit.MILLISECONDS) //其他配置 .build(); OkHttpUtils.initClient(okHttpClient); MobclickAgent.setScenarioType(getApplicationContext(), MobclickAgent.EScenarioType.E_UM_NORMAL); } public MyApplication() { } public static String getRegistrationId() { return registrationId; } public static void setRegistrationId(String registrationId) { MyApplication.registrationId = registrationId; } public synchronized static MyApplication getInstance() { if (null == instance) { instance = new MyApplication(); } return instance; } public static Context getContext(){ return context; } // add Activity public void addActivity(Activity activity) { System.out.println("add"); mList.add(activity); } public void exitOther() { for (int i = 0; i < mList.size() - 1; i++) { mList.get(i).finish(); } } public void exit() { try { for (Activity activity : mList) { if (activity != null) activity.finish(); } } catch (Exception e) { e.printStackTrace(); } finally { System.exit(0); } } public void onLowMemory() { super.onLowMemory(); System.gc(); }}
更多相关文章
- android market开发者注册上传app应用教程
- Android开发:Activity初始化时屏蔽EditText的自动获取焦点的事件
- Android开发者实用代码片段 与大家分享
- Android 开发者该学点Linux 命令了
- 16 个Android 开发者必备工具资源
- Android中添加布局和初始化布局总结
- android appwidget service的初始化
- Android 开发者成神之路!
- 推荐给Android开发者的七本图灵书