دليل Flutter مع AllStak

التقط الأعطال والأخطاء والأداء من تطبيق Flutter على iOS وAndroid عبر حزمة AllStak Flutter SDK.

المستودع المصدر:
AllStak/allstak_flutter
مسار README:
README.md
إصدار الـ SDK:
1.1.0
مصدر التثبيت:
pub.dev (الحزمة: allstak)
آخر تحقّق:
2026-05-31

التثبيت

أضف الحزمة (منشورة على pub.dev باسم allstak).

flutter pub add allstak

الإعداد

غلّف تطبيقك بـ AllStak.runApp، ممرّرًا AllStakConfig ونداء runApp. يثبّت هذا معالجة الأخطاء وأعطال النظام الأصلية تلقائيًا.

import 'package:allstak/allstak.dart';
import 'package:flutter/material.dart';

void main() {
  AllStak.runApp(
    const AllStakConfig(
      apiKey: String.fromEnvironment('ALLSTAK_API_KEY'),
      environment: 'production',
      release: String.fromEnvironment('ALLSTAK_RELEASE'),
      service: 'mobile',
    ),
    () => runApp(const MyApp()),
  );
}

مثال أساسي

بمجرد أن يغلّف AllStak.runApp تطبيقك، تُلتقط أخطاء إطار Flutter وأخطاء الـ zone غير الملتقطة تلقائيًا (التقاط أعطال النظام الأصلية مفعّل افتراضيًا).

التقاط الأخطاء

التقط الاستثناءات المُعالَجة عبر نسخة AllStak.

await AllStak.instance?.captureException(
  StateError('checkout failed'),
  stackTrace: StackTrace.current.toString(),
  context: {'screen': 'checkout'},
);

تتبّع الطلبات

مع enableHttpOverrides (الافتراضي true) تثبّت الحزمة HttpOverrides على مستوى العملية لتُجهَّز نداءات HttpClient تلقائيًا. ويمكنك أيضًا استخدام عميل مُجهَّز صراحةً.

final client = AllStak.instance!.httpClient();
final response = await client.get(Uri.parse('https://api.example.com/orders'));

أفضل الممارسات

  • استخدم AllStak.runApp لتُلتقط أخطاء الإطار والأخطاء غير المتزامنة.
  • وفّر مفتاح API وقت البناء عبر String.fromEnvironment لا مضمّنًا في الشيفرة.
  • اضبط release لتتبّع الجلسات الخالية من الأعطال لكل نسخة.