Можно ли разделить покупку с оплатой в приложении несколькими приложениями?

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

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

Вот сценарий, иллюстрирующий то, чего я пытаюсь достичь. Пользователь, использующий app-A, совершает покупку, чтобы убрать рекламу. Если у него также установлено приложение-B, покупка удаления рекламы в приложении-A удалит рекламу в приложении-B.

Глядя на документы IAB, кажется, что приложение может отправлять запросы API для проверки покупок, но я не уверен, привязана ли учетная запись IAB к конкретному APK.

Если это невозможно, как можно поделиться покупкой IAB в нескольких приложениях?


person Mridang Agarwalla    schedule 04.09.2014    source источник


Ответы (1)


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

В качестве возможного обходного пути я предложу вам:

  • реализовать в обоих приложениях экспортированный ContentProvider с уровнем безопасности подписи (это означает, что только приложения, подписанные одним и тем же КЛЮЧОМ, вашим ключом, могут получить доступ к этому ContentProvider)
  • в этом контент-провайдере разрешить обоим приложениям запрашивать, есть ли у другого лицензия или нет.
  • сделайте отдельные IAP для обоих приложений и во время выполнения запрашивайте друг у друга информацию.

другой подход от ContentProvider может быть реализован с манифестом UID (Как мне создать надстройку лицензирования для моего приложения Android?), а также со связанными службами, возможно, с необходимостью использования некоторого AIDL (http://developer.android.com/guide/components/aidl.html)

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

Совершенно другой подход заключается в том, чтобы иметь «лицензионное приложение», которое является обычным платным приложением, которое является лицензией для обоих приложений A и B.

person Budius    schedule 04.09.2014