ورود با بازار و حافظهی درون برنامهای
مقدمه
با استفاده از این کتابخانه بدون نیاز به پیادهسازی in App Login، همیشه به کاربر خود دسترسی داشته باشید؛ دیگر نیازی به ارسال پیامک یا ایمیل برای authenticate
کردن کاربر ندارید؛ همه چیز را به بازار بسپارید.
همچنین میتوانید برای همهی کاربران خود یک User Id
یکتا برای همهی حالات ( پاک کردن دیتای برنامه، تعویض دستگاه و …) در نظر گرفته یا از فضای ذخیرهسازی کمینهی بازار (Bazaar in App Storage) برای کاربران خود استفاده کنید.
در مرحلهی اول، بازار به ازای هرکاربر برنامه/بازی، به شما یک user Id
یکتا و پایدار میدهد. در آینده شما میتوانید با دریافت permission
از کاربر، به اطلاعات متفاوتی دسترسی داشته باشید.
برای اطلاعات بیشتر به این صفحه مراجعه کنید.
پیادهسازی ورود با بازار
برای شروع کار با BazaarAuth
، نیاز دارید تا Dependency
آن را به فایل build.gradle
اضافه کنید:
dependencies {
implementation "com.github.cafebazaar.CafeBazaarAuth:auth:[latest_version]"
}
برای ثبتنام کاربر-login- یک object
از BazaarSignIn
بسازید:
val signInOption = BazaarSignInOptions.Builder(SignInOption.DEFAULT_SIGN_IN).build()
client = BazaarSignIn.getClient(
context,
signInOption
)
بعد از ساختن این object
میتوانید به وسیلهی روش زیر، کاربر را به صفحهی لاگین با بازار هدایت کنید:
val intent = client.getSignInIntent()
startActivityForResult(intent, REQ_CODE)
سپس برای parse
کردن دیتا از بازار و دریافت اطلاعات کاربر میتوانید از روش زیر در onActivityResult
استفاده کنید :
val account = BazaarSignIn.getSignedInAccountFromIntent(intent)
در صورتی که کاربر اجازهی دسترسی به برنامهی شما را داده باشد، account
خالی – null- نیست و شما میتوانید دیتا را از روی مدل account
بخوانید.
در حالتی که کاربر به تازگی اجازهی دسترسی به برنامهی شما را داده باشد، شیوهی زیر را برای دسترسی به آخرین دیتا بکار بگیرید:
BazaarSignIn.getLastSignedInAccount(this, this,BazaarSingInCallback { response ->
val account = response?.data
updateUI(account)
})
برای دریافت اطلاعات با روش sync
، از شیوهی زیر استفاده کنید:
val accountResponse = BazaarSignIn.getLastSignedInAccountSync(this, this)
نکته :
امکان استفاده از روش بالا درmain thread
وجود ندارد.
برای نمایش دکمهی Bazaar login
از view زیر در XML
خود استفاده کنید.
<com.farsitel.bazaar.auth.widget.LoginButton
android:id="@+id/loginButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:size="NORMAL" />
App size
میتواند NORMAL یا BIG باشد.
مشخصات دکمهی ورود با بازار
Color code: #0EA960
Login with Bazaar button attributes
Button text: “ورود با بازار”
Button text color: #FFFFFF
Curvature: 5dp
Button hight: 48db
order: 1dp #09663A
Bazaar Logo size: 30dp
نکنه:
شما میتوانید بر اساس فضا و طراحی gameplay برنامه یا بازی خود، دکمهی دلخواه خود را داشته باشید.
حافظهی درون برنامهای بازار
با «حافظهی درون برنامهای بازار» بدون نیاز به تهیهی سرور و صرف هزینههای فنی، ۱۰کیلوبایت فضای اختصاصی برای هر کاربر برنامهی خود در اختیار دارید؛ در نتیجه شما میتوانید امتیازها، ایمیل، مرحله و … کاربر خود را روی سرورهای ابری بازار ذخیره کرده و به آسانی بازخوانی کنید.
با «حافظهی درون برنامهای بازار»، تجربهی کاربری در حالتهایی مثل پاک کردن و نصب مجدد برنامه، تعویض دستگاه و … ، حفظ میشود.
برای save
کردن اطلاعات، از روش زیر استفاده کنید:
BazaarStorage.saveData(
context = this@MainActivity,
owner = this@MainActivity,
data = "saved data".toByteArray(),
callback = BazaarStorageCallback { savedResponse ->
dataTV.text = savedResponse?.data?.toReadableString()
}
)
برای تبدیل ByteArray response
به string
از تابع toReadableString
استفاده کنید.
برای دریافت اطلاعات save
شده، شیوهی زیر را بکار ببرید:
BazaarStorage.getSavedData(
context = this@MainActivity,
owner = this@MainActivity,
callback = BazaarStorageCallback { response ->
dataTV.text = response?.data?.toReadableString()
}
)
دقت کنید که برای جلوگیری از phishing
و دزدی اطلاعات، با روش زیر از نصب بودن نسخهی اصلی بازار در گوشی کاربر مطمئن شوید:
BazaarClientProxy.isBazaarInstalledOnDevice(context)
برای اطمینان از نصب بودن نسخهای از بازار روی دستگاه کاربر که login in App Storage
را پشتیبانی میکند، از روش زیر استفاده کنید:
BazaarClientProxy.isNeededToUpdateBazaar(context)
در صورتی که کاربر برنامهی بازار را نصب نداشته باشد، شیوهی زیر را بکار بگیرید:
BazaarClientProxy.showInstallBazaarView(context)
اگر نسخهی برنامهی بازار کاربر، نیاز به بروزرسانی دارد، از روش زیر استفاده کنید:
BazaarClientProxy.showUpdateBazaarView(context)
برای اطلاعات بیشتر به این صفحه مراجعه کنید.
به مطالب ارائه شده چه امتیازی میدهید؟
اگر در مورد محتوا نظر یا پیشنهادی دارید لطفا برای ما بنویسید.
زمان انتشار: ۱۴۰۰-۰۳-۲۸ ۱۵:۵۲
آخرین بهروزرسانی: ۱۴۰۱-۱۲-۰۳ ۱۲:۰۳