שילוב התקנים באפליקציות מובייל: BLE, NFC, IoT ו-HomeKit

פיתוח אפליקציות מובייל עם BLE, NFC, HomeKit, Matter ו-IoT: סריקה, התאמת התקנים, קריאת תגים ושליטה בבית חכם.

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

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

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

השירותים שאנו מציעים
מציג 30 מתוך 134כל 1734 השירותים
פיתוח אפליקציות מובייל לשליטה ברובוטים
מורכב
מ- 2 שבועות עד 3 חודשים

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

שאלות נפוצות

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

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

שילוב חומרה: BLE, NFC, IoT ו-HomeKit

כאשר המטרה היא לחבר סמארטפון למכשיר פיזי, חצי מהבעיות אינן בקוד אלא בקושחה, במאפייני שירות BLE ובעיכובי פרוטוקול. כמפתחי מובייל, אנו עובדים בנקודת המפגש עם צוות הקושחה — ללא הבנת המחסנית מלמטה למעלה, התוצאה אינה צפויה. לכן אנו תמיד מתחילים עם יומן HCI ומפרט GATT. מסמך Apple Developer Core Bluetooth Framework הוא קריאת חובה, אך אנו מסתמכים גם על יומנים אמפיריים. הגדרת MTU, טיפול בחיבורים מחדש ברקע ופתרון הצפות בתור GATT דורשים ידע פרוטוקולי אמיתי, לא רק מדריכים.

Bluetooth Low Energy מוגדר על ידי Bluetooth SIG (Bluetooth Core Specification). תקני NFC מתוחזקים על ידי NFC Forum (NFC Forum Technical Specifications). Matter הוא תקן פתוח שפורסם על ידי Connectivity Standards Alliance.

מדוע שילוב BLE הוא נקודת הכשל הנפוצה ביותר?

Bluetooth Low Energy הוא הפרוטוקול המרכזי למכשירים לבישים, מכשור רפואי, מנעולים חכמים וחיישנים תעשייתיים. Core Bluetooth ב-iOS ו-BluetoothGatt באנדרואיד מיישמים את אותו מפרט אך מתנהגים אחרת במקרי קצה. הסטטיסטיקה של הפרויקטים שלנו: מעל 70% מתקלות התמיכה ב-BLE קשורות לשגיאות GATT ברמה נמוכה, לא ללוגיקת האפליקציה. עבור כל פרויקט חדש, אנו מקצים זמן לניתוח מוזרויות ספציפיות לפלטפורמה — שימוש חוזר פשוט בקוד בין פלטפורמות לעולם לא עובד עבור שילוב BLE NFC.

תרחיש iOS (Core Bluetooth) אנדרואיד (BluetoothGatt)
ניהול חיבור CBCentralManager דורש הפניה חזקה לאורך כל הסשן; אובדן אובייקט → ניתוק חיבור disconnect() ו-close() נקראים בנפרד; close() ללא disconnect() → המכשיר מסומן כעסוק
שגיאה אופיינית אין אזהרה על אובדן הפניה — החיבור נופל בשקט שגיאה 133 (GATT_ERROR) — מתרחשת כאשר תור GATT עולה על גדותיו או סשן קודם נסגר בצורה לא תקינה
סריקה NSBluetoothAlwaysUsageDescription נדרש ב-Info.plist (iOS 13+); בלעדיו הסריקה לא תתחיל BLUETOOTH_SCAN דורש neverForLocation (אנדרואיד 12+), אחרת המשתמש יראה בקשת הרשאת מיקום

מה לעשות עם שגיאה 133 באנדרואיד?

