Android隐藏Activity和图标

  今天发现4.0以后如果不写Activity只写BroadcastReceiver的话,这个广播接收器是不能运行的。经过查询,好像是HoneyComb之后添加了安全机制,规定必须运行一次Activity,BroadcastReceiver才能生效。

  如此一来,通过去掉intent-filter标签来隐藏图标的方法,以及通过不写Activity来隐藏主界面的方法就都失效了。

  经过摸索,得到一种还算满意的解决办法:

  对于图标,在intent-filter标签内加入这行代码(原因看这里):

1
<data android:host=”AuthActivity” android:scheme=”com.android.example” />

  对于入口Activity,我首先选择了在入口Activity的onCreate()方法中直接写一个「finish();」语句,这样运行的时候基本上是一闪而过,甚至肉眼看不见。

  再者,在application标签加入

1
android:theme="@android:style/Theme.DeviceDefault.Wallpaper.NoTitleBar"

  这样,没有标题栏,背景也跟桌面一样,这样给人的感觉就好像是桌面图标暂时消失了,所以即便是「一闪而过」的时间略长,也不会被察觉了。

  另外,经过测试,这个背景变透明的theme2.3是没有的,高版本会有。

 

  So much for this.

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。