一个APP两个程序主入口,两个图标,互不干扰

      在做项目的过程中碰到了一个需求,就是只需要两个Activity,但是两个Activity又互相不需要跳转,通过后台服务发送的广播来启动,这个时候就需要在清单文件中做文章了!

<application
        android:allowBackup="true"
        android:icon="@drawable/three"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" 
        >
        <activity
            android:name="com.jax.activity.Audio_Activity"
            android:label="@string/app_name" 
            android:launchMode="singleInstance">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.jax.activity.CD_Activity"
            android:icon="@drawable/tubiao_10_17"
            android:label="@string/app_cd"
            android:targetActivity=".CD_Activity" 
            android:launchMode="singleInstance">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
         <service android:name="com.jax.activity.LTLService" >
        </service>
    </application>

       由代码可以看到是在Application根节点下设置的,然后就是activity的根节点的设置了,我们既然需要两个图标那么肯定是需要各自都要有自己的主启动的Activity的,有点值得注意的是我们第一个设置的必须是程序默认打开的图标;然后就是下面的activity,眨眼一看居然没什么不同,同样在Launcher中创建图标,同样有自己的主MAIN,同样也有自己的App_Name,但是却多了一个android:targetActivity的属性,这个属性又是什么意思呢?有道一下发现target的目标的意思!那就很有意思了,我们知道一般情况下一个App只会有一个图标,当我们默然时也就是只有一个图标时这个属性是可以不写的,但是当我们又创建一个图标并赋予了其主Activity时,我们就需要给其一个目标Activity简称别名的目标!这个App附属的一个启动活动!
       由此也可以看出,当我们需要多个创建又互不干扰的Activity的时候我们不需要创建多个项目,仅仅是创建多个图标就可以,当然也要视需求而定!,还有的就是因为我需要接受广播然后更新UI这里就用了singleInstance单例启动模式,不然会出现,每更新一条数据就会出现界面弹一下的情况,这里也算是复习了洗Activity的启动模式了!



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值