贾政经
2013-05-19 04:35
采纳率: 50%
浏览 3.6k

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

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

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 明明已经注册了啊 求指教谢谢~~

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • franzhong 2013-05-19 05:04
    已采纳

    把电话的prefix设为"tel:"

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

    最后别忘添加权限了

    <uses-permission  android:name="android.permission.CALL_PHONE" />
    
    点赞 评论
  • 书呆子Rico 2015-04-13 02:44

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

    点赞 评论

相关推荐 更多相似问题