赞
踩
Android Studio将某个Module作为Library被引用时,主APP安装后作为Library的Module在桌面上也有一个APP图标,点开后就是那个Library的主界面,大概是这样:
这是因为作为Library的Module中AndroidManifest.xml里配置了默认启动的Activity,像这样:
//Library项目中
<activity
android:name=".SettingsActivity"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
所以桌面程序(Launcher)就将它识别成一个可以启动的APP,打开后就是该Activity界面,其实它只是个桌面快捷方式而已,并非将Library作为一个独立的APP,这点可以在系统的“设置”->“应用管理”那里可以证实(如果是作为独立app那么列表会出现两个app);
那么同一个Module里是否可以配置多个Activity作为快捷方式呢?
当然是可以的,比如这样:
<activity android:name=".MainActivity" android:launchMode="singleTask"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".SecondActivity" android:label="SecondActivity" android:icon="@mipmap/ic_launcher_second" android:taskAffinity="com.example.myapplication1"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
不仅如此,还可以修改该快捷方式的名字(android:label)和图标(android:icon),默认是跟主Activity一致的,更多快捷方式相关设置可以自行查询相关资料
赞
踩
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。