Intent可以启动除了本程序的Activity以外可以启动系统自身的Activity
2013-05-11 23:28
316 查看
基于MainActivity.java的源代码进行如下改动,启动短信Activity。
package com.example.activity_02;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
//import android.content.DialogInterface;
//import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
// 我的代码 生成一个监听
private OnClickListener Listener = new OnClickListener() {
// 单击按钮后要做的事情,此处是切换MainActivity到OtherActivity
// 在onClick(View v)这个函数的参数可以不动,写成View myButton也不会发生错误
public void onClick(View v) {
Uri uri = Uri.parse("smsto:/800000123");
Intent intent = new Intent(Intent.ACTION_SENDTO,uri);
intent.putExtra("sms_body", "The SMS text");
startActivity(intent);
/* 如果想调用打电话Activity用如下代码
*/
}
/*
* Intent intent = new Intent().setClass(MainActivity.this,
* OtherActivity.class); intent.putExtra("TestIntent", "123"); //启动服务
* 因为Activity继承了 所以也有这个方法 //这个在Mars的教程里面用的事this。Serviece但是不能启动
* MainActivity.this.startActivity(intent);
* //这里面我放个finish的目的就是看程序是否运行到此处 //finish();
* //这里面要说一点这个函数式在帮助文件中的例子,所以看帮助文件还是很不错的。
* // do something when the
* button is clicked }
*/
};
如果想打开地图
View a map:
package com.example.activity_02;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
//import android.content.DialogInterface;
//import android.content.DialogInterface.OnClickListener;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
// 我的代码 生成一个监听
private OnClickListener Listener = new OnClickListener() {
// 单击按钮后要做的事情,此处是切换MainActivity到OtherActivity
// 在onClick(View v)这个函数的参数可以不动,写成View myButton也不会发生错误
public void onClick(View v) {
Uri uri = Uri.parse("smsto:/800000123");
Intent intent = new Intent(Intent.ACTION_SENDTO,uri);
intent.putExtra("sms_body", "The SMS text");
startActivity(intent);
/* 如果想调用打电话Activity用如下代码
Uri number = Uri.parse("tel:5551234"); Intent callIntent = new Intent(Intent.ACTION_DIAL, number); startActivity(callIntent);
*/
}
/*
* Intent intent = new Intent().setClass(MainActivity.this,
* OtherActivity.class); intent.putExtra("TestIntent", "123"); //启动服务
* 因为Activity继承了 所以也有这个方法 //这个在Mars的教程里面用的事this。Serviece但是不能启动
* MainActivity.this.startActivity(intent);
* //这里面我放个finish的目的就是看程序是否运行到此处 //finish();
* //这里面要说一点这个函数式在帮助文件中的例子,所以看帮助文件还是很不错的。
* // do something when the
* button is clicked }
*/
};
如果想打开地图
View a map:
// Map point based on address Uri location = Uri.parse("geo:0,0?q=1600+Amphitheatre+Parkway,+Mountain+View,+California"); // Or map point based on latitude/longitude // Uri location = Uri.parse("geo:37.422219,-122.08364?z=14"); // z param is zoom level Intent mapIntent = new Intent(Intent.ACTION_VIEW, location); //测试未通过ForceStop
打开网页
Uri webpage = Uri.parse("http://www.android.com"); Intent webIntent = new Intent(Intent.ACTION_VIEW, webpage);
发EmailSend an email with an attachment:
Intent emailIntent = new Intent(Intent.ACTION_SEND); // The intent does not have a URI, so declare the "text/plain" MIME type emailIntent.setType(HTTP.PLAIN_TEXT_TYPE); emailIntent.putExtra(Intent.EXTRA_EMAIL, new String[] {"jon@example.com"}); // recipients emailIntent.putExtra(Intent.EXTRA_SUBJECT, "Email subject"); emailIntent.putExtra(Intent.EXTRA_TEXT, "Email message text"); emailIntent.putExtra(Intent.EXTRA_STREAM, Uri.parse("content://path/to/email/attachment")); // You can also attach multiple items by passing an ArrayList of Uris /*要包含import org.apache.http.protocol.HTTP;*/
启动日历事件
Intent calendarIntent = new Intent(Intent.ACTION_INSERT, Events.CONTENT_URI); Calendar beginTime = Calendar.getInstance().set(2012, 0, 19, 7, 30); Calendar endTime = Calendar.getInstance().set(2012, 0, 19, 10, 30); calendarIntent.putExtra(CalendarContract.EXTRA_EVENT_BEGIN_TIME, beginTime.getTimeInMillis()); calendarIntent.putExtra(CalendarContract.EXTRA_EVENT_END_TIME, endTime.getTimeInMillis()); calendarIntent.putExtra(Events.TITLE, "Ninja class"); calendarIntent.putExtra(Events.EVENT_LOCATION, "Secret dojo"); 运行不起来错误在第二,三行。
相关文章推荐
- [Android]Intent隐式启动Android系统程序的一些参数
- Android中Activity启动模式详解,可以控制程序按home键后进来还会调用一个自己不喜欢的界面
- [Android]Intent隐式启动Android系统程序的一些参数
- Intent的属性及Intent-filter配置——实例Action、Data属性启动系统Activity
- Android 中拦截 Activity 的启动(拦截系统的 Intent)
- Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)
- Intent之——跨进程启动Activity和设置程序的多个入口
- Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)
- Intent 使用Action 和Data 属性启动系统activity
- Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)
- 系统广播可以启动强制关闭的程序么?
- Intent启动系统组件(activity,service,BroadReceiver)-android学习之旅(四十九)
- Hook技术(四)对系统启动Activity进行Hook之偷梁换柱Activity
- android 用Intent打开系统程序
- vs2005 无法启动程序 系统找不到指定的文件---解决方案
- Activity四种启动模式 及 Intent Flags 与 栈 的关联分析
- 隐式启动Activity,Intent filter必须添加android.intent.category.DEFAULT
- Activity启动系统服务
- Linux系统启动时自动启动指定程序
- Activity 生命周期、启动模式、IntentFilter 匹配规则