انتقل إلى المحتوى

مرجع دوال SDK ونتائجها بتسع لغات

تصفح دوال Launch العامة ومعاملاتها ونتائجها وأخطائها حسب اللغة. تتبع المعاملات الاختيارية والقيم الافتراضية إصدار المصدر المطابق.

تشرح الصفحة محولات حساب Launch. راجع مرجع SDK الرسمي لواجهات التفويض والقياس والعمل دون اتصال في Licentivo.

Licentivo SDK · مرجع الدوال

حالة الجلسة تصف الحساب فقط؛ احم كل تنفيذ عمل بفحص الوظيفة.

التخزين الافتراضي في الذاكرة. يتطلب تذكر الدخول تخزينًا دائمًا محميًا منفصلًا عن ذاكرة SDK.

تتطلب الاستعادة تأكيد الحساب عبر الإنترنت. لا يختار Launch تفويضًا دون اتصال عند فشل الشبكة؛ يتحقق SDK الرسمي منه.

Go

المصدر المطابق · v0.1.6 · application.go · runtime.go · client.go · store.go

الأخطاء والإخفاقات: error != nil; errors.Is(err, launchclient.ErrNoSession); errors.As(err, &apiError)

Connect
Connect(merchantOrigin, productID, licentivoProductID string, trustedKeys map[string]string, options Config) → (*Application, error)
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
(*Application, error)

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.Login
Login(ctx context.Context, email, password string) → (State, error)
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
(State, error)

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Application.Restore
Restore(ctx context.Context) → (State, error)
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
(State, error)

يعيد حالة الحساب؛ تعني ErrNoSession أو NO_SESSION عدم وجود جلسة محفوظة. عالج الأخطاء الأخرى منفصلة.

Application.RunFeature
RunFeature(feature string, action func() error) → error
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.Logout
Logout(ctx context.Context) → error
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.ReleaseDevice
ReleaseDevice(ctx context.Context) → error
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.Close
Close() → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

NewApplication
NewApplication(config Config) → (*Application, error)
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
(*Application, error)

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

NewApplicationFromFiles
NewApplicationFromFiles(launchPath, productPath string, options Config) → (*Application, error)
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
(*Application, error)

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

LoadPublicConfig
LoadPublicConfig(path string) → (PublicConfig, error)
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • path: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
(PublicConfig, error)

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

NewRuntime
NewRuntime(product ProductConfig, runtime RuntimeConfig) → (Runtime, error)
الغرض
ينشئ محول SDK الرسمي للتكامل المتقدم؛ يمرر إثبات الهوية في الذاكرة فقط.
المعاملات
  • product, runtime: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
(Runtime, error)

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

New
New(origin string, allowLocalHTTP bool) → (*Client, error)
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • allowLocalHTTP: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
(*Client, error)

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Client.WithToken
WithToken(token string) → *Client
الغرض
يعيد نسخة عميل تحمل رمز الحساب المحدد، للخوادم الخلفية الموثوقة.
المعاملات
  • token: رمز جلسة Launch، تعيده فقط واجهات الجلسات المنخفضة المستوى أو التخزين المشفر.
القيمة المعادة
*Client

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Client.Login
Login(ctx context.Context, email, password string) → (User, error)
الغرض
يصادق الحساب ويعيد تفاصيله أو جلسته، دون تشغيل محرك التفويض.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
(User, error)

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Client.LoginSession
LoginSession(ctx context.Context, email, password string) → (Session, error)
الغرض
يصادق الحساب ويعيد تفاصيله أو جلسته، دون تشغيل محرك التفويض.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
(Session, error)

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Client.CurrentUser
CurrentUser(ctx context.Context) → (User, error)
الغرض
يستعلم عن الحساب الحالي؛ النجاح لا يسمح بالوظائف المحمية.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
(User, error)

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Client.Identity
Identity(ctx context.Context, product, environment string) → (Identity, error)
الغرض
يحصل على إثبات هوية أحادي الاستخدام وسياق توجيه عام؛ ليس ترخيصًا أو إذن وظيفة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • product: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
(Identity, error)

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Client.SignOut
SignOut(ctx context.Context) → error
الغرض
يلغي جلسة Launch ويمسح رمز العميل؛ لا يحل محل خروج الجهاز عبر SDK الرسمي.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Client.Credential
Credential(ctx context.Context, product, environment string) → (Credential, error)
الغرض
واجهة قديمة محفوظة؛ أزيل بروتوكول بيانات الترخيص الطويلة الأجل ولذلك تفشل الطلبات. استخدم Application.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • product: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
(Credential, error)

يفشل دائمًا؛ انتقل إلى تبادل هوية الحساب.

Client.CredentialWithRetry
CredentialWithRetry(ctx context.Context, product, environment string, policy RetryPolicy) → (Credential, error)
الغرض
واجهة قديمة محفوظة؛ أزيل بروتوكول بيانات الترخيص الطويلة الأجل ولذلك تفشل الطلبات. استخدم Application.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • product: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • policy: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
(Credential, error)

يفشل دائمًا؛ انتقل إلى تبادل هوية الحساب.

NewSystemSessionStore
NewSystemSessionStore(directory string) → (SessionStore, error)
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
(SessionStore, error)

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

ProtectDirectory
ProtectDirectory(directory string) → error
الغرض
يقصر الوصول للدليل على مستخدم Windows الحالي أو صلاحيات خاصة على المنصات الأخرى.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

ServiceUnavailable
ServiceUnavailable(err error) → bool
الغرض
يصنف عدم توفر الخدمة المؤقت؛ لا يسمح ذلك بالتفويض دون اتصال.
المعاملات
  • err: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
bool

يعيد تصنيفًا منطقيًا، وليس تفويضًا.

APIError.Error / TransportError.Error
Error() → string
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
string

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

TransportError.Unwrap
Unwrap() → error
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
error

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

MemoryStore.Load / SessionStore.Load
Load(ctx context.Context, key string) → ([]byte, error)
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
([]byte, error)

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

