可以使用Intent做如下的几件事情:
Broadcast a message
Start a service
Launch an antivity
Display a web page or a list of contacts
Dial a phone number or answer a phone call
参考代码:
Java类:
public class BasicViewActivity extends Activity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.someview);
}
}
public static invokeMyApplication(Activity parentActivity){
String actionName = "com.example.intent.action.ShowBasicView";
Intent intent = new Intent(actionName);
parentActivity.startActivity(intent);
}
xml文件:
<activity android:name="BasicViewActivity" android;label="Basic View Tests"> <intent-filter> <action android:name="com.example.intent.action.ShowBasicView"/> <category android:name="android.intent.category.DEFAULT"/> </intent-filter> </activity>
关于Intent的一些用法如下:
public class IntentsUtils{
public static void invokeWebBrowser(Activity activity){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.google.com"));
activity.startActivity(intent);
}
public static void invokeWebSearch(Activity activity){
Intent intent = new Intent(Intent.ACTION_WEB_SEARCH);
intent.setData(Uri.parse("http://www.google.com"));
activity.startActivity(intent);
}
public static void dial(Activity activity){
Intent intent = new Intent(Intent.ACTION_DIAL);
activity.startActivity(intent);
}
public static void call(Activity activiy){
Intent intent = new Intent(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:555-555-5555"));
activity.startActivity(intent);
}
public static void showMapAtLatLong(Activity activity){
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("gen:0,0?z=4&q=business+near+city"));
activity.startActivity(intent);
}
public void tryOneOfThese(Activity activity){
IntentsUtils.call(activity);
}