Table of Contents
המונחים: iOS Custom Keyboard Extensions
iOS מספק מסגרת חזקה לבניית הרחבות מקלדת מותאמות אישית שיכול להחליף או להשלים את מקלדת המערכת. הרחבות אלה לרוץ כמו תהליכים נפרדים והם חולק, כלומר יש להם גישה מוגבלת משאבי מערכת ונתונים משתמשים.שיעור 'UIInputViewController' הוא הבסיס לכל מקלדת אישית, ניהול טיפול קלט, תצוגה ותקשורת עם היישום המארח.
מקלדת אישית יכולה לכלול כל פריסה, כולל דמויות מיוחדות, אותיות מודגשות, אימוג'ים, או אפילו קלט מבוסס מחווה.עם זאת, אפל מטילה כללים נוקשים: המקלדת אינה יכולה לגשת למשאבים ברשת ללא רשות משתמשים מפורשת, והיא לא חייבת לאסוף נתונים למפתחים עבור ניתוח ללא הסכמה ברורה.
כאשר אתה בונה מקלדת אישית, אתה בעצם יוצר הרחבה אפליקציה.הסיומת ארוז בתוך אפליקציה מארחת, משתמשים חייבים להתקין את האפליקציה הזו ולאחר מכן לאפשר את הסיומת באמצעות FLT:0Settings > כללי > Keyboard > Keyboard > KeyboardsFLT:1 בניגוד לאנדרואיד, iOS לא מאפשר להחליף את המקלדת המערכת באופן ידני.
עבור דמויות מיוחדות, הכוח האמיתי הוא בעיצוב דפוסי גישה יעילים. מפתחים רבים ליצור מקלדת כי סמלים הקבוצה באופן הגיוני, מציעים פופאפים בלחץ ארוך עבור גרסאות נוספות, או לספק שכבה ייעודית.הסעיפים הבאים עוברים בכל שלב של יצירת מקלדת מותאמת ייצור עם דמויות מיוחדות.
הקמת פרוייקט הרחבה Keyboard
יצירת מקלדת אישית מתחילה בתוך Xcode.You צריך גם אפליקציה מכולה וגם את יעד הסיומת המקלדת.
הוסף מטרה חדשה ב Xcode
פתח את פרויקט iOS הקיים שלך או ליצור חדש.לך ל-FLT:0 [איור וגילט; New > TargetmentFLT:1, ולאחר מכן בחר באפשרות:2Custom Keyboard הרחבהFLT 3:2 תחת הקטגוריה הרחבה יישומים. תן לו שם מוצר, כגון "CharKeyboard" Xcodes תבנית עם תת-התחליף של המבקר של .
מידע על נתונים
"Info.plist" של הסיומת מכיל שני מפתחות קריטיים תחת "NSExtension":
- (ב) ,0) ,ICapableFLT:1: הגדר ל'YES' אם המקלדת שלך משתמשת רק ב- ASCII; אחרת להגדיר 'לא'.
- (ב) ויקרא י"א: "ה' י': "ה', אם תכתבו את שפתכם מימין לשמאל.
- (ב) ויקרא י"א: "ה', כ"ד, כ"ד, כ"ד," (ב"ד).
בנוסף, הוסף את "פרטיות - תיאור מצלמה" רק אם אתה כולל תכונות קלט המבוססות על מצלמה (רעד למקלדת).
הבנת הבקשה הפתוחה
כברירת מחדל, מקלדת אישית אין גישה לרשת.אם אתה צריך להוריד ערכות אופי מיוחדים או לספק סינכרן ענן, עליך להוסיף מפתח "Request Open Access" תחת "NSExtensionAttributes" ב "Info.plist" ולהגדיר אותו ל-"YES" עם זאת, אפל ביקורות יישומים המבקשים גישה פתוחה בקפידה.
לבנות את הבסיס
שיטת "המראה" בתוך "KeyboardViewController" היא המקום שבו אתה מגדיר את פריסת המקלדת שלך.You יכול להשתמש לוח התכנון או לבנות את הממשק באופן רציונאלי.עבור פריסה מורכבת עם דמויות מיוחדות רבות, תוכניתית UI מציעה שליטה טובה יותר על מגבלות דינמיות ובטיחות אוטומטית.
override func viewDidLoad() {
super.viewDidLoad()
// Set up the main container view
let stackView = UIStackView()
stackView.axis = .vertical
stackView.distribution = .fillEqually
stackView.spacing = 4
stackView.translatesAutoresizingMaskIntoConstraints = false
self.view.addSubview(stackView)
NSLayoutConstraint.activate([
stackView.leadingAnchor.constraint(equalTo: view.leadingAnchor, constant: 4),
stackView.trailingAnchor.constraint(equalTo: view.trailingAnchor, constant: -4),
stackView.topAnchor.constraint(equalTo: view.topAnchor, constant: 4),
stackView.bottomAnchor.constraint(equalTo: view.bottomAnchor, constant: -4)
])
}
הגדרה מינימלית זו יוצרת ערימה אנכית שתחזיק בשורות של מפתחות.
עיצוב המקלדת Layout עבור דמויות מיוחדות
מקלדת אופי מיוחד דורש ארגון זהיר.משתמשים צריכים למצוא סמלים במהירות ללא ציד דרך דפי מפתח אינסופיים.התחל על ידי קיבוץ סמלים לקטגוריות לוגיות:
- (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
- (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
- (ב) ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
- (ב) ויקרא י"ד: ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
- (ב) ויקרא י"ד: ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇ ⁇
יישום שתי שכבות או שלוש שכבות הפריסה: שכבת אלפבית עיקרית עם מתפתל לעבור לשכבת סמלים, ואולי שכבת משנית עם דמויות פחות נפוצות. השתמש מפתח ייעודי (למשל, "123" או "#+=") כדי לעבור בין שכבות.כל שכבה היא אוסף נפרד של תצוגות שורות שניתן להחליף באמצעות רכוש "inputView" או על ידי הסתרת תצוגות.
כתבות ארוכות ל-Cre-Press Gestures for Other Characters
אם המקלדת שלך מציגה פריסת QWERTY סטנדרטית, משתמשים מצפים לחשיפה לגרסאות אופי.לדוגמה, דיכוי ארוך של מפתח "E" מראה "é", "è", "הה" ליישם זאת על ידי הוספת "AveybergstureRecognizer" לכל מפתח.כאשר מופעל, להציג תצוגה פופ למעלה מהמפתח עם האצבע הזמינה.
מקלדת המערכת של אפל משתמשת במנגנון פנימי, אבל עבור הרחבה שלך, אתה יכול להשתמש "UIView" המופיע כבועה צף.וודא כי פופאפ אינו משתרע מעבר לאזור הבטוח וכי הוא מכבד את הכיוון של המכשיר.
קוד סניפפט: הוספת עיתונות ארוכה למפתח
let longPress = UILongPressGestureRecognizer(target: self, action: #selector(handleLongPress(_:)))
longPress.minimumPressDuration = 0.3
keyButton.addGestureRecognizer(longPress)
בתוך המטפל, לעקוב אחר המדינה "מהפכה", ו"החלו" להראות, לעדכן ולבחור מהפופאפ.
גודל מפתח וספאג
מכשירי iOS משתנים ברוח מסך. השתמש בהתאמת פרופורציונלית: 10-12 מפתחות לשורה על אייפון, ועוד מעט על אייפדים. כל מפתח צריך להיות לפחות 28 נקודות גבוה כדי לעמוד בהנחיות של אפל לקוד מגע. הגדר מגבלות כך שהמפתחות מתכווץ כראוי על מסכים קטנים יותר.עבור דמויות מיוחדות, להבטיח כי סמלים גלויים בבירור; להשתמש בגודל של 16 נקודות עבור התווית.
עקבו אחרי Text Document Proxy
כאשר משתמש מקל על מפתח, המקלדת חייבת להכניס את הדמות לתחום הטקסט הממוקד כיום.זה נעשה באמצעות האובייקט 'טקסטופאומנט פרוקסי', מקרה של 'UITextDocumentProxy'.ה Proxy מספק שיטות כמו 'inertText (:)', deleteward() ו-'re'adtttexbys:'s.
עבור דמויות מיוחדות, לעתים קרובות צריך להוסיף glyphs (כמו אימוג'י או שילוב של diacritics) אלה מטופלים כראוי על ידי "insertText", כל עוד אתה עובר את המיתרים הנכון Unicode. לדוגמה, כדי להוסיף את הדמות המודגשת "é", התקשר «proxy.insertTextextext ("é") עבור שילוב של מבטא כמו "e" עם" (U: "com\" (com" הוא להוסיף "א" (com" (com) "לא ברור" (com" (com) "לא ברור" (com) "(com\" (com) "(com" (com) "לא ברור יותר" (com) "(com) "(com) "לא ברור) "(com) "לא ברור: "לא ברור" (com" (com" (com) "לא ברור: "לא ברור: "לא)" (com)" (com" עם זאת," (reme)" (remeeroxy.com" (com)" (rei) "לא" (com" (rei)") "לא," (Text") "לא" (Otra
החלפה ו Caps Lock
ניהול מצב של שינוי כדי לעקוף בין אותיות העליון ותחתיות, וסמלים אופציונליות העליון.כאשר מפתח השינוי פעיל, המקלדת שלך צריך להציג גרסאות מזוודה העליונה.עבור דמויות מיוחדות שיש להן מקרה (כמו אותיות יווניות), לספק את שניהם.עבור סמלים ללא מקרה, מצב השינוי ניתן להתעלם או לשמש כדי להציג סמלים חלופיים (למשל, שינוי + מספר פעמים מראה את הסמל מעל המספר).
השתמש במאפיין boolean "shiftActive" כדי לעקוב אחר המדינה.כאשר המשתמש מקל על מפתח השינוי, להקפיץ אותו ולטעום את המפתחות.עבור מנעולים, לזהות ברז כפול על מקש השינוי; לאפשר מצב של קפיצות מתמשך ולהראות אינדיקטור (למשל, תחת לחץ משנה).
בקרה ותיקון
למעט מפתח למחוק כי קורא "proxy.deleteward" (ב) "למקלדת תווים מיוחדים, משתמשים עשויים לדרוש למחוק מילים שלמות במהירות.You יכול ליישם פעולה "מילה נקייה" על ידי קריאה 'מחק Backward() 'לאה או באמצעות 'adtextition' שיטת כדי להעביר את ⁇ לאחור על גבולות, ואז למחוק את כל זאת, כמה שאתה יכול לתפעל את הטקסט דרך ה-"ד-"מסוג"מבקשה" של אפל" (textextext) דרך ה-" (Textextextex) דרך ה-"מכיוון שאינך יכול לתפעל את השיטה של טקסט ⁇ textextextextextption) דרך ה-" (reption) דרך ה-"מכיוון שאינך יכול לתפעל את שיטת ⁇ textextextption) דרך ה-"מכיוון שאינך יכול לתפעל את שיטת ⁇ textextextextextextextption) דרך ה-"מכיוון שאינך יכול לתפעל את השיטה של טקסט ⁇ textextextextextextption) דרך ה-"ד-"ד
כדי להעביר את ה ⁇ קדימה או אחורה, השתמש ב-'proxy.adjustTextPosition (על ידי צ'רקטר: 1) 'ו-'.זה משמש ללחיצת כפתור "מרחב הבא" או "מרחב מסוכן" אם תבחר לכלול אחד.
Enabling ובדיקת הרחבה Keyboard
בדיקות סימולטור
ב Xcode, להפעיל את אפליקציית המכולות על סימולטור, ולאחר מכן ללכת ל- FLT:0Settings > כללי > Keyboard > הוסף New KeyboardFLT:1 ובחר את הסיומת המקלדת מותאם אישית שלך תחת "הסיומת של צד שלישי" קטע.You עשוי להיות צריך לעבור למקלדת שלך על ידי לחיצה על האייקון כאשר הוא תמיד יכול להיות טקסט פעיל.
בדיקות התקן
בדיקות התקן חיוני כי סימולטור אינו מחקה לחלוטין את כל התנהגות iOS (למשל, מגבלות גובה מקלדת, תיקון אוטומטי) התקן את אפליקציית המכולה על מכשיר באמצעות פרופיל פיתוח מתן אפשרות לאחר מכן לאפשר את המקלדת מהגדרות. השתמש Xcode:0) כדי לעבד את FLT:1 תכונה כדי debug את הסיומת: ב debug navig, בחרפטטור (הרחבה של Xcode).
בעיות נפוצות
- Keyboard not showingFLT]: ודא שהסיומת מופעלת כראוי ו-'Request Open Access' זכאות תואם את הצרכים שלך.בנוסף, לבדוק כי המעמד 'Principal' ב 'Info.plist' נקודות ל'QinboardViewController' שלך.
- (FLT:0)לא לשפוך נכון את ה-FIRLT:1: Override ’view WillLayoutSubviews’ ב-’KeyboardViewController’ ועדכון את הריצוף הגובה של הנוף.המקלדת חייבת להתאים את הגובה הצפוי של המערכת (בדרך כלל בין 216 ל-30 נקודות על iPhone, גדול יותר על iPad).
- (ב) ,0) אין לרשום את ה- 1:1: בדוק שאתה קורא 'ינסטטקסט' על האובייקט הנכון של הפרוקסי זמין ברגע שהמקלדת פעילה.
פרטיות והודעות המשתמש
מקלדת אישית היא נקודה של דאגה לפרטיות של המשתמש.אפל דורשת כי מקלדת לא לאסוף, לשדר או לאחסן נתונים של מפתחות ללא הסכמת משתמשים מפורשת.ההנחיות הבאות הן קריטיות:
- (FLT:0) ללא שיחות רשתיות: אלא אם כן יש לך 'גישה פתוחה' המאפשרת למשתמש ורישיון, הסיומת שלך אינה יכולה לבקש בקשות לרשת.
- (ב) אין גישה ל-FLT:1: המקלדת שלך לא יכולה לקרוא את לוח המערכת.רק אפליקציה המארחת יכולה לגשת ללוח, ורק כאשר האפליקציה פעילה.
- (FLT:0) ללא ניתוח של מפתחי ה-FLT:1: אתה לא יכול להזין אילו מפתחות הם לחץ.אם אתה צריך ללמוד העדפות משתמשים (למשל, לעתים קרובות סמלים משומשים), לאחסן את הנתונים רק באופן מקומי עם הסבר ברור והאפשרות ללא תשלום.
- (FLT:0) לספק לעגמל לאיסוף מידע על איסוף נתונים: אם המקלדת שלך משתמשת ברשת עבור עדכוני אופי מיוחדים, כולל מתג ביישום המיכל כדי לאפשר / להשבית אותו, ולכבד את בחירת המשתמש.
כאשר משתמשים מאפשרים למקלדת שלך, iOS מציג אזהרה כי המקלדת יכולה לאסוף את כל הסקירות והדירוגים של האפליקציה שלך יסבלו אם משתמשים ירגישו שהמידע שלהם נמצא בסיכון.
טיפים עיצוב עבור גישה מיוחדת
ארגן סמלים לחוק Fitts
הניחו את הדמויות הייחודיות הנפוצות ביותר ליד מרכז המקלדת או בשורה התחתונה של נגיעה לאגודל קל יותר.לדוגמה, אם קהל היעד שלכם לעתים קרובות סוג מטבע, לשים $, € ו£ על השורה הביתית של שכבת הסמלים. קבוצות סמלים דומים יחד כדי להפחית עומס קוגניטיבי.
שימוש ב- Visual Feedback
כאשר מפתח הוא לחץ, הצג פופאפ קצר (כמו התצוגה של הדמות של לוח המקלדת של המערכת) כדי לאשר את הקלט.זה מועיל במיוחד עבור סמלים זעירים. ליישם את מותאם אישית "UIControl" עבור כל מפתח אשר מגיב למגע למטה אירוע ולהציג גרסה מובנת של הדמות מעל המפתח.
כולל תכונה אוטומטית-מתקדמים עבור סמלים
לאחר הוספת דמות מיוחדת, משתמשים רבים מצפים שהמקלדת תחזור באופן אוטומטי לשכבה האותיות.אפשר לעכל את ההתנהגות הזו עם אפשרות באפליקציית מכולה.זה הופך את התערובת של אותיות וסמלים מהר יותר.
תמיכה ב- Access
ודא כי VoiceOver יכול לקרוא את כל המפתחות. Set 'גישה ל-Label' על כל כפתור מפתח לאופי או בשמו (למשל, "סיכון" עבור *) עבור מפתחות סמליים שבו הגופר אינו ברור, לספק תיאור המדובר גם תמיכה סוג דינמי כך שמשתמשים עם הגדרות טקסט גדולות יכולים לראות את הסמלים בבירור.
שיקולים נוספים
אופטימיזציה
הרחבות מקלדת לרוץ בסביבה מחוסנת זיכרון. להימנע מטענות תמונות כבדות או אנימציה מורכבת. השתמש ב-"AUIbutton subclasses או "UICollectionView" לשימוש יעיל.על מכשירים מבוגרים, להפוך רשת מלאה של 30+ מפתחות צריך להיות חלק.פרופיל שלך עם מכשירים לבדוק טיפות מסגרת.
המונחים
אם המקלדת שלך תומכת בשפות מרובות, שקול לספק קבוצות סמל מקומיות.לדוגמה, משתמש צרפתי עשוי להיות צורך "", בעוד משתמש גרמני צריך ß ו ⁇ , Ö, Ö, uni. השתמש מפתח "PrimaryLanguage" ב 'Info.plist ' כדי לרמוז בשפת ברירת המחדל, אבל לתת למשתמשים לעבור דרך אפליקציית המכולה שנבחרה ב-'Dault's's's', עם העדפה משותפת (מעודכן) עם קבוצה (מעודכן) העדפה משותפת עם העדפה משותפת) העדפה (מעודכן) העדפה של קבוצת משתמשים).
App Store Review
Apple ביקורות טבלאות מקלדת מותאמות אישית יותר מאשר יישומים רגילים.לוודא שהמקלדת שלך לא מתרסקת, לא כולל תוכן פוגעני, ואינו מגביל את מערכת ההפעלה circumvent.הימנע מכרזות או עיכובים קידום מכירות על המקלדת עצמה.אם המקלדת שלך דורשת גישה לרשת עבור כל סיבה, להיות מוכן להצדיק אותה במהלך תהליך הביקורת.
עדכונים ותחזוקה
גרסאות של iOS חדשות עשויות לשנות את האופן שבו הסיומת המקלדת אינטראקציה עם המערכת.בדוק את הסיומת שלך על הודעות בטא ועדכון "UIInputViewController' יישוםs לפי הצורך.לדוגמה, iOS 16 הציגה API חדש למקלדת גבוהה יותר על אייפדים.
מסקנה
יישום מקלדת מותאמת אישית עם דמויות מיוחדות על iOS היא דרך עוצמתית לשפר את יעילות הקלדה עבור משתמשים הזקוקים לסמלים, אותיות מודגשות או אימוג'י כי לוח המערכת אינו עולה מיד. על ידי בניית הרחבה מקלדת עם פריסות מעוצבות בקפידה, גישה אינטנסיבית בלחץ ארוך, וטיפול קלט חזק, אתה יכול לספק חוויה חלקה.מעדינה פרטיות, לדבוק בהנחיות של Apple, בדיקה ביסודיות על בסיס אמיתי כדי להבטיח את האפליקציות שלך, עם כל אחד, עם תכונות רלוונטיות, עיצוב, לעתים קרובות, עם תכונות רלוונטיות, עם תכונות רלוונטיות, עם תכונות רלוונטיות, עיצוב, עם תכונות רלוונטיות, עם תכונות רלוונטיות, עיצוב, עם תכונות רלוונטיות, עם תכונות.
(ב) לעיין בתיעוד ה-Apple הרשמי של אפל על FLT:0 יצירת מקלדת אישית של כפל 1:2App מרחיבה את תוכנית התכנות GuideFLT 3: ו-FLT:4 Human Interface Guidelines for KeyboardssveFLT:5