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接收,这也是谷歌推荐使用的解决方案