一个APK对应可以有多个activity!每一个activity对应的可以会有多个跳转的路径intent-filter
比如电话的拨号界面其实是在contacts里面的一个activity来绘制的!
<!-- Tab container for all tabs-->
<activity android:name=".dialer.DialerPhoneActivity"
android:label="@string/launcherDialer"
android:theme="@style/DialtactsTheme"
android:launchMode="singleTask"
android:clearTaskOnLaunch="true"
android:icon="@drawable/ic_launcher_phone"
android:screenOrientation="nosensor"
>
<intent-filter>
<action android:name="android.intent.action.DIAL" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:mimeType="vnd.android.cursor.item/phone" />
<data android:mimeType="vnd.android.cursor.item/person" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.DIAL" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="voicemail" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.DIAL" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<action android:name="android.intent.action.DIAL" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="tel" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:mimeType="vnd.android.cursor.dir/calls" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.CALL_BUTTON" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
那么这样主界面上的Phone图标其实不是对应的Phone.apk的而是Contacts.apk
也就是Contacts.apk对应有多哥ICON入口!
略微的测试一下发现只要在<activity></activity>小小的配置一下就行了!写了一个小例子一个APK对应多个ICON的主要是配置文件如下
<application android:icon="@drawable/icontest1" android:label="@string/app_name1">
<activity android:name="Test1" android:label="@string/app_name1">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".Test2"
android:icon="@drawable/icontest2"
android:label="@string/app_name2"
android:screenOrientation="portrait"
android:launchMode ="singleInstance">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
<category android:name="android.intent.category.BROWSABLE" />
</intent-filter>
</activity>
分享到:
相关推荐
然而,标题“也谈Android下一个apk安装多个程序入口图标”提出了一个特殊的话题,即如何在一个APK中创建多个程序入口点,让同一个应用拥有不同的启动图标,提供用户不同的功能入口。这主要涉及AndroidManifest.xml...
本文将详细介绍如何实现“同一个APK多个icon进入同一个Activity的不同tab页”。 首先,我们需要理解Android中Activity的启动模式(launchMode)。Android提供了四种启动模式: 1. standard:默认模式,每次启动...
在Android开发中,有时我们需要为同一个应用程序设置多个入口点,以显示不同的图标,提供不同的功能或界面风格。本文将详细探讨在Android中实现一个应用拥有多个图标的三种常见方法。 **1. 多Activity + intent-...
然而,有时开发者可能希望为同一个应用创建多个入口点,以便提供不同的功能或者展示不同的界面,这就涉及到了如何让Android应用在桌面上显示多个图标。本教程将深入探讨这一主题。 首先,理解AndroidManifest.xml...
本文主要介绍三种常见的方法来实现基于Android平台的多Icon APK,即为同一个应用创建多个程序入口。 1. **使用Intent-filter** 这是最基础的方法,通过在`AndroidManifest.xml`文件中为每个需要作为入口点的...
5. **图层叠加**:如果你想要创建一个包含多个图层的引导界面,可以使用`FrameLayout`或`RelativeLayout`来实现。例如,你可以在logo上方添加一个半透明背景图层,或者在底部添加一个动态加载指示器。 ```xml ...
- 为了使多个`RadioButton`均匀分布,可以为它们设置相同的权重(`android:layout_weight="1"`). 6. **样式化RadioButton**: - 为了减少重复代码,可以将公共属性定义在一个样式中。 - 示例代码: ```xml ...
本文将深入探讨如何在Android中创建一个自定义的顶部导航栏,这个控件可以作为应用的主要交互入口,展示多个可选的页面或功能。 首先,让我们了解顶部导航栏的基本构成。通常,它包含以下几个部分: 1. **标题**:...
1. 方法重载(Overload)与方法重写(Override)的区别:重载是在同一类中定义多个同名方法,但参数列表不同;重写是子类对父类方法的重新实现,且方法签名相同。 2. String与StringBuffer的区别:String是不可变...
-- android:icon="@mipmap/ic_launcher" --> <!-- android:label="@string/app_name" --> <!-- android:theme="@style/AppTheme.NoActionBar" --> <!-- 去掉以下两行以隐藏图标 --> <!-- android:category=...
总之,Android 7.1的快捷方式功能为开发者提供了更多与用户交互的途径,通过`ShortCutsDemo`项目,你可以学习到如何利用这一特性来优化用户体验,实现更个性化的应用入口。在实践中,要注意根据应用的需求灵活运用...
在Android应用开发中,"关于(About)"页面通常是用户获取应用程序详细信息的入口,包括开发者信息、版本号、许可协议等。这个页面通常会利用`Menu`功能来设计一个可交互的菜单,提供更多的操作选项。在本教程中,...
【描述】中的"该网站源码实现了网站的编译多个平台app"表明这是一个基于Web的解决方案,它通过网站的形式提供服务,允许用户上传自己的应用代码,并将其转换为针对不同平台的可执行文件。这通常涉及到跨平台开发框架...
在Android应用开发中,Action Bar是一个非常重要的组件,它位于应用程序界面的顶部,提供了一种标准的方式来展示应用程序的标识、主要的操作以及一个可选的下拉菜单,通常用于导航。本篇文章将深入探讨如何在Android...
根据提供的文档内容,我们可以深入探讨Android开发中的多个关键知识点,这些知识点对于初学者以及有一定经验的开发者来说都非常重要。下面将逐一分析: ### 一、Android-Manifest.xml – activity详细说明 `...
在Android开发中,自定义菜单(Custom Menu)是...总之,自定义菜单是提升Android应用用户体验的重要手段,通过学习和研究这个源码示例,开发者可以掌握菜单定制的技巧,从而在自己的应用中创造出更具特色的功能入口。
综上所述,该学位论文详细探讨了如何在Android平台上设计和实现一个音乐播放器应用,涵盖了项目结构、Android组件使用、资源管理、服务实现以及UI设计等多个方面,具有较高的实践价值。通过阅读源代码,读者可以深入...
在Android开发中,菜单(Menu)是用户界面的重要组成部分,提供了用户与应用交互的额外功能入口。本讲将详细解析Android菜单的使用,包括选项菜单(OptionsMenu)、上下文菜单(ContextMenu)和子菜单(SubMenu)。 一、...