پیکربندی در شروع اپلیکیشن

configure در Kotlin و Flutter 0.2.1 فقط کلید عمومی و شناسه اختیاری مشتری می‌گیرد؛ نمونه مهمان، کاربر واردشده و وب.

پیکربندی را یک بار از مالک نشست در شروع اپ انجام دهید. تا موفقیت آن، خرید را فعال نکنید. configure را در build ویجت، بدنه Composable یا با هر بار بازشدن صفحه تکرار نکنید.

ورودی موبایل

مقدارالزامتوضیح
apiKeyاجباریکلید عمومی همان برنامه در اینپی‌فای؛ نه کلید محرمانه REST
appUserIdentifierاختیاری؛ پیش‌فرض nullشناسه پایدار حسابی که اپ شما احراز هویت کرده است

SDK نسخه اپ را از متادیتای میزبان تشخیص می‌دهد و سرور فروشگاه و کلید RSA را از روی برنامه تعیین می‌کند. market، marketKey، country، appVersion، forceVersion یا انتخاب پروتکل ورودی عمومی configure موبایل نیستند. RSA فروشگاه را در تنظیم برنامه پنل ثبت کنید.

Flutter: مهمان یا حساب موجود

این‌ها دو حالت جایگزین‌اند، نه دو فراخوانی پشت‌سرهم در هر شروع:

import 'package:inappify_sdk/inappify_sdk.dart';

Future<void> configureAlternatives() async {
  // Guest/retained session:
  await InappifySdk.configureResult(apiKey: 'YOUR_PUBLIC_APP_KEY');
  // Alternative when host authentication already established this user:
  await InappifySdk.configureResult(
    apiKey: 'YOUR_PUBLIC_APP_KEY', appUserIdentifier: 'customer_123',
  );
}

قبل از عملیات از main، WidgetsFlutterBinding.ensureInitialized() را اجرا کنید. متد ساده configure(...) bool می‌دهد؛ configureResult(...) خطا و snapshot را نگه می‌دارد. اگر شبکه یا بازیابی هویت زمان‌بر است، صفحه شروع و وضعیت تلاش مجدد داشته باشید.

Kotlin: شناسه اختیاری

import com.inappify.sdk.*

suspend fun configureMobile(
    client: InappifyV2Client,
    apiKey: String,
    customerId: String? = null,
): InappifyResult<Unit> = client.configure(
    InappifyOptions(apiKey = apiKey, appUserIdentifier = customerId)
)

برای مهمان customerId را ندهید؛ برای حساب معتبر از قبل، همان شناسه پایدار را بدهید. InappifyResult.Success و Failure را بررسی کنید. ایجاد کلاینت مستقل از پیکربندی است و برای هر تغییر حساب کلاینت تازه نسازید.

حذف شناسه، خروج نیست

اگر شناسه نفرستید، SDK می‌تواند هویت ذخیره‌شده قبلی را بازیابی کند؛ آن هویت ممکن است واردشده باشد. در نبود نشست قبلی، Anonymous ایجاد می‌شود. پیشوند ناشناس را خودتان نسازید و در هر اجرا شناسه تازه تولید نکنید. برای تغییر حساب از logIn و logOut استفاده کنید.

پیش‌واکشی و بازیابی

SDK پیش‌واکشی آفرینگ و کار خودکار شروع را مدیریت می‌کند. برای گرم‌کردن کش، getOfferings را در Application.onCreate اندروید فراخوانی نکنید. موفقیت configure الزاماً به معنی پایان همه بازیابی‌ها نیست؛ نتیجه خرید یا snapshot بعدی را از مسیر مناسب دنبال کنید.

وب قرارداد جدا دارد

در JavaScript، InAppify.configure({apiKey, country?, appVersion?, ...}) یک client برمی‌گرداند؛ appVersion نسخه میزبان است. کلید باید Public Web App Key باشد. Flutter Web نیز ابتدا فراهم‌کننده JS می‌خواهد. ورود حساب شناخته‌شده با شناسه خالی یا ثابت کلاینت انجام نمی‌شود؛ Identity Ticket یا OTP لازم است.

configureAuthenticatedWebSessionResult فلاتر ورودی‌های مخصوص وب مثل ticket provider، شناسه مورد انتظار و appVersion دارد؛ این‌ها را به configure موبایل اضافه نکنید.

هویت مشتری · تفاوت پلتفرم‌ها