经过Intent调用系统功能大全

  1. package mars.com;java

  2.  

  3. import android.app.Activity;android

  4. import android.content.Intent;浏览器

  5. import android.net.Uri;网络

  6. import android.os.Bundle;app

  7.  

  8. public class DemoActivity extends Activity {spa

  9. public void onCreate(Bundle savedInstanceState) {.net

  10. super.onCreate(savedInstanceState);code

  11. setContentView(R.layout.main);blog

  12. Uri uri = Uri.parse("http://www.baidu.com");// 指定数据图片

  13. Intent intent = new Intent();

  14. intent.setAction(Intent.ACTION_VIEW);// 指定action

  15. intent.setData(uri);// 设置数据

  16. startActivity(intent);

  17. }

  18. }

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调用的是系统的浏览器,在这以前是不须要联网的,因此不用注册网络权限。由于系统浏览器确定注册了。谁有更好的想法能够给我留言。

下面是调用打电话的

注册权限 <uses-permission android:name="android.permission.CALL_PHONE" />

调用系统打电话程序

[java] view plaincopyprint?

  1. Uri uri = Uri.parse("tel:18710829870");// 指定数据

  2. Intent intent = new Intent();

  3. intent.setAction(Intent.ACTION_DIAL);// 指定action

  4. intent.setData(uri);// 设置数据

  5. startActivity(intent);

Uri uri = Uri.parse("tel:18710829870");// 指定数据
Intent intent = new Intent();
intent.setAction(Intent.ACTION_DIAL);// 指定action
intent.setData(uri);// 设置数据
startActivity(intent);


发送短信

[java] view plaincopyprint?

  1. package mars.com;

  2.  

  3. import android.app.Activity;

  4. import android.content.Intent;

  5. import android.net.Uri;

  6. import android.os.Bundle;

  7.  

  8. public class DemoActivity extends Activity {

  9. public void onCreate(Bundle savedInstanceState) {

  10. super.onCreate(savedInstanceState);

  11. setContentView(R.layout.main);

  12. Uri uri = Uri.parse("smsto:15291874875");// 指定接收人数据

  13. Intent intent = new Intent();

  14. intent.setAction(Intent.ACTION_SENDTO);// 指定action

  15. intent.putExtra("sms_body", "这是一条短信");// 设置信息类型

  16. intent.setType("vnd.android-dir/mms-sms");// 设置数据

  17. intent.setData(uri);// 设置数据

  18. startActivity(intent);

  19. }

  20. }

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);
	}
}


不要忘记配置权限<uses-permission android:name="android.permission.SEND_SMS" />

发送彩信,这个实在模拟器上才行,真机上得找到地址

[java] view plaincopyprint?

  1. package mars.com;

  2.  

  3. import android.app.Activity;

  4. import android.content.Intent;

  5. import android.net.Uri;

  6. import android.os.Bundle;

  7.  

  8. public class DemoActivity extends Activity {

  9. public void onCreate(Bundle savedInstanceState) {

  10. super.onCreate(savedInstanceState);

  11. setContentView(R.layout.main);

  12. Uri uri = Uri.parse("file:///sdcard/run0.png");// 本地图片

  13. Intent intent = new Intent();

  14. intent.setAction(Intent.ACTION_SEND);// 指定action

  15. intent.putExtra("address", "18710829870");// 接收人电话

  16. intent.putExtra("sms_body", "这是一条短信");

  17. intent.setType("image/png");// 设置mime类型

  18. intent.putExtra(Intent.EXTRA_STREAM, uri);// 设置图片

  19. startActivity(intent);

  20. }

  21. }

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?

  1. package mars.com;

  2.  

  3. import android.app.Activity;

  4. import android.content.Intent;

  5. import android.os.Bundle;

  6.  

  7. public class DemoActivity extends Activity {

  8. public void onCreate(Bundle savedInstanceState) {

  9. super.onCreate(savedInstanceState);

  10. setContentView(R.layout.main);

  11. Intent emailIntent = new Intent(Intent.ACTION_SEND);// 实例化Intent

  12. emailIntent.setType("plain/text");// 设置类型

  13. String address[] = new String[] { "1154786190@qq.com" };

  14. String subject = "我是王玉超";

  15. String content = "www.baidu.com";

  16. emailIntent.putExtra(Intent.EXTRA_EMAIL, address);// 设置收件人

  17. emailIntent.putExtra(Intent.EXTRA_SUBJECT, subject);// 设置主题

  18. emailIntent.putExtra(Intent.EXTRA_TEXT, content);// 设置内容

  19. startActivity(emailIntent);

  20. }

  21. }

相关文章
相关标签/搜索