Android让一个apk作为Launcher启动

android启动apk时是依据apk中Activity的intent-filter属性,在新建一个项目工程的时候,Eclipse就为这个工程的主Activity默认配置了intent-filter属性,如下:
<activity android:name="MainActivity">
     <intent-filter>
          <action android:name="android.intent.action.MAIN" />
          <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
所以,每次运行工程的时候,模拟器就直接启动了这个apk。我尝试了一下,如果将
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
这两个属性任意去掉一个或是两个都去掉的话,运行工程之后,模拟器是不会启动apk的,但是在应用程序管理里面,是能看到这个apk是被安装了的,但是在launcher上
却看不到该apk的图标。


现在为这个Activity添加<category android:name="android.intent.category.DEFAULT" />属性
<activity android:name="MainActivity">
     <intent-filter>
          <action android:name="android.intent.action.MAIN" />
          <category android:name="android.intent.category.LAUNCHER" />
          <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>
运行apk之后,在launcher上和应用程序管理里面能看到这个apk,当长按home键之后,可切换到这个apk来启动(开机之后,也会弹出一个对话框让我们选择用哪一个apk作为launcher)
由此,可以得出,要想apk作为launcher启动的话,需要为其主Activity添加属性<category android:name="android.intent.category.DEFAULT" />

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值