اجرای برنامه با پرداخت درون برنامه ای فقط در یک گوشی
با سلام بنده میخام برنامه من که پرداخت درون برنامه ای داره فقط در یک گوشی اجرا بشه ، و کاربر نتونه از طریق اکانتش در چندین گوشی نصب بکنه ، خیلی تحقیق کردم و تقریبا همشون گفته بودن سریال گوشی رو بگیر و چک کن ، سریال گوشی رو میگیرم مشکل اینه که این سریال گوشی که به عنوان payload به بازار فرستاده میشه و موقع برگشت از بازار درستیش با متد purchasefisished چک میشه ، باید در نصب بعدی ، در یه جایی تو برنامه یا تو بازار ذخیره بشه تا موقع نصب صحتش چک بشه ، حالا نمیدونم چطوری یه جایی ذخیرش کنم ؟؟؟ با sharedprefrences نمیشه چون بعد از حفظ برنامه از کار می افته ، با دیتابیس هم تست کردم نشد . لطفا یکی کمکم کنه لطفا

بنظر من باید ی کد سرور داشته باشید و از همه گوشی ها یه شناسه یکتا تولید کنید و چک کنین با این شناسه خرید انجام شده یا نه اگه انجام نشده بود یک پرداخت انجام دهید. و اطلاعات پرداخت با شناسه گوشی رو در دیتابیس ذخیره کنید.

بنظر من باید ی کد سرور داشته باشید و از همه گوشی ها یه شناسه یکتا تولید کنید و چک کنین با این شناسه خرید انجام شده یا نه اگه انجام نشده بود یک پرداخت انجام دهید. و اطلاعات پرداخت با شناسه گوشی رو در دیتابیس ذخیره کنید.

ا تشکر از همه دوستان ، جوابشو یافتم و تست کردم درست کار کرد ، حالا کدشو میزارم شاید به درد کسی بخوره ، با این کد نه سرور نیاز هست و نه هیچی دیگه ،با استفاده از سریال گوشی یکتایی گوشی رو چک می کنه ، من مطابقت سریال رو در هر دو لیستنر چک می کنم
Purchase pur = inventory.getPurchase(SKU_PREMIUM);
mIsPremium = (inventory.hasPurchase(SKU_PREMIUM) && pur.getDeveloperPayload().equals(paylod));
if (mIsPremium ){
.
.
.
.
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .