שילוב MobileIron לניהול אפליקציות מובייל

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

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

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

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
שילוב MobileIron לניהול אפליקציות מובייל
מורכב
~3-5 ימים

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

שאלות נפוצות

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

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

אתה משיק אפליקציה ארגונית בבנק שבו MobileIron הוא תקן ה-MDM. תוך שבוע מההשקה, מגיעות תלונות: האפליקציה לא נפתחת ללא MobileIron Go, מדיניות DLP חוסמת העתק-הדבק, ו-AppConnect Keychain לא מסתנכרן. בפועל, אתחול AppConnect שגוי או פרופיל provisioning לא מוגדר כהלכה נועלים את האפליקציה עבור 30% מהמשתמשים. אנחנו מהנדסים מוסמכי Ivanti עם 7 שנות ניסיון. אנחנו פותרים בעיות אלה מדי יום. נטפל באינטגרציה turnkey, תוך הבטחת פעולה יציבה גם תחת מדיניות אבטחה לא סטנדרטית. איתנו, תקצרו את זמן האינטגרציה ב-40% ותימנעו מטעויות אופייניות.

איך לבחור בין AppConnect SDK לבין Managed App Configuration

קריטריון AppConnect SDK Managed App Configuration
תלות בספק מלאה (קשור ל-MobileIron) אין (עובד עם כל MDM)
אבטחה מכולה מבודדת, Keychain משלו, VPN לכל אפליקציה הגבלות מערכת דרך Managed Open In והגדרות DLP
מורכבות אינטגרציה גבוהה: דורש שינויים ב-AppDelegate וירושת Activity בינונית: רק קובץ הגדרות plist/XML
זמן אינטגרציה 4–7 שבועות 2–3 שבועות
תמיכה בקוד legacy דורש תת-מחלקות AppConnectActivity ללא שינויים מבניים

מקור: תיעוד Ivanti על יכולות AppConnect

Managed App Configuration הוא התקן של Apple/Google, נתמך על ידי כל שרתי ה-MDM. עבור פרויקטים חדשים, זו הדרך המועדפת: פחות נעילה לספק, תחזוקה קלה יותר. AppConnect SDK מוצדק כשצריך תכונות ספציפיות: AppConnect Tunnel (VPN לכל אפליקציה) או AppConnect Keychain עם הצפנה ברמת חומרה המנוהלת על ידי השרת. לקוחות שבוחרים ב-Managed App Configuration חוסכים עד 40% מזמן התמיכה בהשוואה ל-AppConnect SDK.

פלטפורמה SDK אתחול הגבלות
iOS AppConnectLib (CocoaPods) ACManager.shared().startUp() דורש AppDelegate ו-ACManagerDelegate
Android AppConnect SDK (Gradle) ירושת AppConnectApplication כל ה-Activities חייבים לרשת מ-AppConnectActivity

AppConnect SDK ל-iOS: קוד אתחול

הוספה דרך CocoaPods:

pod 'AppConnectLib' 

אתחול:

import AppConnectLib

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate, ACManagerDelegate {
    func application(_ app: UIApplication, didFinishLaunchingWithOptions options: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        ACManager.shared().delegate = self
        ACManager.shared().startUp(with: self.window)
        return true
    }
    
    func appConnectConfigReceived(_ config: [AnyHashable: Any]?) {
        guard let config = config else { return }
        let serverURL = config["server_url"] as? String
        let orgID = config["org_id"] as? String
        AppSettings.shared.configure(serverURL: serverURL, orgID: orgID)
    }
    
    func appConnectPolicyReceived(_ policy: [AnyHashable: Any]?) {
        let copyPasteAllowed = policy?["copy_paste_out"] as? Bool ?? false
        DLPEnforcer.shared.setCopyPasteEnabled(copyPasteAllowed)
    }
}

AppConnect Keychain: אחסון סודות מבודד

AppConnect מספק Keychain משלו, מוצפן עם מפתח המכולה של MobileIron. במחיקה מרחוק דרך MobileIron, Keychain זה נמחק באופן עצמאי מהמערכת—המפתחות האישיים של המשתמש נשארים ללא פגע.

let acKeychain = ACKeychain()
acKeychain.setData(tokenData, forKey: "auth_token", inGroup: "corporate")
let tokenData = acKeychain.data(forKey: "auth_token", inGroup: "corporate")

ההבדל מ-Keychain הסטנדרטי של iOS: AppConnect Keychain אינו נגיש ללא רישום MDM פעיל. זה קריטי למדיניות DLP—כאשר הרישום מבוטל, נתוני החברה הופכים אוטומטית לבלתי זמינים.

Android: MobileIron AppConnect

באנדרואיד, AppConnect מיושם על ידי ירושה מ-pod 'AppConnectLib' :

class MyApplication : AppConnectApplication() {
    override fun onCreate() {
        super.onCreate()
        // AppConnect перехватывает ContentProvider, ClipboardManager, FileProvider
    }
}

חשוב: import AppConnectLib @UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate, ACManagerDelegate { func application(_ app: UIApplication, didFinishLaunchingWithOptions options: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { ACManager.shared().delegate = self ACManager.shared().startUp(with: self.window) return true } func appConnectConfigReceived(_ config: [AnyHashable: Any]?) { guard let config = config else { return } let serverURL = config["server_url"] as? String let orgID = config["org_id"] as? String AppSettings.shared.configure(serverURL: serverURL, orgID: orgID) } func appConnectPolicyReceived(_ policy: [AnyHashable: Any]?) { let copyPasteAllowed = policy?["copy_paste_out"] as? Bool ?? false DLPEnforcer.shared.setCopyPasteEnabled(copyPasteAllowed) } } דורש שכל המחלקות let acKeychain = ACKeychain() acKeychain.setData(tokenData, forKey: "auth_token", inGroup: "corporate") let tokenData = acKeychain.data(forKey: "auth_token", inGroup: "corporate") יירשו מ-AppConnectApplication או class MyApplication : AppConnectApplication() { override fun onCreate() { super.onCreate() // AppConnect перехватывает ContentProvider, ClipboardManager, FileProvider } } . זו מגבלה משמעותית עבור אפליקציות legacy המשתמשות ב-Fragment + ViewPager. פתרון חלקי הוא שימוש ב-AppConnectApplication כמחלקת בסיס ביניים.

איך להפוך את הפריסה לאוטומטית דרך Ivanti Neurons REST API?

לאחר המיתוג מחדש של MobileIron ל-Ivanti, נוצר MDM מבוסס ענן עם REST API. זה מאפשר אוטומציה של ניהול אפליקציות מ-CI/CD ללא פעולות ידניות בקונסולה.

דוגמה לדחיפת IPA דרך GitHub Actions:

curl -X POST "https://tenant.mobileiron.com/api/v1/apps" \
 -H "Authorization: Bearer $IVANTI_TOKEN" \
 -H "Content-Type: multipart/form-data" \
 -F "file=@build/app.ipa" \
 -F "metadata={\"bundleId\":\"com.company.app\",\"appStoreId\":\"enterprise\"}"

אתגרים ואיך להתגבר עליהם

איך לזרז עדכוני תצורה?

מרווח ברירת המחדל של בדיקת AppConnect הוא 15 דקות. לסנכרון כפוי, קרא ל-Activity. זה עובד ב-80% מהמקרים. בייצור, אנו מוסיפים checkIn בכל AppConnectActivity. זה מקטין את העיכוב ל-2 שניות—פי 5 מהר יותר ממרווח ברירת המחדל.

מה אם AppConnect לא מאתחל?

ב-90% מהמקרים: MobileIron Go לא מותקן או לא מחובר. AppConnect SDK דורש את MobileIron Go כ"שומר המכולה." בתהליכי רישום בייצור, יש לפרוס את MobileIron Go תחילה דרך MDM. הסיבה השנייה היא פרופיל provisioning שגוי או App ID חסר בקונסולת MobileIron.

טעויות אופייניות באינטגרציה של AppConnect SDK

  • MobileIron Go לא מותקן לפני השקת האפליקציה (70% מהשגיאות).
  • פרופיל provisioning שגוי או App ID חסר בקונסולת MobileIron.
  • Activities שלא יורשים מ-AppConnectActivity באנדרואיד.
  • מרווח ברירת מחדל של 15 דקות; נדרשת בדיקת כניסה כפויה.

שלבי אינטגרציה

  1. ניתוח תשתית MobileIron/Ivanti (גרסת שרת, תצורות מדיניות)
  2. בחירת נתיב: AppConnect SDK או Managed App Configuration
  3. אינטגרציה של SDK (הגדרת Podfile/Gradle, אתחול, קריאות חוזרות)
  4. יישום טיפול בתצורה ובמדיניות DLP
  5. אינטגרציה של AppConnect Keychain לאחסון סודות
  6. בדיקת תרחישי רישום, מחיקה מרחוק וביטול MDM
  7. פריסה דרך MobileIron App Catalog או Ivanti App Store

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

  • ביקורת על תשתית ה-MDM הנוכחית
  • בחירת נתיב אינטגרציה אופטימלי
  • יישום עם קוד מתועד לתחזוקה קלה
  • אינטגרציה של AppConnect Keychain ומדיניות DLP
  • תיעוד רישום ופתרון תקלות
  • תרחיש בדיקה: רישום, תצורה, מחיקה
  • 3 חודשי תמיכה באחריות לאחר הפריסה

לוחות זמנים: Managed App Configuration לוקח 2–3 שבועות; אינטגרציה מלאה של AppConnect SDK לוקחת 4–7 שבועות. המחיר נקבע באופן אישי.

היציבות לאחר האינטגרציה משתפרת ב-25% הודות לעדכוני מדיניות אוטומטיים. אם אתה צריך עזרה באינטגרציה של MobileIron, צור קשר. נערוך ביקורת, נציע את הנתיב האופטימלי, ונבצע את העבודה turnkey. עם ניסיון על למעלה מ-15 פרויקטים של MobileIron/Ivanti, אנו מבטיחים תוצאות גם בסביבות legacy מורכבות. כדי לקבל ייעוץ, פשוט כתוב לנו.