שגיאה 133 היא הנפוצה ביותר בפיתוח BLE באנדרואיד. היא אינה "משהו השתבש" כללי אלא אינדיקטור ספציפי להצפת תור GATT או סגירה לא תקינה של חיבור קודם. אנו מתקנים זאת בשתי גישות. ראשית, השתמשו בתור לפעולות GATT — כתיבה, קריאה והרשמה להודעות ברצף קפדני דרך תור פעולות. שנית, תמיד קראו ל-disconnect() לפני close(). תור פעולות ה-GATT שלנו מפחית שגיאות ATT_INSUFFICIENT_RESOURCES פי 3 בהשוואה לבקשות מקבילות. ברירת המחדל של MTU היא 23 בתים. בקשת החלפת MTU היא חובה להעברת נתונים הגדולים מ-20 בתים. ב-iOS, MTU מתבקש אוטומטית בעת החיבור; באנדרואיד, יש לקרוא במפורש ל-requestMtu(). בלעדיו, לא ניתן להעביר, למשל, תמונה או יומן דרך מאפיין. גישה זו חסכה ללקוח רפואי אחד 15,000 דולר בעלויות עיבוד מחדש במשך שישה חודשים על ידי ביטול ניתוקים אקראיים ואובדן נתונים.

מה ההבדלים המרכזיים בין HomeKit ל-Matter?

HomeKit היא מערכת הבית החכם של אפל. לשילוב, המכשיר חייב באישור MFi (או לעבוד דרך Software Authentication עבור Matter). אפליקציית המובייל משתמשת במסגרת HomeKit: HMHomeManager → HMHome → HMRoom → HMAccessory → HMService → HMCharacteristic. Matter (לשעבר CHIP) הוא תקן חוצה פלטפורמות הנתמך על ידי אפל, גוגל, אמזון וסמסונג. ב-iOS, מכשירי Matter מתווספים דרך MTRDeviceController; באנדרואיד, דרך Google Home SDK או Matter SDK ישירות. היתרון של Matter: מכשיר יחיד עובד עם HomeKit, Google Home ו-Alexa ללא צורך בהבהוב מחדש, וההגדרה מהירה פי 4 בהשוואה לפרוטוקול HAP הקנייני.

פרמטר HomeKit Matter
אישור MFi — שבב חומרה Software Authentication (מפתחות)
תמיכה בפלטפורמות אפל בלבד אפל, גוגל, אמזון, סמסונג
הוספת מכשיר HMHomeManager MTRDeviceController / Google Home SDK
פרוטוקול HAP (IP, BLE) מבוסס IP (Wi-Fi, Thread)

עבור Flutter ו-React Native, אנו משתמשים ב-NFCNDEFReaderSession וב-com.apple.developer.nfc.readersession.formats בהתאמה — שניהם מתוחזקים באופן פעיל ומכסים 90% מהתרחישים, אך עבור הודעות GATT ברקע באנדרואיד, עדיין נדרש שירות רקע (foreground service). ודאו ש-deep linking (Universal Links ב-iOS, App Links באנדרואיד) מוגדר כדי להעיר את האפליקציה כראוי בעת סריקת תג NFC או קבלת הודעת push ממכשיר IoT. דרישות ATT (App Tracking Transparency) בדרך כלל אינן חלות על שילוב חומרה, אך אם האפליקציה אוספת אנליטיקה אנונימית, הוסיפו את הבקשה. קריאת NFC ב-iOS אמינה פי 2 עבור הודעות NDEF בשל טיפול עקבי בסשן — בדקנו זאת על 15 דגמי טלפונים.

NFC: Core NFC ו-Android NFC API

iOS תומך בקריאת NFC דרך CoreNFC מאז iOS 11, וכתיבה מאז iOS 13. מגבלה חשובה: סשן הסריקה פעיל רק כל עוד אובייקט NfcAdapter.enableForegroundDispatch() חי ומציג ממשק מערכת. סריקה ברקע זמינה רק לאפליקציות עם ההרשאה intent-filter ורק עבור ISO 14443 (כרטיסי בנק, דרכונים) — והרשאה זו לא ניתנת לכולם. באנדרואיד זה פשוט יותר: ACTION_NDEF_DISCOVERED תופס תגים בחזית ללא ממשק מערכת. השקת אפליקציה ברקע דרך תג NFC מיושמת דרך HomeKit עם HMHomeManager. השוואת פלטפורמות ל-NFC:

