按钮"开始&#34>我在main活动中的简单应用程序单击它,它调用扩展BroadcastReceiver的类的方法,此方法调用onReceive(Context context,Intent intent)。 onReceive方法的代码通过调用onReceive的意图将呼叫电话发送给我作为额外传递的号码,这样:
public void onReceive(Context context, Intent intent) {
PowerManager pm = (PowerManager) context.getSystemService(Context.POWER_SERVICE);
PowerManager.WakeLock wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "MyWakeLock");
wl.acquire();
Bundle dati = intent.getExtras();
String number = dati.getString("number");
Intent callIntent = new Intent(Intent.ACTION_CALL);
callIntent.setData(Uri.parse("tel:" + number));
if (ActivityCompat.checkSelfPermission(context, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
return;
}
context.startActivity(callIntent);
wl.release();
}
现在,该应用程序适用于Android工作室模拟器,但当我在我的设备上运行时,当我点击按钮"启动",应用程序崩溃,我不知道为什么。 我已经在清单文件中做了任何许可。