MemoryStore.Save / SessionStore.Save
Save(ctx context.Context, key string, value []byte) → error
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

MemoryStore.Delete / SessionStore.Delete
Delete(ctx context.Context, key string) → error
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.Start
Start(ctx context.Context, onError func(error)) → error
الغرض
يشغل التحقق والصيانة الخلفية لـ SDK الرسمي؛ للدخول وحماية الوظائف واجهات منفصلة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
  • onError: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.RunFeature
RunFeature(feature string, action func() error) → error
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.Deactivate
Deactivate(ctx context.Context) → error
الغرض
ينفذ خروج الجهاز عبر SDK الرسمي؛ يلغي التطبيق جلسة حساب Launch بصورة منفصلة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
error

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.Close
Close() → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

Python

المصدر المطابق · v0.1.6 · client.py

الأخطاء والإخفاقات: APIError.code / .status / .retry_after / .retryable; ValueError; SDK exceptions

Application.connect
Application.connect(merchant_origin, product_id, licentivo_product_id, trusted_keys, environment="live", **kwargs) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.login
login(email, password, *, pending_attempts=3) → Application (self)
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
  • pending_attempts: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application (self)

يعيد نسخة التطبيق نفسها، لا تفاصيل الحساب ولا نتيجة تفويض.

Application.restore
restore() → bool
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
القيمة المعادة
bool

تعني true نجاح الاستعادة وfalse عدم وجود جلسة قابلة للاستعادة. الرفض والانتهاء وفشل الشبكة أخطاء.

Application.run_feature
run_feature(name, action) → T
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
T

يعيد نتيجة استدعاء العمل؛ تبلغ إخفاقات التفويض واستثناءات العمل كأخطاء.

Application.logout
logout() → bool
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
القيمة المعادة
bool

تؤكد true الخروج؛ وتعني false أن خروج الحساب البعيد أو إلغاء الجهاز معلق. قد تحدث أخطاء تخزين أيضًا.

Application.release_device
release_device() → bool
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
القيمة المعادة
bool

تؤكد true الخروج؛ وتعني false أن خروج الحساب البعيد أو إلغاء الجهاز معلق. قد تحدث أخطاء تخزين أيضًا.

Application.close
close() → None
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
None

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

Application.__enter__ / __exit__
with Application.connect(...) as app: ... → Application / None
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
Application / None

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Application.__init__
Application(origin, product_id, product_config, environment="live", store=None, runtime_factory=None, cache_dir=None, sleep=time.sleep, opener=None) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • product_config: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.from_files
Application.from_files(launch_config, product_config, **kwargs) → Application
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launch_config, product_config: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

MemoryStore
MemoryStore() → MemoryStore
الغرض
ينشئ مخزن جلسات صالحًا داخل العملية الحالية فقط.
القيمة المعادة
MemoryStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

WindowsDPAPIStore
WindowsDPAPIStore(directory=None) → WindowsDPAPIStore
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
WindowsDPAPIStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

APIError
APIError(code, status=0, retry_after=0) → APIError
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
المعاملات
  • code, status, retry_after: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
APIError

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

MemoryStore.load / WindowsDPAPIStore.load
load(key) → bytes | None
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
bytes | None

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

MemoryStore.save / WindowsDPAPIStore.save
save(key, value) → None
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
None

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

MemoryStore.delete / WindowsDPAPIStore.delete
delete(key) → None
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
None

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

C#

المصدر المطابق · v0.1.6 · Application.cs · SessionStore.cs

الأخطاء والإخفاقات: await Task / ValueTask; LaunchException.Code / .Status / .RetryAfterSeconds / .Retryable

Application.Connect
Application.Connect(string merchantOrigin, string productId, string licentivoProductId, Dictionary<string,string> trustedKeys, string environment="live", ISessionStore? store=null, string? cacheDirectory=null) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • store, cacheDirectory: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.Login
Login(string email, string password, int pendingAttempts=3, CancellationToken ct=default) → Task
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
  • pendingAttempts: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.Restore
Restore(CancellationToken ct=default) → Task<bool>
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Task<bool>

تعني true نجاح الاستعادة وfalse عدم وجود جلسة قابلة للاستعادة. الرفض والانتهاء وفشل الشبكة أخطاء.

Application.RunFeature
RunFeature(string feature, Func<Task> action) → Task
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.Status
Status() → AuthorizationStatus? (null: runtime absent)
الغرض
يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.
القيمة المعادة
AuthorizationStatus? (null: runtime absent)

يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.

Application.Logout
Logout(CancellationToken ct=default) → Task
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.ReleaseDevice
ReleaseDevice(CancellationToken ct=default) → Task
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.DisposeAsync
DisposeAsync() → ValueTask
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
ValueTask

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Application
Application(string origin, string productId, Config productConfig, string environment="live", ISessionStore? store=null, string? cacheDirectory=null, HttpMessageHandler? handler=null, Func<Config,IRuntime>? runtimeFactory=null) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productId: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • productConfig: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.FromFiles
Application.FromFiles(string launchPath, string productPath, ISessionStore? store=null) → Application
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

MemoryStore
new MemoryStore() → MemoryStore
الغرض
ينشئ مخزن جلسات صالحًا داخل العملية الحالية فقط.
القيمة المعادة
MemoryStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

WindowsDPAPIStore
new WindowsDPAPIStore(string? directory=null) → WindowsDPAPIStore
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
WindowsDPAPIStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

LaunchException
new LaunchException(string code, int status=0, int retryAfterSeconds=0) → LaunchException
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
المعاملات
  • code, status, retryAfterSeconds: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
LaunchException

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

ISessionStore.Load / MemoryStore.Load / WindowsDPAPIStore.Load
Load(string key) → byte[]?
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
byte[]?

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

ISessionStore.Save / MemoryStore.Save / WindowsDPAPIStore.Save
Save(string key, byte[] value) → void
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

