美文网首页
2018-03-11 开启多界面(激活activity)

2018-03-11 开启多界面(激活activity)

作者: 紫杉叶子 | 来源:发表于2018-03-13 09:02 被阅读0次
笔记如下
  • 显示激活
    在AndroidManifest.xml文件中先注册activity
<activity android:name="com.chen.test31.SecondMainActivity" />
ntent intent = new Intent();
//明确指定激活那个应用
intent.setClass(this, SecondMainActivity.class);
startActivity(intent);
  • 隐式激活
    在AndroidManifest.xml文件中注册
activity android:name="com.chen.test31.SecondMainActivity" >
            <!-- 通过intent隐式激活-->
            <intent-filter>
                <action android:name="com.chen.xxx"/>
                <!-- category 都要去声明  android.intent.category.DEFAULT 默认运行到手机和平板中
                -->
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>

//    <intent-filter>
//                <action android:name="com.chen.xxx"/>
//                <!-- category 都要去声明  android.intent.category.DEFAULT 默认运行到手机和平板中-->
//                <category android:name="android.intent.category.DEFAULT" />
//            </intent-filter>
    //隐式激活
    public void click02(View v){

        Intent intent = new Intent();
        intent.setAction("com.chen.xxx");
        intent.addCategory("android.intent.category.DEFAULT");
        startActivity(intent);
        System.out.println("隐式激活");

    }
  • 那什么时候用显示激活,什么时候用隐式激活呢?
    当开启的是应用内部的activity组件的时候,用显示激活
    当开启的是其他应用的activity组件的时候就用隐式激活

  • 开启外部应用的activity
    这是两个应用


    2018-03-11_092525.png

在多线程下载(一)中配置的是

<activity android:name="com.chen.multithreaddownloadtest.SecondMainActivity">
            <intent-filter>
                <action android:name="com.chen.xxxyy" />
               <!-- <data android:scheme="chen" android:host="www.chen.com"/>-->
                <data android:mimeType="text/plain" android:scheme="chen"/>
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>

        </activity>

app中

//隐式激活
    public void click03(View v){

        Intent intent = new Intent();
        intent.setAction("com.chen.xxxyy");
        //intent.setData(Uri.parse("chen://www.chen.com"));
        //type和data不能分开设置
//        intent.setData(Uri.parse("chen:"));
//        intent.setType("text/plain");
        intent.setDataAndType(Uri.parse("chen://www.chen.com"),"text/plain");


        intent.addCategory("android.intent.category.DEFAULT");
        startActivity(intent);
        System.out.println("隐式激活");

    }

如果在一个项目空间中有两个activity同样设置了两个一模一样的<intent-filter></intent-filter>,再去开启会怎样呢?


2018-03-10_180446.png

相关文章

  • 2018-03-11 开启多界面(激活activity)

    笔记如下 显示激活在AndroidManifest.xml文件中先注册activity 隐式激活在AndroidM...

  • 2018-05-28

    Activity 启动模式为singleTop、singleTask时当Activity界面已在栈顶再次开启界面...

  • 四、Activity

    一、android中的Activity组件 如何开发多界面的应用:需要有 多个activity ,默认的情况下 每...

  • 安卓开发个人经验

    说明 仅仅作为记录使用! (1)描述 从界面A(一个Activity)跳转到界面B(一个Activity),在界面...

  • 安卓开发入门教程-Activity

    什么是Activity Activity就是你所看到的各个界面,每个界面都是一个Activity.如果把整个app...

  • 安卓四大组件

    1.Activity(界面展示型组件)Activity生命周期。 启动Activity: onCreate()—>...

  • Service

    Service介绍 运行于后台,没有前台界面的组件,用于运行需要在后台运行的代码。 在Activity中开启线程下...

  • Activity(一)

    创建Activity(用户界面),需要在清单(manifest.xml)中申明Activity. Activity...

  • Android启动模式—你需要知道的一切

    启动界面如下:MainActivity—>Activity1—>Activity2—>Activity3—>Mai...

  • Android——View绘制流程

    Activity、Window、PhoneWindow、DecorView 1、Activity:具体的一个界面。...

网友评论

      本文标题:2018-03-11 开启多界面(激活activity)

      本文链接:https://www.haomeiwen.com/subject/tfmifftx.html