源代码:
import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
private EditText et_number;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//【1】找到我们关心的控件edittext button
et_number =(EditText) findViewById(R.id.editText1);
//[2]找到按钮
Button btn_call=(Button)findViewById(R.id.button1);
//[3]给button按钮设置一个点击事件
btn_call.setOnClickListener(new MyClickListener());
}
//定义一个类去实现按钮需要的接口类型
private class MyClickListener implements OnClickListener {
@Override
public void onClick(View v){
//【4】获取edittext的文本内容
String number=et_number.getText().toString().trim();
if("".equals(number)){
/**
* context上下文
*/
Toast.makeText(MainActivity.this,"number不能为空",Toast.LENGTH_LONG).show();
return;
}
//【5】进行拨打电话,意图Intent
Intent intent=new Intent();//创建一个意图对象
//【5.1】设置动作
intent.setAction(Intent.ACTION_CALL);
//【5.2】设置要拨打的数据
// uri:统一资源标识符自己定义的路径,想代表什么就代表什么
// url:统一资源定位符 www.baidu.com
intent.setData(Uri.parse("tel:"+number));
//【6】开启意图
startActivity(intent);
}
}
}
如代码所示,我想实现一个调用android打电话的功能,然而在开始拨打的时候却总是停止运行,权限也都已经添加了,如下图:
模拟器运行如图:
求大佬给个解决方法