نیازمندیها
از نصب jdk مطمئن باشید و مسیر پوشه Gradle و همینطور پوشه JDK را در path سیستمعامل خود قرار دهید تا در روند اجرای دستورات cordova مشکلی پیش نیاید.
مراحل اضافه کردن پلاگین
مرحله اول: ابتدا در پنل توسعهدهندههای مایکت packagename برنامه خود را رزرو نمایید.
مرحله دوم: اگر پروژه جدیدی را میخواهید شروع کنید ابتدا با دستورات زیر فایلهای اولیه خود را بسازید و اجرا کنید. اگر قصد اضافه کردن پرداخت به برنامه خود را دارید به مرحله بعدی بروید.
Cordova create trivial com.example.android.trivialdrivesample trivial Cordova create <Name> <PackageName> <Name>
دقت کنید که اسم packagename شما همان باشد که در پنل مایکت اضافه کردید. حالا platform اندروید را اضافه کنید.
Cordova platform add android
مرحله سوم: برنامه را اجرا کنید تا از اجرای بدون نقص آن مطمئن شوید.
Cordova run android
مرحله چهارم: حال برای اضافه کردن پرداخت درونبرنامهای کافی است plugin را به برنامه خود اضافه نمایید که به دو روش قادر به انجام آن هستید.
راه اول: با استفاده از Github
$ cordova plugin add https://github.com/komeilkamal/iab-cordova --variable BILLING_KEY="<YOUR_PUBLIC_KEY>"
public_key را از پنل مایکت بگیرید.
راه دوم: دانلود مستقیم
میتوانید فایل [cordova-plugin.zip] را دانلود کرده و با استفاده از دستورات زیر آن را نصب کنید.
Npm install -g plugman plugman install --platform android --project [TARGET-PATH]\platforms\android –plugin [PLUGIN-PATH] [TARGET-PATH] = path to folder containing your cordova/phonegap project [PLUGIN-PATH] = path to folder containing this plugin
به عنوان مثال
plugman install --platform android --project C:\Users\USER\Cordova\trivial\platforms\android --plugin C:\Users\USER\Cordova\Cordova-IAB-master
بعد از نصب این پلاگین شما میتوانید از کلاس platforms/android/src/ir/myket/example/iab/InAppBillingPlugin.java برای ثبت BASE64_ENCODED_PUBLIC_KEY که از پنل توسعهدهندگان مایکت دریافت کردهاید استفاده نمایید.
اکنون شما قادر به استفاده از پرداخت درونبرنامهای هستید.
نحوه استفاده
ابتدا فایل های JS که در index.html هستند را آپدیت کنید.
<script src="cordova.js"></script> <script src="js/index.js"></script> <script 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.getProductDetails(successHandler, errorHandler, ["gas","infinite_gas"]);
گرفتن تمام کالاهای موجود:
inappbilling.getAvailableProducts(successHandler, errorHandler);
برای اطلاعات بیشتر میتوانید نمونه (trivial drive) را از اینجا دانلود کنید.