Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> android調用系統郵件組件(intent匹配的流程)

android調用系統郵件組件(intent匹配的流程)

編輯:關於Android編程

直接代碼

package com.example.demoemail;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
/**
 * 調用郵件組件,主要是用到了intent的相關知識
 * 1.首先需要在清單文件的Activity中配置action標簽(動作,此處指明是調用系統的郵件組件android.intent.action.SENDTO)
 * 需要設置data標簽,此處是對應的uri數據。 的一般格式是scheme://host:post/path.具體代表含義請自己上網查詢。
 * 繼續添加標簽,此標簽是設置種類信息,像我們平常啟動一個activity一般用startActivity(),如果調用了它,系統會默認的給Intent添加 ,
 * 所以我們開發的時候不會出錯。如果需要其他的種類,就必須要在清單文件中配置。否則會配皮失敗,NO_MATCH_CATEGORY.
 * 2.在Activity中調用郵箱組件,使用Intent來設置action,data,category等。當你調用startActivity(),它會與清單文件你配置的中信息配皮,
 * 如果匹配成功就調用郵件組件。
 * 
 * 總結一下。intent組件的匹配流程。
 * intent首先會與的action相匹配,如果為空,會匹配失敗。NO_MATCH_ACTION.不繼續進行
 * 如果中有,再判斷intent.setAction()是否為空,如果不是空,就與中相配皮,如果為空和前面匹配成功,就繼續讓Intent.setData和type與中
 * 相比較。如果匹配度>0則匹配成功(值越大,匹配越成功)。如果<0,則表示匹配失敗。NO_MATCH_DATA.NO_MATCH_TYPE。最後比較信息。如果intent.setCategory與中信息有,匹配成功,否則
 * 匹配失敗。NO_MATCH_CATEGORY
 * 
 * 像之上NO_MATCH_CATEGORY這些返回的都是16進制的值,一般最高位為0表示成功。
 * @author pangzf
 *
 */
public class MainActivity extends Activity {

	private View vClick;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		initView();
		setClickListener();
	}

	

	private void initView() {
		vClick = findViewById(R.id.tv_clcik);
	}
	private void setClickListener() {
		vClick.setOnClickListener(new OnClickListener() {
			
			@Override
			public void onClick(View v) {
				sendMail();
			};
		});
	}

	protected void sendMail() {
		Intent intent=new Intent();
		intent.setAction(Intent.ACTION_SENDTO);
		intent.setData(Uri.parse("mailto:[email protected]"));
		startActivity(intent);
	}



	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.activity_main, menu);
		return true;
	}

}




    

    
        
            
                
                
            
             
                
                
                
                
            
            
        
        
    

\


demo地址:http://download.csdn.net/detail/pangzaifei/6989527


  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved