En

خرید درون برنامه ای Cordova و PhoneGap


مقدمه

در این مستند با نحوه‌ی پیاده‌سازی سرویس پرداخت درون‌برنامه‌ای مایکت برای برنامه‌های تحت Cordova و PhoneGap آشنا می‌شوید. تمام مراحلی که در این مستند ذکر می‌شوند در اپلیکیشن نمونه پیاده‌‌سازی شده‌ است. این برنامه را می‌توانید از اینجا دانلود نمایید.

دانلود و نصب Plugin

جهت پیاده‌سازی In App Billing در اپلیکیشن‌های Cordova/PhoneGap کافیست پلاگین myket-iab-cordova-plugin را از اینجا دانلود نمایید. حال کافی است پلاگین را در شاخه plugins برنامه‌ی خود قرار دهید. اگر پلتفورم Android را نصب نکرده‌اید کافیست با دستور زیر این پلتفورم و پلاگین مایکت را با هم نصب نمایید:

cordova platform add android

ولی اگر این پلتفورم را از قبل نصب کرده‌اید و قصد remove کردن آن‌ را ندارید کافیست دستور زیر را اجرا نمایید تا پلاگین In App Billing مایکت بر روی اپلیکیشن شما نصب شود:

plugman install --platform android --project [TARGET-PATH] --plugin [PLUGIN-PATH]/platforms/android
								where
								[TARGET-PATH] = path to folder containing your cordova/phonegap project
								[PLUGIN-PATH] = path to folder containing this plugin
							

بعد از نصب این پلاگین شما می‌توانید از کلاس platforms/android/src/ir/myket/example/iab/InAppBillingPlugin.java برای ثبت BASE64_ENCODED_PUBLIC_KEY که از پنل توسعه‌دهندگان مایکت دریافت کرده‌اید استفاده نمایید.

نحوه استفاده

ابتدا در فایل index.html این خط را اضافه کنید:

<script type="text/javascript" src="inappbilling.js"></script>

مانند برنامهٔ نمونه، می‌توانید توابع زیر را پیاده‌سازی کنید:

  • نصب سرویس پرداخت درون‌برنامه‌ای مایکت باید قبل از هر تابع دیگری این تابع صدا زده شود تا از وضعیت نصب بودن مایکت و پشتیبانی کردنش از این سرویس اطلاع پیدا کنیم:

    inappbilling.init(successHandler, errorHandler, {showLog:true});
  • خرید کالایی با کلیدی مانند "gas":

    inappbilling.buy(successHandler, errorHandler,"gas");
  • لیست کردن تمام خریدها:

    inappbilling.getPurchases(successHandler, errorHandler);
  • اعلام مصرف شدن کالای خریداری شده:

    inappbilling.consumePurchase(successHandler, errorHandler, "gas");
  • خرید اشتراک:

    inappbilling.subscribe(successHandler, errorHandler,"infinite_gas");
  • گرفتن جزئیات کالاها:

    inappbilling.getProductDetails(successHandler, errorHandler, ["gas","infinite_gas"]);
  • گرفتن تمام کالاهای موجود:

    inappbilling.getAvailableProducts(successHandler, errorHandler);

بعد از پیاده‌سازی مناسب توابع inappbilling و یا کپی کردن این توابع از اپلیکیشنmyket-iab-cordova-sample پرداخت درون‌برنامه‌ای مایکت به طور کامل بر روی برنامه‌ٔ شما کار خواهد کرد.

کلیه حقوق متعلق به مایکت می باشد.