android教程之intent的action属性使用示例(intent发短信)

前端技术 2023/09/06 Android

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);

本文地址:https://www.stayed.cn/item/14792

转载请注明出处。

本站部分内容来源于网络,如侵犯到您的权益,请 联系我

我的博客

人生若只如初见,何事秋风悲画扇。