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

여전히 작동하지 않습니다. 이 코드는 직접 전화를 걸지 않는 다이얼 화면으로도 안내합니다. –