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

2019-12-10 20:11:47丽君
易采站长站为您分析android中intent的action属性使用示例,提供了使用intent拨打电话、发送短信、播放mp3的代码    

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