Android APK多个ICON入口

【转载自: http://yelinsen.iteye.com/blog/835900


一个APK对应可以有多个activity!每一个activity对应的可以会有多个跳转的路径intent-filter 
比如电话的拨号界面其实是在contacts里面的一个activity来绘制的! 

Java代码   收藏代码
  1. <!-- Tab container for all tabs-->  
  2.        <activity android:name=".dialer.DialerPhoneActivity"  
  3.            android:label="@string/launcherDialer"  
  4.            android:theme="@style/DialtactsTheme"  
  5.            android:launchMode="singleTask"  
  6.            android:clearTaskOnLaunch="true"  
  7.            android:icon="@drawable/ic_launcher_phone"  
  8.            android:screenOrientation="nosensor"  
  9.        >  
  10.            <intent-filter>  
  11.                <action android:name="android.intent.action.DIAL" />  
  12.                <category android:name="android.intent.category.DEFAULT" />  
  13.                <category android:name="android.intent.category.BROWSABLE" />  
  14.                <data android:mimeType="vnd.android.cursor.item/phone" />  
  15.                <data android:mimeType="vnd.android.cursor.item/person" />  
  16.            </intent-filter>  
  17.            <intent-filter>  
  18.                <action android:name="android.intent.action.DIAL" />  
  19.                <category android:name="android.intent.category.DEFAULT" />  
  20.                <category android:name="android.intent.category.BROWSABLE" />  
  21.                <data android:scheme="voicemail" />  
  22.            </intent-filter>  
  23.            <intent-filter>  
  24.                <action android:name="android.intent.action.DIAL" />  
  25.                <category android:name="android.intent.category.DEFAULT" />  
  26.            </intent-filter>  
  27.            <intent-filter>  
  28.                <action android:name="android.intent.action.MAIN" />  
  29.                <category android:name="android.intent.category.DEFAULT" />  
  30.                <category android:name="android.intent.category.LAUNCHER" />  
  31.                <category android:name="android.intent.category.BROWSABLE" />  
  32.            </intent-filter>  
  33.            <intent-filter>  
  34.                <action android:name="android.intent.action.VIEW" />  
  35.                <action android:name="android.intent.action.DIAL" />  
  36.                <category android:name="android.intent.category.DEFAULT" />  
  37.                <category android:name="android.intent.category.BROWSABLE" />  
  38.                <data android:scheme="tel" />  
  39.            </intent-filter>  
  40.            <intent-filter>  
  41.                <action android:name="android.intent.action.VIEW" />  
  42.                <category android:name="android.intent.category.DEFAULT" />  
  43.                <category android:name="android.intent.category.BROWSABLE" />  
  44.                <data android:mimeType="vnd.android.cursor.dir/calls" />  
  45.            </intent-filter>  
  46.            <intent-filter>  
  47.                <action android:name="android.intent.action.CALL_BUTTON" />  
  48.                <category android:name="android.intent.category.DEFAULT" />  
  49.                <category android:name="android.intent.category.BROWSABLE" />  
  50.            </intent-filter>  
  51.        </activity>  

那么这样主界面上的Phone图标其实不是对应的Phone.apk的而是Contacts.apk 
也就是Contacts.apk对应有多哥ICON入口! 
略微的测试一下发现只要在<activity></activity>小小的配置一下就行了!写了一个小例子一个APK对应多个ICON的主要是配置文件如下 
Java代码   收藏代码
  1. <application android:icon="@drawable/icontest1" android:label="@string/app_name1">  
  2.         <activity android:name="Test1" android:label="@string/app_name1">  
  3.             <intent-filter>  
  4.                 <action android:name="android.intent.action.MAIN" />  
  5.                 <category android:name="android.intent.category.LAUNCHER" />  
  6.             </intent-filter>  
  7.         </activity>  
  8.   
  9.         <activity android:name=".Test2"  
  10.             android:icon="@drawable/icontest2"  
  11.             android:label="@string/app_name2"  
  12.             android:screenOrientation="portrait"  
  13.             android:launchMode ="singleInstance">  
  14.             <intent-filter>  
  15.                 <action android:name="android.intent.action.MAIN" />  
  16.                 <category android:name="android.intent.category.DEFAULT" />  
  17.                 <category android:name="android.intent.category.LAUNCHER" />  
  18.                 <category android:name="android.intent.category.BROWSABLE" />  
  19.             </intent-filter>  
  20.         </activity>  











  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值