Intent总结03Action属性
Action :规定了Intent要完成的动作,是一个字符串常量。使用setAction()来设置Action属性,使用getAction()来获得Action属性。既可以使用系统内置的Action,也可以自己定义。系统自定义的action,如ACTION_VIEW, ACTION_EDIT, ACTION_MAIN等等。
1.自定义Action
在“目的Activity”的AndroidManifest.xml中指定action常量。<activity android:name=".ActionDestination"> <intent-filter> <action android:name="Skywang_ACTION" /> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity><categoryandroid:name="android.intent.category.DEFAULT" />的作用是用来说明,可以通过隐式跳转(即其它类调用setAction("Skywang_ACTION"))来找到ActionDestination这个activity。这样,其它的类就可以通过下面的代码跳转到ActionDestination。跳转时,setAction的字符串"Skywang_ACTION"必须与AndroidManifest.xml中定义的"Skywang_ACTION"一致。
Intent intent = new Intent(); intent.setAction("Skywang_ACTION"); startActivity(intent);2系统Action
// 流量网页 Uri uri =Uri.parse("http://www.baidu.com"); Intent intent = newIntent(Intent.ACTION_VIEW, uri); startActivity(intent);
// 拨打电话 // if you want to use ACTION_DIAL, you mustadd permissin in manifest, the permission is bellow // <uses-permissionandroid:name="android.permission.CALL_PHONE" /> Uri uri = Uri.parse("tel:12580"); Intent it = new Intent(Intent.ACTION_DIAL,uri); startActivity(it);// 发送短信 Uri uri = Uri.parse("smsto:13410177756"); Intent it = newIntent(Intent.ACTION_SENDTO, uri); it.putExtra("sms_body", "TheSMS text"); startActivity(it);//播放mp3 Intent it = new Intent(Intent.ACTION_VIEW); Uri uri =Uri.parse("file:///sdcard/song.mp3"); it.setDataAndType(uri, "audio/mp3"); startActivity(it);3 代码和说明
程序的目录结构如下:程序的主界面如下:点击“Action Self-Defin”跳转到自定义的程序界面:点击“Action Http”跳转到网页浏览界面:点击“Action Call”跳转到拨号程序界面:点击“Action Mms”跳转到短信程序界面:
点击下载:示例代码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~