Несколько APK - звонить

Если у меня есть приложение, которое должно совершать звонки, и я хочу сделать другую версию, которая его не использует (чтобы оно работало только на планшетах с Wi-Fi, а также, конечно, чтобы пользователи могли устанавливать его с маркета), как я могу это сделать??

Поддержка нескольких APK в Android Market мне не поможет, так как она позволяет использовать несколько APK S, если они имеют одно из следующих значений:

  1. Форматы сжатия текстур OpenGL
  2. Размер экрана (и, необязательно, плотность экрана)
  3. Уровень API

Нужно ли мне иметь 2 разных приложения?! (Это глупее).

Могу ли я справиться с проблемой / рынком, скомпилировав против двух разных API (2.0: для приложения без разрешений для телефона и 2.1 для приложения с разрешениями для телефона), но установив minVersion для 1.6, чтобы они оба работали на одних и тех же устройствах?

Даже если он примет это.. рынок покажет правильную версию для устройств?

2 ответа

Решение

Если вы хотите поддерживать звонки, но не хотите, чтобы устройства без звонков были исключены, вам не нужно иметь два APK.

Просто добавьте эту строку в свой манифест:

<uses-feature android:name="android.hardware.telephony" android:required="false" />

Это будет означать, что приложение будет использовать телефонию, если она доступна.

Вопрос очень общий, поскольку вы не указываете, какие части вашего приложения должны выполнять вызовы.

В качестве предложения вы можете избежать связи с модулем вызовов, выполнив следующие действия:

 PackageManager pm = root.getContext().getPackageManager();
 boolean telefon = pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY);

Если значение telefon равно false, приложение не поддерживает телефонные звонки, поэтому не следует показывать вызывающий модуль.

Другие вопросы по тегам