0

私はアプリで「タッチトゥコール」機能を実装しています。ボタンをクリックするだけで直接3つのボタンからコールできます。私は100,101,112の番号を呼び出しました。コードは100と101で完全に動作していますが、112ボタンをクリックすると、直接電話をかける代わりに電話をかけることができるキーパッド画面が表示されます。これは112番の番号でのみ起こっています。私はこれにうんざりしています。助けてください。アンドロイドのタッチトゥコール機能を実行することができません

コード112は、一部の国(例えばドイツ)での緊急番号で、彼らはこれらの数字に「直接通話」を防ぐため、同じ

 @Override 
public void onClick(View view) { 

    switch (view.getId()) { 

     case R.id.imgBell112: 
      checkCallPermission("112"); 
      break; 

    } 
} 


public void checkCallPermission(String mobile) { 
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { 
     if (ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.CALL_PHONE) == PackageManager.PERMISSION_GRANTED) { 
      { 
       Intent intent = new Intent(Intent.ACTION_CALL); 
       intent.setData(Uri.parse("tel:" + mobile)); 
       startActivity(intent); 
      } 
     } else { 
      if (ActivityCompat.shouldShowRequestPermissionRationale(getActivity(), Manifest.permission.CALL_PHONE)) { 
       Toast.makeText(getActivity(), getResources().getString(R.string.kentoren_office_details_msg), Toast.LENGTH_LONG).show(); 
      } 
      ActivityCompat.requestPermissions(getActivity(), new String[]{Manifest.permission.CALL_PHONE}, CALL_REQUEST); 
     } 
    } else { 
     Intent intent = new Intent(Intent.ACTION_CALL); 
     intent.setData(Uri.parse("tel:" + mobile)); 
     startActivity(intent); 

    } 
} 

答えて

1

のためにそれはおそらくです。あなたは数911あなたはあなたに多分便利なこの

Uri uri = Uri.parse("tel://911"); 
Intent dialIntent = new Intent(Intent.ACTION_CALL,uri); 
callIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_NO_USER_ACTION); 
startActivity(dialIntent); 

希望のようなマニフェスト

ダイヤルで緊急番号マニフェスト許可CALL_PRIVILEGEDの許可を与える必要があり

0

を使用していることを確認することができます!

+0

まだ動作しません。このコードはダイレクトスクリーンにダイレクトコールをしないよう指示します –

関連する問題