ISessionStore.Delete / MemoryStore.Delete / WindowsDPAPIStore.Delete
Delete(string key) → void
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

IRuntime.Start
Start(CancellationToken ct) → Task
الغرض
يشغل التحقق والصيانة الخلفية لـ SDK الرسمي؛ للدخول وحماية الوظائف واجهات منفصلة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

IRuntime.Status
Status() → AuthorizationStatus
الغرض
يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.
القيمة المعادة
AuthorizationStatus

يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.

IRuntime.RunFeature
RunFeature(string feature, Func<Task> action) → Task
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

IRuntime.Deactivate
Deactivate(CancellationToken ct) → Task
الغرض
ينفذ خروج الجهاز عبر SDK الرسمي؛ يلغي التطبيق جلسة حساب Launch بصورة منفصلة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Task

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

IRuntime.DisposeAsync
DisposeAsync() → ValueTask
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
ValueTask

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

Java

المصدر المطابق · v0.1.6 · Launch.java · EncryptedFileStore.java

الأخطاء والإخفاقات: throws Exception; Launch.Failure.code / .status / .requestID / .retryAfterMillis / .transport; char[] password

Launch.connect
Launch.connect(String merchantOrigin, String productId, String licentivoProductId, Map<String,String> trustedKeys, String environment) → Launch
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
Launch

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Launch.login
login(String email, char[] password) → State
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
State

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Launch.restore
restore() → State
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
القيمة المعادة
State

يعيد حالة الحساب؛ تعني ErrNoSession أو NO_SESSION عدم وجود جلسة محفوظة. عالج الأخطاء الأخرى منفصلة.

Launch.runFeature
runFeature(String feature, Client.FeatureAction action) → void
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Launch.logout
logout() → void
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Launch.releaseDevice
releaseDevice() → void
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Launch.close
close() → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Launch
new Launch(Config config, Map<String,Object> product, Path cacheRoot [, Store store, Transport transport, RuntimeFactory factory, Sleeper sleeper]) → Launch
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • config, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • cacheRoot: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • store, transport, factory, sleeper: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Launch

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Launch.Config
new Launch.Config(String merchantOrigin, String launchProductID, String licentivoProductID, String environment) → Config
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
Config

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Launch.Config.load
Launch.Config.load(Path path) → Config
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • path: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
Config

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Launch.readPublic
Launch.readPublic(Path path) → Map<String,Object>
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • path: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
Map<String,Object>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Launch.MemoryStore
new Launch.MemoryStore() → MemoryStore
الغرض
ينشئ مخزن جلسات صالحًا داخل العملية الحالية فقط.
القيمة المعادة
MemoryStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

EncryptedFileStore
new EncryptedFileStore(Path directory, SecretKey vaultKey) → EncryptedFileStore
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • vaultKey: مفتاح تشفير من خزنة نظام التشغيل؛ لا تخزنه بجانب السجلات المشفرة.
القيمة المعادة
EncryptedFileStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Launch.HTTPTransport.request
request(String method, URI uri, String bearer, byte[] body) → Response
الغرض
يرسل طلبات HTTP للحساب ويعيد الحالة والترويسات أو المحتوى الخام، دون اتخاذ قرار تفويض.
المعاملات
  • method, uri, bearer, body: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Response

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Launch.Failure
new Launch.Failure(String code [, int status, String requestID, long retryAfterMillis, boolean transport]) → Failure
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
المعاملات
  • code, status, requestID, retryAfterMillis, transport: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
Failure

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Launch.Failure.unavailable
unavailable() → boolean
الغرض
يصنف عدم توفر الخدمة المؤقت؛ لا يسمح ذلك بالتفويض دون اتصال.
القيمة المعادة
boolean

يعيد تصنيفًا منطقيًا، وليس تفويضًا.

Store.load / MemoryStore.load / EncryptedFileStore.load
load(String scope) → byte[] | null
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
byte[] | null

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

Store.save / MemoryStore.save / EncryptedFileStore.save
save(String scope, byte[] secret) → void
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Store.delete / MemoryStore.delete / EncryptedFileStore.delete
delete(String scope) → void
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.canStartOffline
canStartOffline() → boolean
الغرض
يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.
القيمة المعادة
boolean

يعيد تصنيفًا منطقيًا، وليس تفويضًا.

Runtime.start
start() → void
الغرض
يشغل التحقق والصيانة الخلفية لـ SDK الرسمي؛ للدخول وحماية الوظائف واجهات منفصلة.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.runFeature
runFeature(String feature, Client.FeatureAction action) → void
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.releaseDevice
releaseDevice() → void
الغرض
ينفذ خروج الجهاز عبر SDK الرسمي؛ يلغي التطبيق جلسة حساب Launch بصورة منفصلة.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.close
close() → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

RuntimeFactory.create
create(Map<String,Object> settings) → Runtime
الغرض
ينشئ محول SDK الرسمي للتكامل المتقدم؛ يمرر إثبات الهوية في الذاكرة فقط.
المعاملات
  • settings: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Runtime

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Sleeper.sleep
sleep(long milliseconds) → void
الغرض
ينتظر المدة المحددة لجدولة المحاولات المتقدمة.
المعاملات
  • milliseconds: مدة الانتظار المقترحة للمحاولة؛ ميز بين الثواني والمللي ثانية وDuration حسب اللغة.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

JavaScript / TypeScript

المصدر المطابق · v0.1.6 · index.d.ts · index.mjs

الأخطاء والإخفاقات: await Promise; catch (error); LaunchError(code, status, retryAfterSeconds)

Application.connect
Application.connect(merchantOrigin, productID, licentivoProductID, trustedKeys, options?) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.login
login(email: string, password: string, options?: {signal?: AbortSignal}) → Promise<SessionState>
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<SessionState>

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Application.restore
restore(options?: {signal?: AbortSignal}) → Promise<SessionState | null>
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<SessionState | null>

