需求描述:实现一个APP,安装后点击无界面,只需一个service在后台一直运行,收集数据
实现步骤:
(1)注释掉 setContentView(R.layout.activity_main)
(2)主activity设置android:theme="@android:style/Theme.NoDisplay" 样式,如:
(3)main activity可以不用继承:AppCompatActivity,否则点击APP启动的时候会报错,可以直接继承Activity
(4)在main activity中启动service
run成功后可以可以看到service一直循环输出日志,表示service已经在运行
但是点击APP,会发现报下面问题:
手动点击此APP,会报错:Caused by: java.lang.IllegalStateException: Activity {com.huaweisoft.appcommunicationclient/com.huaweisoft.appcommunicationclient.MainActivity} did not call finish() prior to onResume() completing
因为activity设置了NoDispaly模式,window无法显示,因此执行onResume方法后却无法显示window导致异常
解决办法:
参考地址:https://blog.youkuaiyun.com/xingnan4414/article/details/75649543
(1)方法一:在 onResume()执行调用finish方法,即不显示该activity,如:
最后附上简简单单的demo,优快云要多少积分就看造化了:https://download.youkuaiyun.com/download/ffacffac/12364715