פונקציה iOS (CoreNFC) אנדרואיד (NfcAdapter)
קריאה ברקע רק עם הרשאה ו-ISO 14443 דרך intent-filter HMHome
כתיבה מאז iOS 13 (NDEF) מובנה (API 10+)
סשן נמשך עד 5 דקות עם ממשק מערכת ללא הגבלה בחזית, ברקע לפי תג
השקת אפליקציה חזית בלבד אוטומטית בגילוי תג

כיצד אנו משלבים BLE ו-NFC: תהליך שלב-אחר-שלב

  1. ניתוח — השגת מפרט GATT המלא של BLE (רשימת שירותים, מאפיינים, פורמטי נתונים) או יומן HCI מצוות הקושחה. ללא זה, הפיתוח הופך להנדסה הפוכה באמצעות nRF Connect או Wireshark דרך HCI.
  2. עיצוב — הגדרת ארכיטקטורת החיבור: תור פעולות GATT, שירותי רקע לאנדרואיד, חיבור מחדש בעת אובדן אות. שקלו משא ומתן על MTU וטיפול בשגיאות HMRoom.
  3. יישום — קוד ב-Swift/Kotlin עם פרטים ספציפיים לפלטפורמה (Universal Links, App Links, הודעות push דרך APNs/FCM לטריגרים). השתמשו ב-ProGuard/R8 (כיווץ) להגנת קוד אנדרואיד.
  4. בדיקות — על מכשירים אמיתיים מהיום הראשון. אמולטור BLE בסימולטורים אינו משחזר מקרי קצה של חיבור מחדש, אובדן אות או שינוי MTU. השתמשו באוטומציה המבוססת על XCTest ו-Espresso.
  5. פריסה — העלאה ל-App Store Connect / Google Play Console עם חתימת קוד ופרופיל provisioning תקינים. עבור iOS — TestFlight, עבור אנדרואיד — Firebase App Distribution.

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

פרטי משא ומתן על MTU החלפת MTU היא קריטית להעברת נתונים בכמות גדולה. בלעדיה, ברירת המחדל של 23 בתים מגבילה כל חבילה ל-20 בתים של תוכן. אנו תמיד מבקשים MTU עד 512 בתים בשתי הפלטפורמות, מה שמפחית פרגמנטציה ומשפר את התפוקה עד פי 5 עבור קריאות מאפיין גדולות.

מה כלול (תוצרים)

  • קוד מקור של אפליקציית המובייל עם שילוב BLE, NFC או IoT (Swift / Kotlin / Flutter / React Native)
  • תיעוד פרוטוקול GATT (מפת שירותים ומאפיינים)
  • בדיקות עומס על 10+ מכשירים אמיתיים (שגיאה 133, חיבורים מחדש, משא ומתן על MTU)
  • ניתוח ופתרון מקרי קצה (שגיאה HMAccessory, אובדן חיבור ברקע, קונפליקט עם background fetch)
  • הוראות בנייה ופריסה (חתימת קוד, TestFlight, Firebase App Distribution)
  • חודש אחד של תמיכה לאחר השחרור

השלמנו 45+ פרויקטים עם BLE/NFC/HomeKit. המהנדסים שלנו מוסמכים על ידי אפל וגוגל, וכל שלב בעבודה מתועד במערכת מעקב משויכת ל-commits. אנו משתמשים בגישת מהנדס-ללקוח: ללא הפסקות שיווק, גישה ישירה למפתח.

פנו למהנדסים שלנו להצעה מפורטת וקבלו ייעוץ עם סקירת המפרט שלכם. הזמינו שילוב turnkey — ננתח את יומן ה-HCI, נבדוק את מאפייני ה-GATT ונציע ארכיטקטורה תוך יומיים.