Приложение для дозвона Android

Я выясняю способ заменить приложение дозвона по умолчанию из моего пользовательского приложения для набора номера, но я не понимаю, как это сделать.

Вот что я хочу

  • Создание пользовательского пользовательского интерфейса
  • Мое приложение вызывается всякий раз, когда нажимается кнопочное устройство или нажимается на Android
  • Приложение также можно вызвать с экрана контакта

Я имею в виду public static final String ACTION_DIAL .

Solutions Collecting From Web of "Приложение для дозвона Android"

  1. Создайте простое приложение для Android (наш дозвонщик). Чтобы на самом деле позвонить кому-то, вам просто нужен этот метод:

    private void performDial(String numberString) { if (!numberString.equals("")) { Uri number = Uri.parse("tel:" + numberString); Intent dial = new Intent(Intent.ACTION_CALL, number); startActivity(dial); } } 
  2. Предоставьте разрешение на использование приложения в AndroidManifest

     <uses-permission android:name="android.permission.CALL_PHONE" /> 
  3. Установите в AndroidManifest намерение, которое говорит на ваш телефон, чтобы использовать ваше приложение, когда требуется дозвонщик

Когда кто-то нажимает кнопку вызова:

  <intent-filter> <action android:name="android.intent.action.CALL_BUTTON" /> <category android:name="android.intent.category.DEFAULT" /> </intent-filter> 

Когда кто-то запускает URI:

  <intent-filter> <action android:name="android.intent.action.VIEW" /> <action android:name="android.intent.action.DIAL" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="tel" /> </intent-filter> 

Это сработало для меня:

  <activity android:name=".activities.MainActivity" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> <!-- open activity when establishing a call --> <intent-filter> <action android:name="android.intent.action.CALL_PRIVILEGED" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="tel" /> </intent-filter> </activity> 

Указ ACTION_DIAL, похоже, позволяет вам передавать номер для вызова стандартного дозвона, готового для вызова пользователем, если они этого хотят, поэтому это не то, что вам нужно.

У вас есть конкретный вопрос, или вы хотите, чтобы кто-то рассказал вам, как реализовать свое приложение, вызываемое при нажатии кнопки программного и аппаратного вызова?

Похоже, вам нужен ACTION_CALL_BUTTON – http://developer.android.com/reference/android/content/Intent.html#ACTION_CALL_BUTTON