Android5.0以后隐式启动Service异常的解决方案

Android5.0以后隐式启动Service,如下

Intent intent = Intent();
intent.setAction();
bindService(intent, , Context.);

会直接报异常,原因是5.0以后谷歌不建议再隐式启动activity,解决方案如下:


一.当然最先想到的是显式启动

    String packageName = ***packageName;

    String className = ***name;

    ComponentName component = new ComponentName(packageName, className);

    Intent Intent = new Intent();

    explicitIntent.setComponent(component);


二.设置action和packageName

    

Intent intent = Intent();
intent.setAction();
intent.setPackage();
bindService(intent, , Context.);

其中第三行setPackage是指定你的action希望那个pakcage接收,这也是谷歌推荐使用的解决方案

你可能感兴趣的:(Android5.0以后隐式启动Service异常的解决方案)