يعيد حالة الحساب؛ تعني null أو nil عدم وجود جلسة قابلة للاستعادة. تبلغ الإخفاقات الأخرى كأخطاء.

Application.runFeature
runFeature<T>(name: string, action: () => T | Promise<T>) → Promise<T>
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
Promise<T>

يعيد نتيجة استدعاء العمل؛ تبلغ إخفاقات التفويض واستثناءات العمل كأخطاء.

Application.logout
logout(options?: {signal?: AbortSignal}) → Promise<boolean>
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<boolean>

تؤكد true الخروج؛ وتعني false أن خروج الحساب البعيد أو إلغاء الجهاز معلق. قد تحدث أخطاء تخزين أيضًا.

Application.releaseDevice
releaseDevice(options?: {signal?: AbortSignal}) → Promise<void>
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<void>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application.close
close() → Promise<void>
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
Promise<void>

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Application
new Application(launch: LaunchConfig, product: PublicProductConfig, options?: Options) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • launch, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.fromFiles
Application.fromFiles(launchPath: string, productPath: string, options?: Options) → Promise<Application>
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Promise<Application>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

validateConfig
validateConfig(launch: LaunchConfig, product: PublicProductConfig) → {launch: LaunchConfig, product: PublicProductConfig}
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • launch, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
{launch: LaunchConfig, product: PublicProductConfig}

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

loadConfig
loadConfig(launchPath: string, productPath: string) → Promise<{launch: LaunchConfig, product: PublicProductConfig}>
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
Promise<{launch: LaunchConfig, product: PublicProductConfig}>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

defaultTransport
defaultTransport(request: Request) → Promise<Response>
الغرض
يرسل طلبات HTTP للحساب ويعيد الحالة والترويسات أو المحتوى الخام، دون اتخاذ قرار تفويض.
المعاملات
  • request: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Promise<Response>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

MemoryStore
new MemoryStore() → MemoryStore
الغرض
ينشئ مخزن جلسات صالحًا داخل العملية الحالية فقط.
القيمة المعادة
MemoryStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

EncryptedFileStore
new EncryptedFileStore(directory: string, key: Uint8Array) → EncryptedFileStore
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • key: مفتاح تشفير من خزنة نظام التشغيل؛ لا تخزنه بجانب السجلات المشفرة.
القيمة المعادة
EncryptedFileStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

LaunchError
new LaunchError(code: string, status=0, retryAfterSeconds=0) → LaunchError
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
المعاملات
  • code, status, retryAfterSeconds: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
LaunchError

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

SessionStore.load / MemoryStore.load / EncryptedFileStore.load
load(scope: string) → Promise<SavedSession | null>
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Promise<SavedSession | null>

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

SessionStore.save / MemoryStore.save / EncryptedFileStore.save
save(scope: string, value: SavedSession) → Promise<void>
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Promise<void>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

SessionStore.delete / MemoryStore.delete / EncryptedFileStore.delete
delete(scope: string) → Promise<void>
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Promise<void>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.status
status() → {allowed:boolean,state:string} | Promise<{allowed:boolean,state:string}>
الغرض
يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.
القيمة المعادة
{allowed:boolean,state:string} | Promise<{allowed:boolean,state:string}>

يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.

Runtime.start
start(onError?: (error: unknown) => void, signal?: AbortSignal) → Promise<unknown>
الغرض
يشغل التحقق والصيانة الخلفية لـ SDK الرسمي؛ للدخول وحماية الوظائف واجهات منفصلة.
المعاملات
  • onError: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<unknown>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.runFeature
runFeature<T>(name: string, action: () => T | Promise<T>) → Promise<T>
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
Promise<T>

يعيد نتيجة استدعاء العمل؛ تبلغ إخفاقات التفويض واستثناءات العمل كأخطاء.

Runtime.deactivate
deactivate(signal?: AbortSignal) → Promise<unknown>
الغرض
ينفذ خروج الجهاز عبر SDK الرسمي؛ يلغي التطبيق جلسة حساب Launch بصورة منفصلة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<unknown>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime.logout
logout?(signal?: AbortSignal) → Promise<{local_complete:boolean,revocation_pending:boolean,storage_error?:string}>
الغرض
ينفذ خروج الجهاز عبر SDK الرسمي؛ يلغي التطبيق جلسة حساب Launch بصورة منفصلة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Promise<{local_complete:boolean,revocation_pending:boolean,storage_error?:string}>

الخروج المحلي والإلغاء البعيد حالتان منفصلتان. عالج التعليق وفشل التخزين واحتفظ بسجل خروج SDK.

Runtime.close
close() → Promise<unknown>
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
Promise<unknown>

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

Rust

المصدر المطابق · v0.1.6 · lib.rs · store.rs · transport.rs

الأخطاء والإخفاقات: Result<T, Failure>: Ok(value) / Err(Failure {code, status, request_id, retry_after, transport})

Application::connect
Application::connect(origin: &str, product_id: &str, licentivo_product_id: &str, trusted_keys: &[(&str,&str)], environment: &str) → Result<Application, Failure>
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
Result<Application, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application::login
login(&mut self, email: &str, password: &str) → Result<State, Failure>
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
Result<State, Failure>

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Application::restore
restore(&mut self) → Result<State, Failure>
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
القيمة المعادة
Result<State, Failure>

يعيد حالة الحساب؛ تعني ErrNoSession أو NO_SESSION عدم وجود جلسة محفوظة. عالج الأخطاء الأخرى منفصلة.

Application::run_feature
run_feature<T,F: FnOnce() -> Result<T,Failure>>(&mut self, feature: &str, action: F) → Result<T, Failure>
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
Result<T, Failure>

يعيد نتيجة استدعاء العمل؛ تبلغ إخفاقات التفويض واستثناءات العمل كأخطاء.

