本文讲述Android常用的跳转系统页面
代码
public class MainActivity extends AppCompatActivity {
private TextView textView1;
private TextView textView2;
private TextView textView3;
private TextView textView4;
private TextView textView5;
private TextView textView6;
private String phone = "17723399904";
private String sendto = "这是一条短信";
private String email = "fd@qq.com";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//直接拨打电话
textView1 = (TextView) findViewById(R.id.textview1);
textView1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction("android.intent.action.CALL");
Uri uri = Uri.parse("tel:" + phone);
intent.setData(uri);
startActivity(intent);
}
});
//跳转到拨号页面
textView2 = (TextView) findViewById(R.id.textview2);
textView2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction("android.intent.action.DIAL");
Uri uri = Uri.parse("tel:" + phone);
intent.setData(uri);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
});
//发送短信
textView3 = (TextView) findViewById(R.id.textview3);
textView3.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction("android.intent.action.SENDTO");
Uri uri = Uri.parse("smsto:" + phone);
intent.setData(uri);
intent.putExtra("sms_body", sendto);
startActivity(intent);
}
});
//发送邮件
textView4 = (TextView) findViewById(R.id.textview4);
textView4.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent it = new Intent(Intent.ACTION_SEND);
it.setType("plain/text");
String add[] = new String[]{email};
String sub = "";
String con = "";
it.putExtra(Intent.EXTRA_EMAIL, add);
it.putExtra(Intent.EXTRA_SUBJECT, sub);
it.putExtra(Intent.EXTRA_TEXT, con);
startActivity(Intent.createChooser(it, "选择邮箱工具"));
}
});
//跳转浏览器
textView5 = (TextView) findViewById(R.id.textview5);
textView5.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent();
intent.setAction("android.intent.action.VIEW");
Uri uri = Uri.parse("http://blog.youkuaiyun.com/weixin_37730482");
intent.setData(uri);
//指定特定浏览器
intent.setClassName("com.android.browser", "com.android.browser.BrowserActivity");
startActivity(intent);
//uc浏览器:"com.uc.browser", "com.uc.browser.ActivityUpdate"
// opera:"com.opera.mini.android", "com.opera.mini.android.Browser"
//qq浏览器:"com.tencent.mtt", "com.tencent.mtt.MainActivity"
}
});
//系统设置
textView6 = (TextView) findViewById(R.id.textview6);
textView6.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(Settings.ACTION_SETTINGS);
startActivity(intent);
}
});
}
}
效果截图
<1> 拨打电话
<2> 拨号
<3> 发送短信
<4> 发送邮件
<5> 跳转浏览器
<6> 系统设置
附 android intent action 介绍大全
一些常用的Intent
Uri | Action | 功能 | 备注 |
---|---|---|---|
geo:latitude,longitude | Intent.ACTION_VIEW | 打开地图应用程序并显示指定的经纬度 | |
geo:0,0?q=street+address | Intent.ACTION_VIEW | 打开地图应用程序并显示指定的地址 | |
http://web_address | Intent.ACTION_VIEW | 打开浏览器程序并显示指定的URL | |
https://web_address | Intent.ACTION_VIEW | 打开浏览器程序并显示指定的URL | |
tel:phone_number | Intent.ACTION_CALL | 打开电话应用程序并拨打指定的电话号码 | |
tel:phone_number | Intent.ACTION_DIAL | 打开电话应用程序并拨下指定的电话号码 | |
voicemail: | Intent.ACTION_DIAL | 打开电话应用程序并拨下指定语音邮箱的电话号码 | |
plain_text | Intent.ACTION_WEB_SEARCH | 打开浏览器程序并使用Google搜索引擎搜索 |
活动:
Intent | 说明 | Action |
---|---|---|
CALL_ACTION | 拨打电话,被呼叫的联系人在数据中指定。 | android.intent.action.CALL |
EMERGENCY_DIAL_ACTION | 拨打紧急电话号码。 | android.intent.action.EMERGENCY_DIAL |
DIAL_ACTION | 拨打数据中指定的电话号码。 | android.intent.action.DIAL |
ANSWER_ACTION | 处理拨入的电话。 | android.intent.action.ANSWER |
DELETE_ACTION | 从容器中删除给定的数据。 | android.intent.action.DELETE |
PICK_ACTION | 从数据中选择一个项目 (item),将被选中的项目返回。 | android.intent.action.PICK |
DEFAULT_ACTION | 和 VIEW_ACTION 相同,是在数据上执行的标准动作。 | android.intent.action.VIEW |
LOGIN_ACTION | 获取登录凭证。 | android.intent.action.LOGIN |
ALL_APPS_ACTION | 列举所有可用的应用。 | android.intent.action.ALL_APPS |
CLEAR_CREDENTIALS_ACTION | 清除登陆凭证 (credential)。 | android.intent.action.CLEAR_CREDENTIALS |
GET_CONTENT_ACTION | 让用户选择数据并返回。 | android.intent.action.GET_CONTENT |
EDIT_ACTION | 为制定的数据显示可编辑界面。 | android.intent.action.EDIT |
BUG_REPORT_ACTION | 显示 activity 报告错误。 | android.intent.action.BUG_REPORT |
SETTINGS_ACTION | 显示系统设置。输入:无。 | android.intent.action.SETTINGS |
WALLPAPER_SETTINGS_ACTION | 显示选择墙纸的设置界面。输入:无。 | android.intent.action.WALLPAPER_SETTINGS |
SENDTO_ACTION | 向 data 指定的接收者发送一个消息。 | android.intent.action.SENDTO |
VIEW_ACTION | 向用户显示数据。 | android.intent.action.VIEW |
PICK_ACTIVITY_ACTION | 选择一个 activity,返回被选择的 activity 的类(名)。 | android.intent.action.PICK_ACTIVITY |
RUN_ACTION | 运行数据(指定的应用),无论它(应用)是什么。 | android.intent.action.RUN |
INSERT_ACTION | 在容器中插入一个空项 (item)。 | android.intent.action.INSERT |
ADD_SHORTCUT_ACTION | 在系统中添加一个快捷方式。. | android.intent.action.ADD_SHORTCUT |
WEB_SEARCH_ACTION | 执行 web 搜索。 | android.intent.action.WEB_SEARCH |
SYNC_ACTION | 执行数据同步。 | android.intent.action.SYNC |
MAIN_ACTION | 作为主入口点启动,不需要数据。 | android.intent.action.MAI |