經過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. }

相關文章
相關標籤/搜索