android 常用action和category
之前 寫過一篇文章介紹常用的uri ? ?http://blog.csdn.net/iamkila/article/details/7264663
當需要在我們的應用程序上啟動其他系統應用程序時 我們通常用到action 下面介紹常用到的action?
雖然自己比較少用到 記錄一下方便用到時可以在這里翻資料
1 Intent.ACTION_MAIN
String: android.intent.action.MAIN
標識Activity為一個程序的開始。比較常用。
Input:nothing
Output:nothing?
?
<activity?android:name=".Main"?android:label="@string/app_name">???<intent-filter>
?????????<action?android:name="android.intent.action.MAIN"?/>
?????????<category?android:name="android.intent.category.LAUNCHER"?/>
?????</intent-filter>
</activity>?
?
2 Intent.Action_CALL
Stirng: android.intent.action.CALL
呼叫指定的電話號碼。
Input:電話號碼。數據格式為:tel:+phone number?
Output:Nothing?
?
Intent?intent=new?Intent();? intent.setAction(Intent.ACTION_CALL);???
intent.setData(Uri.parse("tel:1320010001");
startActivity(intent);
?
3 Intent.Action.DIAL
String: action.intent.action.DIAL
調用撥號面板
intent.setData(Uri.parse("tel:1320010001");
startActivity(intent);?
Input:電話號碼。數據格式為:tel:+phone number?
Output:Nothing
說明:打開Android的撥號UI。如果沒有設置數據,則打開一個空的UI,如果設置數據,action.DIAL則通過調用getData()獲取電話號碼。
但設置電話號碼的數據格式為 tel:+phone number.?
?
4 Intent.Action.ALL_APPS
String: andriod.intent.action.ALL_APPS
列出所有的應用。
Input:Nothing.
Output:Nothing.
?
5 Intent.ACTION_ANSWER
Stirng:android.intent.action.ANSWER
處理呼入的電話。
Input:Nothing.
Output:Nothing.
?
6 Intent.ACTION_ATTACH_DATA
String: android.action.ATTCH_DATA
別用于指定一些數據應該附屬于一些其他的地方,例如,圖片數據應該附屬于聯系人
Input: Data
Output:nothing
?
7 Intent.ACTION_BUG_REPORT
String: android.intent.action.BUG_REPORT
顯示Dug報告。
Input:nothing
output:nothing
?
8 Intent.Action_CALL_BUTTON
String: android.action.intent.CALL_BUTTON.
相當于用戶按下“撥號”鍵。經測試顯示的是“通話記錄”
Input:nothing
Output:nothing
?
Intent?intent?=?new?Intent(Intent.ACTION_CALL_BUTTON); startActivity(intent);?
9 Intent.ACTION_CHOOSER
String: android.intent.action.CHOOSER
顯示一個activity選擇器,允許用戶在進程之前選擇他們想要的,與之對應的是Intent.ACTION_GET_CONTENT.
?
10. Intent.ACTION_GET_CONTENT
String: android.intent.action.GET_CONTENT
允許用戶選擇特殊種類的數據,并返回(特殊種類的數據:照一張相片或錄一段音)?
Input: Type
Output:URI
?
int?requestCode?=?1001; Intent?intent?=?new?Intent(Intent.ACTION_GET_CONTENT);?//?"android.intent.action.GET_CONTENT"intent.setType("image/*");?//?查看類型,如果是其他類型,比如視頻則替換成?video/*,或?*/*
Intent?wrapperIntent?=?Intent.createChooser(intent,?null);
startActivityForResult(wrapperIntent,?requestCode);??
11?Intent.ACTION_VIEW
String android.intent.action.VIEW
用于顯示用戶的數據。
比較通用,會根據用戶的數據類型打開相應的Activity。
比如 tel:13400010001打開撥號程序,http://www.g.cn則會打開瀏覽器等。
?
Uri?uri?=?Uri.parse("http://www.google.com");?//瀏覽器? Uri?uri?=Uri.parse("tel:1232333");?//撥號程序?Uri?uri=Uri.parse("geo:39.899533,116.036476");?//打開地圖定位?
Intent?it?=?new?Intent(Intent.ACTION_VIEW,uri);?
startActivity(it);?
//播放視頻?
Intent?intent?=?new?Intent(Intent.ACTION_VIEW);?
Uri?uri?=?Uri.parse("file:///sdcard/media.mp4");?
intent.setDataAndType(uri,?"video/*");?
startActivity(intent);
//調用發送短信的程序?
Intent?it?=?new?Intent(Intent.ACTION_VIEW);
it.putExtra("sms_body",?"信息內容...");?
it.setType("vnd.android-dir/mms-sms");?
startActivity(it);
?
12?Intent.ACTION_SENDTO?
String: android.intent.action.SENDTO? 說明:發送短信息 ?
Intent?it?=?new?Intent(Intent.ACTION_SENDTO,?uri);?
it.putExtra("sms_body",?"信息內容...");?
startActivity(it);?
?
//發送彩信,設備會提示選擇合適的程序發送? Uri?uri?=?Uri.parse("content://media/external/images/media/23");?//設備中的資源(圖像或其他資源)?
Intent?intent?=?new?Intent(Intent.ACTION_SEND);?
intent.putExtra("sms_body",?"內容");?
intent.putExtra(Intent.EXTRA_STREAM,?uri);?
intent.setType("image/png");?
startActivity(it);
String[]?tos={"android1@163.com"};?
String[]?ccs={"you@yahoo.com"};?
intent.putExtra(Intent.EXTRA_EMAIL,?tos);?
intent.putExtra(Intent.EXTRA_CC,?ccs);
?intent.putExtra(Intent.EXTRA_TEXT,?"The?email?body?text");?
intent.putExtra(Intent.EXTRA_SUBJECT,?"The?email?subject?text");?
intent.setType("message/rfc822");?
startActivity(Intent.createChooser(intent,?"Choose?Email?Client"));
?
13?Intent.ACTION_GET_CONTENT
?
//選擇圖片?requestCode?返回的標識Intent?intent?=?new?Intent(Intent.ACTION_GET_CONTENT);?//"android.intent.action.GET_CONTENT"
intent.setType(contentType);?//查看類型?String?IMAGE_UNSPECIFIED?=?"image/*";
Intent?wrapperIntent?=?Intent.createChooser(intent,?null);
((Activity)?context).startActivityForResult(wrapperIntent,?requestCode);??
Intent?intent?=?new?Intent(Intent.ACTION_GET_CONTENT);
intent.setType(contentType);?//String?VIDEO_UNSPECIFIED?=?"video/*";
Intent?wrapperIntent?=?Intent.createChooser(intent,?null);
((Activity)?context).startActivityForResult(wrapperIntent,?requestCode);??
int?durationLimit?=?getVideoCaptureDurationLimit();?//SystemProperties.getInt("ro.media.enc.lprof.duration",?60);
Intent?intent?=?new?Intent(MediaStore.ACTION_VIDEO_CAPTURE);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY,?0);
intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT,?sizeLimit);
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT,?durationLimit);
startActivityForResult(intent,?REQUEST_CODE_TAKE_VIDEO);
?
//視頻Intent?intent?=?new?Intent(Intent.ACTION_GET_CONTENT);
intent.setType(contentType);?//String?VIDEO_UNSPECIFIED?=?"video/*";
Intent?wrapperIntent?=?Intent.createChooser(intent,?null);
((Activity)?context).startActivityForResult(wrapperIntent,?requestCode);??
Intent?intent?=?new?Intent(Intent.ACTION_GET_CONTENT);
intent.setType(ContentType.AUDIO_AMR);?//String?AUDIO_AMR?=?"audio/amr";
intent.setClassName("com.android.soundrecorder",
"com.android.soundrecorder.SoundRecorder");
((Activity)?context).startActivityForResult(intent,?requestCode);??
Intent?intent?=?new?Intent(MediaStore.ACTION_IMAGE_CAPTURE);?//"android.media.action.IMAGE_CAPTURE";
intent.putExtra(MediaStore.EXTRA_OUTPUT,?Mms.ScrapSpace.CONTENT_URI);?//?output,Uri.parse("content://mms/scrapSpace");
startActivityForResult(intent,?REQUEST_CODE_TAKE_PICTURE);??
提供將要執行的action的額外信息,一般在隱式地啟動activity時需要用到。常見的category如下:
?
總結
以上是生活随笔為你收集整理的android 常用action和category的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 20 周年会上的这条视频,看哭了 10
- 下一篇: 西门子博图自动定时加密程序+HMI程序,