مستندات SDK اندروید صرافی رمزارز
Android SDK Crypto Exchange Docs
نسخه 1.0.0 - 05/17/2021
فهرست مطالب
1.برای استفاده از SDK یوآیدی ابتدا تغییرات زیر را در پروژهی خود اعمال کنید:
1.1. فایل uid_sdk.rar را در پوشه libs مربوط به ماژول app کپی کنید.
1.2. در فایل build.gradle مربوط به ماژول app در بخش {}android مقادیر زیر را طبق نمونه تکمیل کنید.
نکته : توجه داشته باشید این تغییر نسخه جاوا ماژول شما را به java 8 ارتقا میدهد.
defaultConfig {
minSdkVersion 16
vectorDrawables.useSupportLibrary = true
}
compileOptions {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
buildFeatures {
viewBinding = true
}
1.3. در فایل بالا ، بخش {}dependencies ، کتابخانههای پایین را اضافه کنید:
implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'com.google.android.material:material:1.4.0'
implementation 'com.github.bumptech.glide:glide:4.12.0'
implementation "androidx.core:core-ktx:1.7.0"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.5.31"
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation("androidx.multidex:multidex:2.0.1")
implementation(name:'uid_sdk', ext:'aar')
1.4. در فایل build.gradle مربوط به project مطابق زیر تغییرات را اعمال کنید:
allprojects {
repositories {
.
.
.
google()
jcenter()
maven { url "https://jitpack.io" }
maven { url "https://maven.google.com" }
flatDir {
dirs 'libs'
}
}
}
1.5. سپس فرمان sync gradle را اجرا کنید
برای هدایت کاربر به صفحهی ورود یوآیدی و شروع فرایند احراز هویت در اپ خود مطابق نمونه از کد زیر استفاده کنید:
String businessId;
Object meta;
Intent intent = UidCryptoSdk.getUidIntent( businessId, meta, context );
startActivityForResult(intent, 123);
Parameter | Type | Description |
context | Context | یک context غیر null از Activity فعلی |
businessId | String | شناسهای که از پشتیبانی یوآیدی دریافت کردهاید |
meta | Object | اطلاعاتی که توسط اپ میزبان به SDK فرستاده شده و در هنگام دریافت Result از سرور یوآیدی ، به همان شکل دریافت خواهد شد |
برای بررسی نتیجه احراز هویت در اپ خود میتوانید متد زیر را در Activity مطابق نمونه بازنویسی کنید:
@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 123) {
switch (resultCode){
case UidCryptoSdk.RESULT_OK:
String clientToken = data.getStringExtra("clientToken");
case UidCryptoSdk.RESULT_CAMERA_NOT_SUPPORTED:
case UidCryptoSdk.RESULT_PERMISSIONS_NOT_GRANTED:
case UidCryptoSdk.RESULT_UNKNOWN_ERROR:
case UidCryptoSdk.RESULT_ALREADY_APPROVED:
case UidCryptoSdk.RESULT_MAX_TRY_EXCEEDED:
case UidCryptoSdk.RESULT_REGISTER:
case UidCryptoSdk.RESULT_PERSONAL_INFO:
case UidCryptoSdk.RESULT_ADDRESS:
case UidCryptoSdk.RESULT_BANK:
case UidCryptoSdk.RESULT_LIVENESS:
case UidCryptoSdk.RESULT_IDENTIFY_WAITING:
}
}
}
Description | Value | ResultCode |
پایان فرایند احراز هویت | 1 | RESULT_OK |
دوربین پشتیبانی نمیشود | 2 | RESULT_CAMERA_ NOT_SUPPORTED |
دسترسی دوربین به SDK داده نشد | 3 | RESULT_PERMISSIONS_ NOT_GRANTED |
خطای ناشناخته | 4 | RESULT_UNKNOWN _ERROR |
کاربر قبلا احراز هویت شده است | 5 | RESULT_ALREADY _APPROVED |
درخواست بیش از حد مجاز | 6 | RESULT_MAX_ TRY_EXCEEDED |
کاربر در مرحلهی کد ملی و شماره موبایل ، فرایند را لغو کرده | 7 | RESULT_REGISTER |
کاربر در مرحلهی ثبت اطلاعات فردی فرایند را لغو کرده | 8 | RESULT_PERSONAL_ INFO |
کاربر در مرحلهی ثبت آدرس فرایند را لغو کرده | 9 | RESULT_ADDRESS |
کاربر در مرحلهی ثبت اطلاعات بانکی فرایند را لغو کرده | 10 | RESULT_BANK |
کاربر در مرحلهی ویدئو لایونس فرایند را لغو کرده | 11 | RESULT_LIVENESS |
کاربر فرایند احراز هویت را طی کرده است و منتظر دریافت نتیجهی احراز هویت خود میباشد | 12 | RESULT_IDENTIFY_ WAITING |
1.6. تنظیمات ProGuard
-keep class ir.uid.mobile.android.UidCryptoSdk {
**[] $VALUES;
public *;
}
-keepclassmembers,allowobfuscation class * {
@com.google.gson.annotations.SerializedName ;
}
-keep class com.github.mikephil.charting.** { *; }
-keepclasseswithmembernames class * {
native ;
}