שילוב Crashlytics לדיווח קריסות באפליקציות מובייל

כשהאפליקציה הניידת שלך קורסת על מכשירי המשתמשים ואתה לא יכול לראות את הסיבה, כל כשל משמעותו לקוחות אבודים ושעות של ניפוי באגים. אנחנו משלבים את Firebase Crashlytics כך שתקבל עקבות מחסנית מלאות עם סמלים, ללא צורך בטיפול ידני בקבצי dSYM או mapping. הצוות שלנו מקים דיווח קריסות במפתח מלא—מאינטגרציית SDK ועד מפתחות מותאמים אישית ושגיאות לא קטלניות—ומבטיח ניטור אמין ותמיכה מתמשכת.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

אלה הם רק חלק מסוגי היישומים הניידים שאנו עובדים איתם, ולכל אחד מהם עשויים להיות מאפיינים ופונקציונליות ספציפיים משלו, המותאמים לצרכים ולמטרות הספציפיות של הלקוח.

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
שילוב Crashlytics לדיווח קריסות באפליקציות מובייל
פשוט
~1 יום

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

הערה: כאשר האפליקציה שלך קורסת ב-iOS או ב-Android ואין לך דיווח קריסות, אתה מבזבז שעות בניסיון לשחזר את הבעיה. תרחיש טיפוסי: משתמש מדווח שהאפליקציה נסגרת במסך התשלום, אבל אתה לא יכול לשחזר את זה מקומית. Firebase Crashlytics מספק עקבות מחסנית מלאות עם סמלים ללא טיפול ידני בקבצי dSYM או mapping. כפי שצוין בתיעוד הרשמי, Crashlytics תופס אוטומטית חריגות לא מטופלות ואותות (SIGABRT, EXC_BAD_ACCESS) ואפילו קריסות C++ דרך NDK. אנו משתמשים ב-Crashlytics בפרויקטים בייצור ומבטיחים שיעור ללא קריסות מעל 99.5%. הסמלה מתרחשת אוטומטית: שמות מתודות ומספרי שורות מוכנסים ללא העלאת סמלים ידנית. עבור iOS, הגדר העלאת dSYM דרך Build Phases או Fastlane; עבור Android, הוסף את הפלאגין של Gradle שמעלה קבצי mapping לאחר כל build release.

Crashlytics טוען סמלים פי 3 מהר יותר מ-Sentry לפי הבדיקות שלנו. הטבלה שלהלן מציגה הבדלים עיקריים:

פרמטר Crashlytics Sentry
סמלה אוטומטית כן דורש CLI
העלאת dSYM Run Script ב-Xcode, Fastlane העלאה ידנית
רישום שגיאות לא קטלניות record(error:) CaptureException
שיעור ללא קריסות מובנה הגדרה נוספת
מחיר חינם (Firebase Spark) בתשלום (שכבת התחלה)

כיצד אנו משלבים את Crashlytics

שילוב iOS

הוסף firebase-ios-sdk דרך Swift Package Manager, ולאחר מכן ב-AppDelegate:

import FirebaseCrashlytics import FirebaseCore @main struct MyApp: App { init() { FirebaseApp.configure() } } 

זה הכל לדיווח בסיסי — ה-SDK תופס אוטומטית חריגות לא מטופלות ואותות (import FirebaseCrashlytics import FirebaseCore @main struct MyApp: App { init() { FirebaseApp.configure() } } , SIGABRT).

נקודה קריטית: העלאת dSYM. ב-Xcode, ודא ש-Build Settings → EXC_BAD_ACCESS עבור Release. בלעדיו, לוח המחוונים מציג כתובות זיכרון במקום שמות פונקציות. עבור CI אנו משתמשים ב-Fastlane להעלאה.

שילוב Android

// build.gradle (app)
implementation("com.google.firebase:firebase-crashlytics:18.+")
implementation("com.google.firebase:firebase-crashlytics-ndk:18.+") // для C++ крашей

הפלאגין DEBUG_INFORMATION_FORMAT = DWARF with dSYM File ב-// build.gradle (app) implementation("com.google.firebase:firebase-crashlytics:18.+") implementation("com.google.firebase:firebase-crashlytics-ndk:18.+") // для C++ крашей מעלה אוטומטית את קובץ ה-mapping של R8/ProGuard לאחר כל build release. ללא הפלאגין, העלה mapping ידנית דרך Firebase CLI.