Application::logout
logout(&mut self) → Result<(), Failure>
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application::release_device
release_device(&mut self) → Result<(), Failure>
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application::close / Drop
close(&mut self) / drop(&mut self) → ()
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
()

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Application::new
Application::new(config: Config, product: Value, cache_root: PathBuf) → Result<Application, Failure>
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • config, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • cache_root: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
Result<Application, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application::with_components
Application::with_components(config: Config, product: Value, cache_root: PathBuf, store: Box<dyn Store>, transport: Box<dyn Transport>, factory: Box<dyn RuntimeFactory>, sleeper: Box<dyn Sleeper>) → Result<Application, Failure>
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • config, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • cache_root: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • store, transport, factory, sleeper: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Result<Application, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Config::new
Config::new(origin: &str, product: &str, runtime_product: &str, environment: &str) → Result<Config, Failure>
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
Result<Config, Failure>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Config::load
Config::load(path: impl AsRef<Path>) → Result<Config, Failure>
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • path: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
Result<Config, Failure>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

read_public
read_public(path: impl AsRef<Path>) → Result<Value, Failure>
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • path: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
Result<Value, Failure>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

MemoryStore::default
MemoryStore::default() → MemoryStore
الغرض
ينشئ مخزن جلسات صالحًا داخل العملية الحالية فقط.
القيمة المعادة
MemoryStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

EncryptedFileStore::new
EncryptedFileStore::new(root: PathBuf, vault_key: [u8;32]) → Result<EncryptedFileStore, Failure>
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • root: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • vault_key: مفتاح تشفير من خزنة نظام التشغيل؛ لا تخزنه بجانب السجلات المشفرة.
القيمة المعادة
Result<EncryptedFileStore, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

CurlTransport::new
CurlTransport::new() → Result<CurlTransport, Failure>
الغرض
يرسل طلبات HTTP للحساب ويعيد الحالة والترويسات أو المحتوى الخام، دون اتخاذ قرار تفويض.
القيمة المعادة
Result<CurlTransport, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

CurlTransport::request
request(&mut self, method: &str, url: &str, bearer: &str, body: &[u8]) → Result<Response, Failure>
الغرض
يرسل طلبات HTTP للحساب ويعيد الحالة والترويسات أو المحتوى الخام، دون اتخاذ قرار تفويض.
المعاملات
  • method, url, bearer, body: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Result<Response, Failure>

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

Failure::new
Failure::new(code: &str) → Failure
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
المعاملات
  • code: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
Failure

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

ThreadSleeper::sleep
sleep(&mut self, duration: Duration) → Result<(), Failure>
الغرض
ينتظر المدة المحددة لجدولة المحاولات المتقدمة.
المعاملات
  • duration: مدة الانتظار المقترحة للمحاولة؛ ميز بين الثواني والمللي ثانية وDuration حسب اللغة.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Store::load / MemoryStore::load / EncryptedFileStore::load
load(&mut self, scope: &str) → Result<Option<Vec<u8>>, Failure>
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Result<Option<Vec<u8>>, Failure>

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

Store::save / MemoryStore::save / EncryptedFileStore::save
save(&mut self, scope: &str, value: &[u8]) → Result<(), Failure>
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Store::delete / MemoryStore::delete / EncryptedFileStore::delete
delete(&mut self, scope: &str) → Result<(), Failure>
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime::run_feature
run_feature(&mut self, feature: &str, action: &mut dyn FnMut() -> Result<(),Failure>) → Result<(), Failure>
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime::release_device
release_device(&mut self) → Result<(), Failure>
الغرض
ينفذ خروج الجهاز عبر SDK الرسمي؛ يلغي التطبيق جلسة حساب Launch بصورة منفصلة.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Runtime::close
close(&mut self) → ()
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
()

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

RuntimeFactory::open / OfficialRuntimeFactory::open
open(&mut self, settings: &Value, cached_only: bool) → Result<Box<dyn Runtime>, Failure>
الغرض
ينشئ محول SDK الرسمي للتكامل المتقدم؛ يمرر إثبات الهوية في الذاكرة فقط.
المعاملات
  • settings, cached_only: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Result<Box<dyn Runtime>, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

RuntimeFactory::for_logout / OfficialRuntimeFactory::for_logout
for_logout(&mut self, settings: &Value) → Result<Box<dyn Runtime>, Failure>
الغرض
ينشئ محول SDK الرسمي للتكامل المتقدم؛ يمرر إثبات الهوية في الذاكرة فقط.
المعاملات
  • settings: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Result<Box<dyn Runtime>, Failure>

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Sleeper::sleep
sleep(&mut self, duration: Duration) → Result<(), Failure>
الغرض
ينتظر المدة المحددة لجدولة المحاولات المتقدمة.
المعاملات
  • duration: مدة الانتظار المقترحة للمحاولة؛ ميز بين الثواني والمللي ثانية وDuration حسب اللغة.
القيمة المعادة
Result<(), Failure>

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Ruby

المصدر المطابق · v0.1.6 · licentivo_launch.rb

الأخطاء والإخفاقات: rescue LicentivoLaunch::Error; code / status / retry_after_seconds; callback exceptions

Application.connect
LicentivoLaunch::Application.connect(merchant_origin, product_id, licentivo_product_id, trusted_keys, environment: "live", **options) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application#login
login(email, password, cancellation: nil) → Hash
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Hash

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

Application#restore
restore(cancellation: nil) → Hash | nil
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
Hash | nil

يعيد حالة الحساب؛ تعني null أو nil عدم وجود جلسة قابلة للاستعادة. تبلغ الإخفاقات الأخرى كأخطاء.

Application#run_feature
run_feature(feature) { ... } → T
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
T

يعيد نتيجة استدعاء العمل؛ تبلغ إخفاقات التفويض واستثناءات العمل كأخطاء.

Application#logout
logout(cancellation: nil) → true | false
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
true | false

تؤكد true الخروج؛ وتعني false أن خروج الحساب البعيد أو إلغاء الجهاز معلق. قد تحدث أخطاء تخزين أيضًا.

Application#release_device
release_device(cancellation: nil) → true | false
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
المعاملات
  • ctx / ct / signal / cancellation: سياق الطلب أو إشارة الإلغاء؛ يتحكم سياق دورة حياة Go في مهام الخلفية أيضًا.
القيمة المعادة
true | false

تؤكد true الخروج؛ وتعني false أن خروج الحساب البعيد أو إلغاء الجهاز معلق. قد تحدث أخطاء تخزين أيضًا.

Application#close
close → nil
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
nil

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Application.new
Application.new(launch, product, store: MemoryStore.new, transport: nil, runtime_factory: nil, cache_dir: nil, sleep: nil, pending_attempts: 5) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • launch, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application.from_files
Application.from_files(launch_path, product_path, **options) → Application
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • options / config: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

LicentivoLaunch.origin
LicentivoLaunch.origin(value, environment) → String
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • value: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
القيمة المعادة
String

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

LicentivoLaunch.validate_config
LicentivoLaunch.validate_config(launch, product) → [Hash, Hash]
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • launch, product: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
[Hash, Hash]

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

LicentivoLaunch.load_config
LicentivoLaunch.load_config(launch_path, product_path) → [Hash, Hash]
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
القيمة المعادة
[Hash, Hash]

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

LicentivoLaunch.default_transport
LicentivoLaunch.default_transport(request) → Hash
الغرض
يرسل طلبات HTTP للحساب ويعيد الحالة والترويسات أو المحتوى الخام، دون اتخاذ قرار تفويض.
المعاملات
  • request: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Hash

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

MemoryStore.new
MemoryStore.new → MemoryStore
الغرض
ينشئ مخزن جلسات صالحًا داخل العملية الحالية فقط.
القيمة المعادة
MemoryStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

EncryptedFileStore.new
EncryptedFileStore.new(directory, key) → EncryptedFileStore
الغرض
ينشئ مخزن جلسات دائمًا ومحميًا؛ احصل على مفتاح التشفير من خزنة بيانات اعتماد نظام التشغيل.
المعاملات
  • directory: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • key: مفتاح تشفير من خزنة نظام التشغيل؛ لا تخزنه بجانب السجلات المشفرة.
القيمة المعادة
EncryptedFileStore

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

MemoryStore#persistent? / EncryptedFileStore#persistent? / #secure?
persistent? / secure? → true | false
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
القيمة المعادة
true | false

يعيد تصنيفًا منطقيًا، وليس تفويضًا.

EncryptedFileStore#path
path(scope) → String
الغرض
يتحقق من الإعدادات العامة أو يقرؤها؛ يجب تطابق المنتجات والبيئة ومفاتيح التوقيع.
المعاملات
  • scope: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
String

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

CancellationToken#cancel / #check!
CancellationToken.new.cancel / check! → true / nil
الغرض
يطلب الإلغاء التعاوني أو يتحقق منه؛ الإلغاء ليس نجاحًا في التفويض.
القيمة المعادة
true / nil

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Error.new
Error.new(code, status: 0, retry_after_seconds: 0) → Error
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
المعاملات
  • code, status, retry_after_seconds: ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
Error

يعيد نوع القيمة المحدد في التوقيع؛ النتيجة لا تمنح إذن وظيفة.

MemoryStore#load / EncryptedFileStore#load
load(scope) → Hash | nil
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Hash | nil

يعيد السجل السري؛ عند الغياب يعيد قيمة فارغة أو ErrNoSession حسب اللغة.

MemoryStore#save / EncryptedFileStore#save
save(scope, record) → Object
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Object

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

MemoryStore#delete / EncryptedFileStore#delete
delete(scope) → Object
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • scope / key, value / record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
Object

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

C

المصدر المطابق · v0.1.6 · account.h · account.c

الأخطاء والإخفاقات: NULL / 0 / -1; launch_application_error(app); action(context): 1=success, 0=failure

launch_application_connect
launch_application_connect(origin, product_id, licentivo_product_id, trusted_keys_json, environment, remember, store) → launch_application *
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • remember, store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
launch_application *

يعيد مؤشر تطبيق مملوكًا؛ تعني NULL فشل التهيئة. حرره باستخدام close.

launch_application_login
launch_application_login(launch_application *app, const char *email, const char *password) → int
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
int

1 نجاح و0 فشل. اقرأ رمز الخطأ بعد الفشل.

launch_application_restore
launch_application_restore(launch_application *app) → int
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
القيمة المعادة
int

1 نجاح الاستعادة، و0 لا جلسة، و-1 رفض أو فشل. اقرأ رمز الخطأ بعد الفشل.

launch_application_run_feature
launch_application_run_feature(app, feature, ln_feature_action action, void *context) → int
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
  • context: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
int

1 نجاح و0 فشل. اقرأ رمز الخطأ بعد الفشل.

launch_application_logout
launch_application_logout(launch_application *app) → int
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
القيمة المعادة
int

1 نجاح و0 فشل. اقرأ رمز الخطأ بعد الفشل.

launch_application_release_device
launch_application_release_device(launch_application *app) → int
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
القيمة المعادة
int

1 نجاح و0 فشل. اقرأ رمز الخطأ بعد الفشل.

launch_application_status
launch_application_status(launch_application *app) → char *
الغرض
يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.
القيمة المعادة
char *

يعيد نص JSON مملوكًا؛ حرره باستخدام ln_free_string. دون محرك تكون الحالة login_required وallowed=false.

launch_application_error
launch_application_error(const launch_application *app) → const char *
الغرض
ينشئ أو يقرأ خطأ منظمًا للتصنيف والتأخير وربط التشخيص.
القيمة المعادة
const char *

يعيد نص رمز خطأ مستعارًا. لا تحرره ولا تستخدمه بعد إتلاف التطبيق.

launch_application_close
launch_application_close(launch_application *app) → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

launch_application_open
launch_application_open(origin, product_id, product_config_path, environment, remember, store) → launch_application *
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • product_config_path: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • remember, store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
launch_application *

يعيد مؤشر تطبيق مملوكًا؛ تعني NULL فشل التهيئة. حرره باستخدام close.

launch_application_from_files
launch_application_from_files(launch_config_path, product_config_path, remember, store) → launch_application *
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launchPath, productPath: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • remember, store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
launch_application *

يعيد مؤشر تطبيق مملوكًا؛ تعني NULL فشل التهيئة. حرره باستخدام close.

launch_application_cli
launch_application_cli(int argc, char **argv) → launch_application *
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • argc, argv: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
launch_application *

يعيد مؤشر تطبيق مملوكًا؛ تعني NULL فشل التهيئة. حرره باستخدام close.

launch_login / launch_sign_in
launch_login(account, origin, product_id, config_path, environment, email, password) / launch_sign_in(account, argc, argv) → int
الغرض
واجهة قديمة محفوظة؛ أزيل بروتوكول بيانات الترخيص الطويلة الأجل ولذلك تفشل الطلبات. استخدم Application.
المعاملات
  • account, origin, product_id, config_path, environment, email, password, argc, argv: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
int

يفشل دائمًا؛ انتقل إلى تبادل هوية الحساب.

launch_sign_out
launch_sign_out(launch_account *account, int clear_cache) → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
المعاملات
  • account, clear_cache: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

ln_free_string
ln_free_string(char *value) → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
المعاملات
  • value: يعيد نص JSON مملوكًا؛ حرره باستخدام ln_free_string. دون محرك تكون الحالة login_required وallowed=false.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

launch_secret_store.load
load(void *context, const char *scope, char **record) → int
الغرض
يحمل سجل الحساب بمفتاح معزول؛ يتضمن أسرارًا مخصصة لـ SDK فقط.
المعاملات
  • context: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • scope, record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
int

1 موجود، 0 غائب، -1 فشل قراءة. يخصص load ذاكرة record ويحررها المستدعي.

launch_secret_store.save
save(void *context, const char *scope, const char *record) → int (1: success, 0: failure)
الغرض
يحفظ سجل الحساب ذريًا باستخدام مفتاحه المعزول.
المعاملات
  • context: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • scope, record: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
int (1: success, 0: failure)

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

launch_secret_store.remove
remove(void *context, const char *scope) → int (1: success, 0: failure)
الغرض
يحذف سجل الحساب مع إبقاء ذاكرة تفويض SDK الرسمي وسجل الخروج.
المعاملات
  • context: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
  • scope: مفاتيح العزل والسجلات السرية لـ SDK؛ يجب أن يدعم التخزين المخصص مفاتيح متعددة واستبدالًا ذريًا.
القيمة المعادة
int (1: success, 0: failure)

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

C++

المصدر المطابق · v0.1.6 · launch.hpp

الأخطاء والإخفاقات: std::runtime_error; callback exceptions propagate; RAII; Status(): std::string JSON

Application::Connect
Application::Connect(origin, product, licentivo_product, trusted_keys_json, environment="live", remember=false, store=nullptr) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • merchantOrigin / origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • productID / product_id: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • licentivoProductID / licentivo_product_id: معرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
  • trustedKeys / trusted_keys: ربط معرفات مفاتيح التوقيع بالمفاتيح العامة للتحقق من أذونات SDK الرسمي الموقعة.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • remember, store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application::Login
Login(const char *email, const char *password) → void
الغرض
يسجل الدخول بحساب المتجر ويحصل على إثبات هوية قصير العمر ويشغل SDK الرسمي للتفويض.
المعاملات
  • email, password: بريد العميل وكلمة مروره في هذا المتجر؛ تستخدم كلمة المرور لهذا الدخول فقط.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application::Restore
Restore() → bool
الغرض
يقرأ الجلسة المحفوظة ويؤكد الحساب عبر الإنترنت ويحصل على إثبات جديد ويشغل SDK الرسمي.
القيمة المعادة
bool

تعني true نجاح الاستعادة وfalse عدم وجود جلسة قابلة للاستعادة. الرفض والانتهاء وفشل الشبكة أخطاء.

Application::RunFeature
RunFeature(const char *feature, Action action) → void
الغرض
يتحقق SDK الرسمي من الإذن عند كل تنفيذ، ولا يشغل الاستدعاء إلا عند السماح.
المعاملات
  • feature / name, action / block: اسم الوظيفة يطابق السياسة؛ يحتوي الاستدعاء على العمل المحمي الفعلي.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application::Logout
Logout() → void
الغرض
يوقف التفويض المحلي ويخرج من SDK الرسمي ثم يلغي جلسة Launch. يحتفظ بالمهام البعيدة غير المكتملة لإعادة المحاولة.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application::ReleaseDevice
ReleaseDevice() → void
الغرض
مدخل توافق للخروج الصريح ينفذ مسار خروج الحساب والجهاز نفسه الذي ينفذه Logout.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإكمال الطبيعي نجاح، والخطأ أو الاستثناء فشل.

Application::Status
Status() → std::string (JSON)
الغرض
يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.
القيمة المعادة
std::string (JSON)

يقرأ حالة التفويض الحالية في SDK الرسمي، دون تسجيل دخول أو استبدال فحص الوظيفة.

Application::~Application
~Application() → void
الغرض
يوقف هذه النسخة ومهام الخلفية مع الاحتفاظ بالدخول المحفوظ وربط الجهاز.
القيمة المعادة
void

لا يعيد قيمة عمل؛ الإغلاق العادي لا يؤكد خروج الحساب أو تحرير الجهاز.

واجهات متقدمة ومتوافقة

Application
Application(origin, product, config, environment="live", remember=false, store=nullptr) → Application
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • origin: عنوان أصل المتجر الحالي كاملًا بالبروتوكول والمنفذ اللازم؛ استخدم HTTPS في الإنتاج.
  • product: معرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
  • config: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • environment: sandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
  • remember, store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application(launch_application *)
explicit Application(launch_application *app) → Application
الغرض
يتحقق من الإعدادات العامة وينشئ التطبيق، دون تسجيل الدخول أو السماح بالوظائف المحمية.
المعاملات
  • app: يعيد مؤشر تطبيق مملوكًا؛ تعني NULL فشل التهيئة. حرره باستخدام close.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application::FromFiles
Application::FromFiles(launch, product, remember=false, store=nullptr) → Application
الغرض
يقرأ ملفي إعدادات عامة موجودين ويتحقق من ربط المنتجات وينشئ التطبيق. الاتصال المباشر لا يتطلب ملفات.
المعاملات
  • launch, product: مسارات الإعدادات المختارة أو دليل الذاكرة والتخزين الخاص بالمستخدم الحالي.
  • remember, store: خيارات تخزين الجلسة والدليل الخاص والإلغاء والمحاولات أو المكونات المتقدمة.
القيمة المعادة
Application

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

Application(Application&&) / operator=
Application(Application&& other) / operator=(Application&& other) → Application / Application&
الغرض
ينقل ملكية التطبيق الأصلي. النسخ معطل والكائن السابق لم يعد يملك المؤشر.
المعاملات
  • other: كائن إعداد أو محول تشغيل أو نقل أو طلب، للتكامل المتقدم فقط.
القيمة المعادة
Application / Application&

يعيد الكائن المنشأ؛ التهيئة وحدها لا تعني نجاح التفويض.

حقول النتيجة

يعيد حالة الحساب؛ راجع جدول الحقول أدناه.

الحقلالنوعالغرض
Go State.User.ID · JS user.id · Java userID · Rust user_id · Ruby user.idstringمعرف حساب المتجر الفريد، وليس معرف منتج أو ترخيص أو جهاز.
Go User.Email · JS user.email · Java/Rust/Ruby emailstringبريد حساب المتجر؛ بعض اللغات تعيد معرف الحساب فقط في الحالة.
Go User.Verified / user.verifiedbooleanهل تم التحقق من بريد المتجر؛ ليست حالة تفويض البرنامج.
JS user.display_namestring (optional)اسم عرض حساب المتجر؛ يحذف إن لم يقدمه الخادم.
Go State/Session.ExpiresAt · JS expiresAt · Java expiresAt · Rust/Ruby expires_attime.Time / ISO 8601 / Instantانتهاء جلسة حساب Launch، لا انتهاء الشراء أو مهلة التفويض دون اتصال.
Java offlineFallback · Rust offline_fallbackboolean = falseحقل توافق؛ لا تختار الاستعادة الحالية رجوعًا دون اتصال، وقيمته false.
C / C++ status.allowed · C# Status().Allowedbooleanهل يسمح SDK الرسمي بالاستخدام حاليًا؛ افحص كل وظيفة على حدة.
C / C++ status.state · C# Status().Statestringاسم حالة SDK الرسمي؛ قد يكون login_required قبل الدخول.
C / C++ status.code · C# Status().Codestringرمز خطأ آلي ثابت لتحديد الرسائل ومسارات المعالجة.
C / C++ status.request_id · C# Status().RequestIDstringمعرف ربط طلب الخادم للتشخيص؛ لا تعرضه جميع اللغات.
C / C++ status.retryable · C# Status().Retryablebooleanهل ينصح بإعادة المحاولة؛ لا يسمح هذا بتنفيذ العمل المحمي الآن.
C / C++ status.lease_valid_until · C# Status().LeaseValidUntilUnix secondsانتهاء الإذن الموقع من SDK الرسمي بثواني Unix، منفصل عن انتهاء جلسة الحساب.
Go Identity.ProductID / product_idUUIDمعرف منتج متجر Launch، يملؤه كود التكامل الإداري تلقائيًا.
Go Identity.LicentivoProductID / licentivo_product_idUUIDمعرف منتج ترخيص Licentivo، ويجب أن يطابق إعداد التوقيع العام.
Go Identity.LaunchConnectionID / launch_connection_idUUIDمعرف اتصال ترخيص Launch المثبت، ويجب أن يطابق المنتج والبيئة.
Go Identity.Environment / environmentsandbox | livesandbox أو live؛ يجب توحيد البيئة للحساب والمنتجات والذاكرة المؤقتة.
Go Identity.IdentityToken / identity_tokenstringإثبات هوية مؤقت أحادي الاستخدام يمرر في ذاكرة SDK الرسمي؛ ليس اعتمادًا دون اتصال.
Go Identity.ExpiresAt / identity.expires_attime.Time / ISO 8601انتهاء إثبات الهوية، وليس انتهاء جلسة الحساب أو الشراء.
Go Session.AccessToken / access_token / tokenstringرمز جلسة Launch، تعيده فقط واجهات الجلسات المنخفضة المستوى أو التخزين المشفر.

الرموز وإثباتات الهوية والسجلات المحفوظة أسرار. لا تعرضها في السجلات أو عمليات عرض المتصفح.

الأخطاء والإخفاقات

الحقلالنوعالغرض
Go APIError.Code · Python APIError.code · C# Code · Java/Rust/Ruby code · JS code · C error()stringرمز خطأ آلي ثابت لتحديد الرسائل ومسارات المعالجة.
Go APIError.Status · Python status · C# Status · Java/Rust/Ruby/JS statusintegerحالة HTTP؛ تعني 0 عدم توفر استجابة HTTP.
Go RequestID · Java requestID · Rust request_idstringمعرف ربط طلب الخادم للتشخيص؛ لا تعرضه جميع اللغات.
Go RetryAfter · Python retry_after · C# RetryAfterSeconds · Java retryAfterMillis · JS/Ruby retryAfterSeconds / retry_after_seconds · Rust retry_afterDuration / s / msمدة الانتظار المقترحة للمحاولة؛ ميز بين الثواني والمللي ثانية وDuration حسب اللغة.

الخروج المحلي والإلغاء البعيد حالتان منفصلتان. عالج التعليق وفشل التخزين واحتفظ بسجل خروج SDK.