我正在創建一個通話應用程序。無法在android棉花糖中接聽來電6.0
這裏是自動答案,它適用於Android 4.0和5.0;而當我有一個來電回答呼叫按鈕的作品,但它不適用於Android 6.0。
我測試了這個職位的答案,但它並沒有太多的工作:Answer Incoming Call in Android 6.0
IncomingActivity:
@Override
public void onClick(View v) {
switch (v.getId())
{
case R.id.imgaccept:
{
if (Build.VERSION.SDK_INT >= 21) {
new Thread(new Runnable() {
@Override
public void run() {
try {
Runtime.getRuntime().exec("input keyevent " + KeyEvent.KEYCODE_HEADSETHOOK);
Intent intent = new Intent(getApplicationContext(), OutGoing.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(CommonMethods.OUTGOING_NUMBER, savedNumber);
startActivity(intent);
finish();
}
catch (Throwable t) {
}
}
}).start();
}
else {
Intent buttonDown = new Intent(Intent.ACTION_MEDIA_BUTTON);
buttonDown.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_HEADSETHOOK));
sendOrderedBroadcast(buttonDown, "android.permission.CALL_PRIVILEGED");
Intent buttonUp = new Intent(Intent.ACTION_MEDIA_BUTTON);
buttonUp.putExtra(Intent.EXTRA_KEY_EVENT, new KeyEvent(KeyEvent.ACTION_UP, KeyEvent.KEYCODE_HEADSETHOOK));
sendOrderedBroadcast(buttonUp, "android.permission.CALL_PRIVILEGED");
Intent intent = new Intent(this, OutGoing.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.putExtra(CommonMethods.OUTGOING_NUMBER, savedNumber);
startActivity(intent);
finish();
}
break;
}
case R.id.imgdecline:
{
CommonMethods.rejectCall(this);
finish();
break;
}
default:
break;
}
}
你在Android 6.0以上版本的權限檢查? – Ahmed
是的,我檢查所有權限 – Secret
@Secret:你有解決這個問題的方法嗎? –