通过intent调用系统功能大全 -凯发k8官方网
2019独角兽企业重金招聘python工程师标准>>>
package mars.com;
import android.app.activity;
import android.content.intent;
import android.net.uri;
import android.os.bundle;
public class demoactivity extends activity {
public void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
uri uri = uri.parse("http://www.baidu.com");// 指定数据
intent intent = new intent();
intent.setaction(intent.action_view);// 指定action
intent.setdata(uri);// 设置数据
startactivity(intent);
}
}
需要说明的是:这个上网不需要注册权限,原因我目前还不清楚,不过我认为是由于intent调用的是系统的浏览器,在这之前是不需要联网的,所以不用注册网络权限。因为系统浏览器肯定注册了。谁有更好的想法可以给我留言。
下面是调用打电话的
注册权限
调用系统打电话程序
[java] view plaincopyprint?
uri uri = uri.parse("tel:18710829870");// 指定数据
intent intent = new intent();
intent.setaction(intent.action_dial);// 指定action
intent.setdata(uri);// 设置数据
startactivity(intent);
发送短信
[java] view plaincopyprint?
package mars.com;
import android.app.activity;
import android.content.intent;
import android.net.uri;
import android.os.bundle;
public class demoactivity extends activity {
public void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
uri uri = uri.parse("smsto:15291874875");// 指定接收人数据
intent intent = new intent();
intent.setaction(intent.action_sendto);// 指定action
intent.putextra("sms_body", "这是一条短信");// 设置信息类型
intent.settype("vnd.android-dir/mms-sms");// 设置数据
intent.setdata(uri);// 设置数据
startactivity(intent);
}
}
不要忘记配置权限
发送彩信,这个实在模拟器上才行,真机上得找到地址
[java] view plaincopyprint?
package mars.com;
import android.app.activity;
import android.content.intent;
import android.net.uri;
import android.os.bundle;
public class demoactivity extends activity {
public void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
uri uri = uri.parse("file:///sdcard/run0.png");// 本地图片
intent intent = new intent();
intent.setaction(intent.action_send);// 指定action
intent.putextra("address", "18710829870");// 接收人电话
intent.putextra("sms_body", "这是一条短信");
intent.settype("image/png");// 设置mime类型
intent.putextra(intent.extra_stream, uri);// 设置图片
startactivity(intent);
}
}
电子邮件发送,这个是在真机上没问题,在模拟器上不行。而且还必须有一个gmail的邮箱才行
[java] view plaincopyprint?
package mars.com;
import android.app.activity;
import android.content.intent;
import android.os.bundle;
public class demoactivity extends activity {
public void oncreate(bundle savedinstancestate) {
super.oncreate(savedinstancestate);
setcontentview(r.layout.main);
intent emailintent = new intent(intent.action_send);// 实例化intent
emailintent.settype("plain/text");// 设置类型
string address[] = new string[] { "1154786190@qq.com" };
string subject = "我是王玉超";
string content = "www.baidu.com";
emailintent.putextra(intent.extra_email, address);// 设置收件人
emailintent.putextra(intent.extra_subject, subject);// 设置主题
emailintent.putextra(intent.extra_text, content);// 设置内容
startactivity(emailintent);
}
}
转载于:https://my.oschina.net/yuanxulong/blog/316862
总结
以上是凯发k8官方网为你收集整理的通过intent调用系统功能大全的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: