У меня есть игра, в которой вы играете 1 на 1 против друзей, отвечающих на вопросы. В настоящее время существует 5 наборов вопросов, монетизированных через admob. Я планирую добавить еще 10 комплектов и опцию штрафов, которые будут разблокированы через покупку в приложении (также удаляет рекламу).
У меня работает реализация, но я чувствую, что это не лучший способ и может быть использовано для редактирования SharedPreferences
.
Когда пользователь покупает «премиум» через покупку в приложении, я устанавливаю значение "has_premium"
в SharedPreferences
. В моем фрагменте OnCreateView()
я звоню querySkuDetailsAsync()
и обновляю это предпочтение соответствующим образом, чтобы убедиться, что все покупки подтверждены и обновлены.
Где бы я ни размещал рекламу, я проверю это значение SharePreference
, а затем покажу / спрячу рекламу. Аналогично, при отображении RecyclerView
доступных наборов вопросов и штрафов, я снова проверяю это значение SharePreference
. Если пользователь премиум-класса, я включаю все элементы в RecyclerView
. Если пользователь не премиум, то я отключаю некоторые элементы и вместо этого запускаю BillingFlow
при нажатии.
Есть ли лучший способ проверить, что пользователь приобрел статус «премиум», чем сохранение значения SharedPreferences