显式启动Activity和隐式启动Activity
1.显式启动
Intent intent = new Intent(this, class);
startActivity(intent);
2.隐式启动
AndroidManifest.xml中定义某个Activity的intent-fliter
<intent-filter>
<action android:name="com.example.activity.ACTION_START" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="com.example.activity.ACTION_START" />
</intent-filter>
Activity中
Intent intent = new Intent("com.example.activity.ACTION_START");
//android.intent.category.DEFAULT是一种默认的category,在startActivity时自动添加
intent.addCategory("com.example.activity.ACTION_START");
startActivity(intent);
隐式启动,在启动的时候是不明确的,需要匹配系统或AndroidManifest.xml中的intent-filter定义,只有action和category和data完全匹配时,才会启动.
隐式启动不仅可以启动自己的Activity,还可以启动其他的Activity,如打开网页
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.baidu.com"));
startActivity(intent);
这儿首先指定了intent的action为Intent.ACTION_VIEW,这是android内置的打开网页动作,然后通过Uri.parse将一个网址解析为Uri对象,再调用Intent的setData将Uri对象传递进去.
相关文章
- WRTNode(MT7620n)USB启动总结
- Flask开发服务器启动方式
- 【Activity】Activity的启动模式:SingleTask
- 阿里云服务器CentOS7启动tomcat7巨慢
- 制作简单启动兼容性好的U盘维护工具
- Linux下后台方式启动mongodb
- [转]uniapp 应用启动onLaunch方法,改为同步,执行后再执行页面加载onLoad方法
- mongodb 启动脚本和配置
- windows server 2008 w3svc服务无法启动,错误 1068依赖服务或组件无法启动
- Activity四种启动模式
- Android应用程序组件Content Provider的启动过程源代码分析
- Android应用程序的Activity启动过程简要介绍和学习计划
- Android中Activity启动模式详解
- Linux的启动流程
- 在一个Activity里面的TextView上面添加网页链接,启动后到另一个Activity里面!
- 安卓插件化课程-第三篇:埋桩的方式启动插件中的activity
- android学习-Activity启动过程详解
- Hook技术--Activity的启动过程的拦截
- 思考一下activity的启动模式
- 【framework】Activity启动流程
- Activity具体解释(生命周期、以各种方式启动Activity、状态保存,全然退出等)
- Activity具体解释(生命周期、以各种方式启动Activity、状态保存,全然退出等)
- Linux下启动停止服务shell脚本
- kafka源码分析之一server启动分析
- matlab下启动时提示错误的解决记录
- 修复无法启动的mariadb