关于安卓应用开发的问题......入门问题......

问题描述:

看教程写了个输入号码拨号的小应用 代码如下

package com.example.testcall;

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.widget.Button;
import android.widget.EditText;

public class MainActivity extends Activity {
    private EditText numET;
    private Button but;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        numET = (EditText) this.findViewById(R.id.EditText1);
        but = (Button) findViewById(R.id.Button01); 
    }


    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    public void call(View v) {
        String num = numET.getText().toString();
        Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse(num));
        this.startActivity(intent);
    }
}

运行报错如下

05-19 12:12:43.310: E/AndroidRuntime(781): Caused by: android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.CALL dat= }

这是说activity没注册吗 就是默认的main activity 明明已经注册了啊 求指教谢谢~~

把电话的prefix设为"tel:"

Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:"+num));
this.startActivity(intent);

最后别忘添加权限了

<uses-permission  android:name="android.permission.CALL_PHONE" />

你用的哪个版本啊 我用的Android4.4 总是调用不了系统拨号 谢谢 求回复