تنظیمات پروژه Unity



جهت راه اندازی دکان در اپلیکیشن شما، ابتدا باید مراحل زیر را در پروژه خود انجام دهید.


گام 1: اضافه کردن کتابخانه


فایل dokan-api-1.2.4.unitypackage را در پروژه خود import کنید.



گام 2: آپدیت فایل Manifest


دسترسی‌های زیر را به فایل AndroidManifest.xml اضافه کنید.

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.VIBRATE"/>

در بخش application از فایل منیفست برنامه، activity زیر را اضافه کنید.

<activity
	android:name="com.rahnema.dokan.sdk.activity.PurchaseActivity"
	android:hardwareAccelerated="true"
	android:screenOrientation="portrait"
	android:windowSoftInputMode="adjustResize" />

در بخش application از فایل منیفست برنامه، meta-data زیر را اضافه کنید و آن را با مقدار کلید دکان پر کنید.

<meta-data android:name="dokanToken" android:value="..." />


گام 3: امکان‌پذیری استفاده از دکان


کتابخانه‌ی دکان برای عملکرد صحیح به Android 4.4W (سطح 20) یا بالاتر نیاز دارد. از این رو لازم است برای اندرویدهای قدیمی‌تر دکمه‌ی دکان نمایش داده نشود.

ابتدا برای دسترسی به کدهای دکان از تکه کد زیر استفاده کنید

using DokanSDK;

برای بررسی امکان استفاده از دکان از کد زیر استفاده کنید. درصورتی که دکان قابل استفاده باشد، دکمه را با کاربر نشان دهید؛ در غیر این صورت دکمه را مخفی کنید.

if (Dokan.IsAvailable())
{
	ShowDokanButton();
}
else
{
	HideDokanButton();
}


گام 4: شروع کار با SDK دکان


کتابخانه‌ دکان برای شروع کار نیاز به initialize شدن در ابتدای برنامه دارد.

ابتدا برای دسترسی به کدهای دکان از تکه کد زیر استفاده کنید

using DokanSDK;

برای این کار باید تابع زیر را در یکی از اسکریپت های برنامه ی خود که در ابتدای برنامه اجرا می شود فراخوانی کنید.

if (Dokan.IsAvailable())
{
	Dokan.Init();
}


گام 5: تعریف دکمه خرید


ابتدا برای دسترسی به کدهای دکان از تکه کد زیر استفاده کنید

using DokanSDK;

یک دکمه برای ورود به صفحه‌ی خرید دکان در برنامه‌ی خود قرار دهید و کد زیر را به رویداد کلیک دکمه متصل کنید.

if (Dokan.IsAvailable())
{
	Dokan.StartPurchase(OnCompleteCallback, PurchaseCancelCallback);
}

و callbackها به صورت delegateهای زیر هستند.

public delegate void PurchaseOnCompleteCallback(string token, int status);
public delegate void PurchaseCancelCallback();


گام 6: تحویل سکه به کاربر


برای اینکار باید ابتدا وضعیت سفارش را بررسی کنید و اگر سفارش موفق بود به اندازه سکه ای که از سمت دکان به شما اعلام می شود به کاربر سکه اضافه کنید.

این فرآیند در بخش PurchaseOnCompleteCallback باید انجام شود.

if (Dokan.IsAvailable())
{
	Dokan.CheckOrder(token, CheckOrderCallback, CheckOrderErrorCallback);
}

و callbackها به صورت delegateهای زیر هستند.

public delegate void CheckOrderCallback(OrderInfo orderInfo);
public delegate void CheckOrderErrorCallback();