מפתחות מותאמים אישית ויומנים לאבחון

עקבות מחסנית חשופה לעיתים קרובות לא מסבירה למה זה קרס. Crashlytics מאפשר לך לצרף הקשר:

// iOS Crashlytics.crashlytics().setCustomValue(userId, forKey: "user_id")
Crashlytics.crashlytics().setCustomValue("checkout", forKey: "last_screen")
Crashlytics.crashlytics().log("CartViewModel: начало оплаты")
// Android Firebase.crashlytics.setCustomKey("user_id", userId)
Firebase.crashlytics.setCustomKey("last_screen", "checkout")
Firebase.crashlytics.log("CartViewModel: начало оплаты")

נתונים אלה מופיעים בכרטיסיות Keys ו-Logs של כל דוח קריסה. בפועל, זה מקצר את זמן האבחון: אתה מיד רואה שמשתמש אנונימי קרס במסך התשלום, לא רק ב-com.google.firebase.crashlytics.

שגיאות לא קטלניות וכיצד לרשום אותן

לא כל הבעיות הן קריסות. שגיאות רשת, כשל בניתוח JSON, timeouts — כל אלה צריכים להיות מתועדים מבלי לסיים את הסשן:

Crashlytics.crashlytics().record(error: NetworkError.timeout) 

בלוח המחוונים, שגיאות לא קטלניות נכנסות לסעיף Non-fatals. שימושי לניטור השפלת API מבלי להשפיע על שיעור ללא קריסות.

שיעור ללא קריסות והתראות

קונסולת Firebase מציגה משתמשים ללא קריסות — אחוז הסשנים ללא קריסה. היעד לייצור הוא מעל 99.5%. אנו מגדירים התראות אימייל כאשר זה יורד מתחת לסף דרך Firebase Alerts, או מחברים webhook ל-PagerDuty דרך Firebase Extensions.

כיצד להגדיר התראות לירידה בשיעור ללא קריסות?

בקונסולת Firebase, נווט אל Alerts וצור כלל עבור Crashlytics. בחר את המדד "משתמשים ללא קריסות" וסף, לדוגמה, 99.5%. כאשר מגיעים לסף, המערכת שולחת אימייל או מפעילה webhook. עבור פרויקטים רציניים, אנו משלבים Firebase Extensions עם PagerDuty או Slack לקבלת התראות מיידיות.

שלבי שילוב

שלב תיאור משך
1. הוספת תלויות SPM/Gradle/CocoaPods 0.5 יום
2. העלאת dSYM/mapping סקריפט Fastlane או Xcode Run Script 0.5 יום
3. מפתחות מותאמים אישית מזהה משתמש, ניווט, לוגיקה עסקית 0.5 יום
4. רישום שגיאות לא קטלניות 10+ נקודות באפליקציה 0.5 יום
5. התראות אימייל/PagerDuty 0.5 יום

מה כלול בעבודה

  • הוספת תלויות דרך SPM, CocoaPods או Gradle
  • הגדרת העלאת dSYM עבור iOS דרך Fastlane או Xcode Build Phases
  • הגדרת העלאת ProGuard/R8 mapping עבור Android
  • הוספת מפתחות מותאמים אישית עבור מזהה משתמש, סשן, נתיב ניווט
  • רישום שגיאות לא קטלניות בנקודות מפתח
  • הגדרת התראות בקונסולת Firebase

ציר זמן

שילוב בסיסי עם העלאת dSYM/mapping: 0.5–1 יום. הוספת מפתחות מותאמים אישית ורישום שגיאות לא קטלניות בקוד: עוד 0.5–1 יום בהתאם לגודל הפרויקט. צור קשר — אנו נעריך את הפרויקט שלך ונציע שילוב מפתח ביד. הניסיון של הצוות שלנו: מעל 50 פרויקטים עם Crashlytics, שמירה על שיעור ללא קריסות מעל 99.5% בכל builds הייצור. קבל ייעוץ על שילוב Crashlytics באפליקציה שלך.