我们都知道安卓在5.0后对于隐式启动服务做了修改,不能直接隐式启动一个服务 。
不然会报:java.lang.IllegalArgumentException: Service Intent must be explicit: Intent
那么有没有解决办法呢,当然有的啦!
大概简易说一下
1、要启动的server :MyService
2、在manifests 配置:定义我们的 MyService 的action
3、最后一步当然是启动了:
Intent intent = new Intent();
intent.setAction("com.msc.test_super.MyService");//上面定义的action
intent.setPackage("com.msc.test_super");//应用的包名
startService(intent);
发现什么不同了吗,对,要添加应用的包名,这一步是关键,ok,这就是基本的安卓5.0后隐式启动service的一个解决方案,希望和大家一起进步,程序员加油!