پیاده‌سازی صدور مجوز در B4A

برای اضافه کردن کتابخانه Myket licensing در B4A کافی است، مراحل زیر را انجام دهید:

۱. کتابخانه Myket licensing در B4A را از اینجا دریافت نمایید.

۲. دو فایل MyketLicensing.jar و MyketLicensing.xml را در پوشه کتابخانه‌های Basic4Android کپی نمایید.

۳. در پنل سمت راست B4A، تب libs را انتخاب و Refresh نمایید تا کتابخانه MyketLicensing نمایان شود.

۴. در Activity_Create کد زیر را وارد کنید:

Sub Activity_Create(FirstTime As Boolean)
    'Do not forget to load the layout file created with the visual designer. For example:
    'Activity.LoadLayout("Layout1")
   Dim lc As LicenseChecker
   Dim p As PhoneId
   Dim SALT As String = "32857463957843298562"
   Dim publicKey As String = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCmQ7Akv2d49KQXaXwMkuQFoIyQyKT4FXL3OUe+CxYlfQZRJr9+oHeBtmvqIojj0U/UGuVtghsHX8vBgqW4t4UeiKaQDzm+GNgfDSGktjoFZBQLT4MLp5vJzOK2Xuh0GRcUFW6aXhsZY5EJK4UFzYwbRu4aNHdurfCCycke8o/SywIDAQAB"
   lc.Initialize("lc", p.GetDeviceId, publicKey, SALT.GetBytes("UTF8"))
   lc.SetVariableAndValue("test_1", "some secret value")
   lc.CheckAccess
End Sub

دقت کنید که در متغییر publicKey مقدار کلید عمومی که از پنل مایکت دریافت نموده‌اید را وارد کنید.

۵. پس از اجرا شدن کد lc.CheckAccess سرویس Myket licensing یکی از متد‌های lc_Allow، lc_DontAllow یا lc_Error را صدا می‌زند. در صورتی که متد lc_Allow صدا زده شد، کاربر مجاز به استفاده از برنامه‌ی شما است، در صورتی که متد lc_DontAllow صدا زده شد، کاربر مجاز به استفاده از برنامه‌ی شما نیست و باید به او بگویید که برنامه را از مایکت خریداری نماید. در صورتی هم که متد lc_Error صدا زده شد، احتمالا مشکلی در برقراری ارتباط با سرویس Myket licensing به وجود آمده است که باید برای کاربر دکمه‌ی «سعی مجدد» را نمایان کنید و دوباره کد lc.CheckAccess را فراخوانی نمایید:

Sub lc_Allow
   Log("Allow")
   'Now user can use you application
End Sub
Sub lc_DontAllow
   Log("DontAllow")
   ToastMessageShow("Access denied", True)
   Activity.Finish
End Sub
Sub lc_Error (ErrorCode As String)
   Log("error: " & ErrorCode)
   ToastMessageShow("Connection error. Please try again", True)
   Activity.Finish
End Sub

برنامه‌ی نمونه

می‌توانید پروژه نمونه را از اینجا دانلود کنید و یا روی GitHub ببینید.
 

Was this article helpful?
Dislike 0
قبلی: پیاده‌سازی صدور مجور در Cordova و PhoneGap