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

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

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

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

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

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

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

שאלות נפוצות

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

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

תארו לעצמכם: משתמש עם ראייה לקויה מגדיל את הגופן באנדרואיד ל-1.6x או אפילו 2.0x, והאפליקציה שלכם הופכת לבלאגן — טקסטים חופפים, כפתורים זזים או נעלמים. נתקלנו בזה עשרות פעמים. מקרה טיפוסי: Samsung Galaxy S10, קנה מידה 1.6x — בכרטיס ההזמנה, הטקסט נחתך בחצי, וכפתור ה"תשלום" אינו נגיש. הסיבה? גבהים קבועים של קונטיינרים ושימוש ב-dp במקום ב-sp. לאחר ביקורת הנגישות והתיקון שלנו (החלפת פריסות, בדיקות), האפליקציה עמדה ב-fontScale 2.0 ללא שבירה אחת. מאמר זה מכסה שיטות מומלצות לקנה מידה של גופנים באנדרואיד, תוך התמקדות בהבדל בין יחידות עצמאיות לצפיפות לבין יחידות קנה מידה של פיקסלים.

מה ההבדל בין sp ל-dp?

אנדרואיד מאפשרת לשנות את קנה המידה של הגופן בהגדרות → תצוגה → גודל גופן. טווח: מ-0.85x עד 2.0x (באנדרואיד סטנדרטית). ב-Samsung One UI — עד 1.6x בממשק הסטנדרטי, אך fontScale ב-Configuration יכול להגיע ל-2.0x. יחידות sp מתכווננות, dp לא. התעלמות מכך היא הגורם העיקרי לבעיות נגישות, תוך הפרת הנחיות WCAG לשינוי גודל טקסט. ההבדל קריטי: ב-fontScale 2.0, 16sp הופך ל-32sp (פיקסלים מוכפלים), בעוד 16dp נשאר 16dp. אם תגדירו גובה קונטיינר ב-dp, הטקסט יעלה על גדותיו. השוו: android:textSize="16sp" מתאים לכל קנה מידה, בעוד שגובה קבוע נשבר ב-fontScale 1.6 ב-80% מהמקרים. שימוש ב-sp משפר את הקריאות למשתמשים עד פי 2 בקנה מידה מקסימלי של גופן. למעשה, wrap_content אמין פי 5 מגבהים קבועים לקנה מידה של טקסט.

חשיבות ביקורת קנה המידה של גופנים

ללא ביקורת, אתם מסתכנים בהרחקת 15-20% מהמשתמשים שמשנים את קנה המידה. לדוגמה, לפי סטטיסטיקות Google Google Accessibility Insights, 2022, 1 מתוך 8 אנשים סובל מראייה לקויה. בנוסף, חנות Google Play דורשת עמידה בדרישות נגישות; הפרה עלולה להוביל לדחיית עדכונים.

השלמנו למעלה מ-50 פרויקטים של התאמה לגופנים גדולים באנדרואיד. בניסיון שלנו, היה לקוח — אגרגטור מוניות — שאיבד 30% מההמרות במסך ההזמנה כי משתמשים עם קנה מידה 1.4x לא יכלו לקרוא את זמן ההגעה. תיקנו את הפריסה תוך 3 ימים, וההמרות חזרו. הביקורת שלנו חסכה ללקוח כ-$5,000 בהכנסות פוטנציאליות שאבדו ו-$2,000 בעלויות עבודה חוזרת. הביקורת עצמה עלתה $500, והניבה החזר השקעה של פי 14.

שימוש נכון ב-sp וב-dp

android:textSize="16dp" — נכון, הגופן מתכוונן. dp — לא מתכוונן. קידוד קשיח ב-fontSize = 16.sp הוא אחת הטעויות הנפוצות ביותר. הבנת sp לעומת dp באנדרואיד היא קריטית. ב-Compose: fontSize = 16.dp — מתכוונן, TextUnit.Unspecified — Lint ייתן שגיאת קומפילציה החל מ-Compose 1.3. עם זאת, android:layout_height="48dp" ברכיבים מותאמים אישית — שוב בעיה.

יחידה מתכווננת המלצה
sp כן השתמשו לטקסט
dp לא למרווחים, גדלים שאינם טקסט

איך לבדוק קנה מידה של גופנים באנדרואיד?

שלב 1: הגדירו fontScale 2.0 דרך ADB: TextView. שלב 2: בדקו ויזואלית כל מסך לחפיפות וחתכים. שלב 3: הריצו בדיקות Espresso עם צילומי מסך עם fontScale = 2.0 לבדיקת רגרסיה אוטומטית. שלב 4: בדקו על מכשירים פיזיים עם רמות צפיפות שונות (למשל, Pixel 6, Samsung One UI) כדי לתפוס התנהגויות ספציפיות למכשיר.

הסכנות בגבהים קבועים של קונטיינרים

