android開發——手機通話功能實現

   今天,我寫了一個通話應用,這是我的第二個手機應用,通話功能是通過intent實現的,intent是一個實現某種意圖的類,把通話看成一個意圖,通話是動作,聯繫人號碼是數據,傳入這兩個參數就可以讓intent開啓。實現通話功能。別忘了加上通話權限,不然會報錯的。在Manifest.xml文件中加入<uses-permission android:name="android.permission.CALL_PHONE"/>

public class MainActivity extends Activity {
    //讓界面上的號碼框成爲全局變量,便於獲取其中的內容
    private EditText phoneNumEditText;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //獲得界面上號碼框的引用
        phoneNumEditText = (EditText) MainActivity.this.findViewById(R.id.et);
        //獲得界面上按鈕的引用,並添加事件監聽
        Button button = (Button) this.findViewById(R.id.but_id);
       // button.setOnClickListener(new MyButtonClick());
        button.setOnClickListener(new OnClickListener() {
            //匿名內部類實現方式
            @Override
            public void onClick(View v) {
                //獲取文本框的內容
                String number = phoneNumEditText.getText().toString();
                //撥打電話
                //Intent-->代表一個動作(意圖)-->動作(撥打電話)和數據(號碼)
                Intent intent = new Intent();
                //設置動作
                intent.setAction(Intent.ACTION_CALL);
                //設置數據("tel:"不能少,要不會出錯)
                intent.setData(Uri.parse("tel:"+number));
                //把意圖激活,完成動作的執行(撥打電話)
                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.main, menu);
        return true;
    }
                      
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章