2012-11-09 19 views

Odpowiedz

15
Intent intent = new Intent(Intent.ACTION_DIAL); 
startActivity(intent); 
+0

jego pracował thanx :) –

+0

Nie ma problemu (: chętnie pomoże – MrYanDao

3
Intent intent = new Intent(Intent.ACTION_CALL_BUTTON); 
      startActivity(intent); 

pokaże wyboru Dial Okno here do informacji

12
Intent intent = new Intent(Intent.ACTION_DIAL); 
intent.setData(Uri.parse("tel:9999999999")); 
startActivity(intent); 

Do tego nie trzeba dodawać żadnych uprawnień w AndroidManifest.xml

+0

Dla ACTION_DIAL, nie musimy CALL_PHONE zgody. Wymagało tylko ACTION_CALL – Mani

0
Intent callIntent = new Intent(Intent.ACTION_DIAL); 
callIntent.setData(Uri.parse("tel:" + phoneNumber)); 
if (ActivityCompat.checkSelfPermission(getActivity(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) { 
       // TODO: Consider calling 
       // ActivityCompat#requestPermissions 
       // here to request the missing permissions, and then overriding 
       // public void onRequestPermissionsResult(int requestCode, String[] permissions, 
       //           int[] grantResults) 
       // to handle the case where the user grants the permission. See the documentation 
       // for ActivityCompat#requestPermissions for more details. 
       return; 
      } 
startActivity(callIntent); 

Ponadto należy zarejestrować niestandardowy ekran dotykowy w następujący sposób manifest:

<application 
android:icon="@drawable/ic_launcher" 
android:label="@string/app_name" > 
<activity 
    android:name=".MyDialerApplication" 
    android:label="@string/app_name" > 

    <intent-filter android:priority="100" > 
     <action android:name="android.intent.action.MAIN" /> 
     <action android:name="android.intent.action.DIAL" /> 
     <action android:name="android.intent.action.CALL_PRIVILEGED" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
     <data android:scheme="tel" /> 

    </intent-filter> 
</activity> 

Powiązane problemy