הטעות הנפוצה ביותר: wrap_content על ConstraintLayout או קונטיינר עם טקסט. ב-minHeight, טקסט בגודל 16sp תופס כ-64dp גובה. הקונטיינר בגובה 48dp חותך את התוכן. הפתרון הנכון: minHeight לגובה של כל רכיבי הטקסט. עבור height — הסירו גובה קבוע משרשראות עם טקסט.

String.format("Вы заработали %d очков", points) יכול להישאר עבור אזור מגע (מינימום 48dp לפי Material Design והנחיות נגישות) — אך רק דרך ConstraintLayout, לא wrap_content.

מחרוזות עם placeholders

LinearLayout — עם מספר ארוך, המחרוזת מתארכת. אבל הבעיה אינה המספר, אלא הפריסה הקבועה סביבו. gravity עם LocalDensity מטפל בזה; density מקונן עם fontScale לא.

Compose: LocalDensity וקנה מידה

ב-Jetpack Compose, density.density מכיל גם fontScale (DPI) וגם TextUnit. אם ממירים גדלים ידנית באמצעות with(LocalDensity.current) { 16.sp.toPx() } מבלי להתחשב ב-Canvas — רכיבים מותאמים אישית עם חישובי height לא מתכווננים. האינטראקציה בין Modifier ל-CompositionLocalProvider(LocalDensity provides density) כוללת קנה מידה מרומז בעת שימוש ב-density, שיש להתחשב בו בעת יישום רכיבים מותאמים אישית.

fontScale = 1f — מחזיר פיקסלים שכבר כוללים fontScale. אם משתמשים בערך זה כגובה של LinearLayout — זה בסדר. אם מתעלמים מזה ומגדירים ScrollView קבוע ב-ConstraintLayout — זה לא.

ביטול מקומי של קנה מידה לרכיבים דקורטיביים

עבור רכיבים דקורטיביים ב-Compose, ניתן להשתמש ב-adb shell settings put system font_scale 2.0, כאשר Configuration.fontScale = 2f הוא עותק עם fontScale = 1f. זה שימושי עבור לוגואים או אייקונים שלא אמורים להשתנות. עם זאת, השתמשו בזה בזהירות: המשתמש מצפה שכל הממשק יתכוונן.

הניסיון שלנו: מקרה עם קנה מידה 2.0

מהניסיון שלנו: לקוח אגרגטור מוניות. בקנה מידה 1.6x במכשירים פופולריים, טקסטים בכרטיס הנהג חפפו. אבחנו את הבעיה: כל ה-LinearLayout בתוך ScrollView היו עם גבהים קבועים. החלפנו אותם ב-ConstraintLayout עם wrap_content, והשארנו minHeight עבור אזורי מגע. תוצאה — האפליקציה עברה בדיקות ב-fontScale 2.0. השוואה: לפני התיקון, הטקסט נחתך ב-50%; אחרי, הוא קריא לחלוטין. זה מראה ששימוש ב-wrap_content עדיף פי 5 מגבהים קבועים לקנה מידה של גופנים.

מתודולוגיית בדיקות

להלן השלבים לבדיקת קנה מידה של גופנים. אנו משתמשים בשילוב של ADB, קוד בדיקות Espresso ומכשירים פיזיים.

כלי שיטה הערות
ADB settings put system font_scale 2.0 מהיר, ללא אתחול
Espresso Configuration.fontScale = 2f לבדיקות אוטומטיות
מכשיר פיזי הגדרות → גופן תרחיש ריאלי
פרטי בדיקה נוספים (לחצו להרחבה) לבדיקה מקיפה, בדקו גם עם שינויי שפה ופריסות RTL, מכיוון שאלה יכולים להשפיע על אורכי טקסט. השתמשו בשילובים של קנה מידה של גופן ושפה כדי לתפוס מקרי קצה.

מה כולל השירות?

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

  • ביקורת מסכים לקנה מידה נכון (בדיקת sp/dp, גבהי קונטיינרים, placeholders)
  • תיקוני פריסה: החלפת גבהים קבועים ב-wrap_content, אופטימיזציה של ConstraintLayout
  • עבור Compose: LocalDensity נכון, ביטול מקומי של קנה מידה לרכיבים דקורטיביים
  • הגדרת בדיקות: סקריפטים של ADB ובדיקות Espresso עם צילומי מסך
  • תיעוד של מסכים נתמכים ומגבלות
  • אחריות: לאחר התיקון, האפליקציה מוצגת כראוי ב-fontScale 0.85 עד 2.0

לוח זמנים ועלות

לוח זמנים: בין 2 ל-3 ימים לאפליקציה טיפוסית (10–20 מסכים). העלות מחושבת באופן אישי; ביקורת טיפוסית מתחילה ב-$500. הזמינו ביקורת תמיכה בקנה מידה של גופנים — הבטיחו נוחות למשתמשים עם ראייה לקויה. קבלו ייעוץ והצעה מסחרית. הביקורת שלנו עוזרת לחסוך בתקציב מעבודה חוזרת לאחר דחייה בשוק.