מיקרוסופט ואנדרואיד – לאן?

לפני כשנה בערך החלו שמועות לצאת מבחור בשם אוון נלסון (הידוע בטוויטר שלו כ-evleaks) על מכשיר של נוקיה שיקרא X ושהוא יריץ .. אנדרואיד. לאוון יש רקורד בהחלט מרשים של חשיפת מכשירים ותוכניות של חברות הרבה לפני שיצא מוצר כלשהו לשוק, אבל עדיין אנשים היו ספקנים. בכל זאת, באותו זמן העיסקה לבליעת חטיבת הטלפונים של נוקיה (יש לה עוד חטיבות) היתה לקראת סיום ומה פתאום שמיקרוסופט תשווק טלפונים מבוססי אנדרואיד? רבים סברו שמדובר בעוד מוצר שמהנדסי נוקיה עבדו עליו פנימית והוא לא יצא לשיווק.

המכשיר יצא, לא מכשיר אחד אלא שלישיה. הנה הוידאו של נוקיה שמציג את המכשירים:

אם תסתכלו בוידאו, לא תמצאו ולו אזכור אחד שהטלפון מריץ אנדרואיד. בנוקיה עשו הכל כדי לבדל את עצמם ממכשירי אנדרואיד הרגילים, בנו Launcher חדש ואף הזמינו מפתחים לעשות שינויים קלילים באפליקציות שלהם ולמכור אותם דרך ה-Nokia Store (אין Google Play באותם טלפונים. כמובן שלא לקח זמן רב עד שמישהו פירסם הוראות פשוטות איך לבצע root למכשירים ואיך להתקין את כל החלקים של גוגל על המכשירים).

מדוע נוקיה מוציאה את סידרה X עם אנדרואיד ולא עם Windows Phone? התירוץ הרשמי הוא שאלו מכשירים שמיועדים לארצות מתפתחות (יש למכשיר מקום ל-2 כרטיסי SIM) והמכשירים הם בעצם מכשירים זולים שיתנו גישה לשרותי מיקרוסופט ושבעתיד אותם משתמשים יעברו למכשירים היותר "אמיתיים" המבוססים Windows Phone. מי שמאמין לתירוץ הזה, יש לי גשר לשום מקום למכור לו.. באותן ארצות מתפתחות ה-Windows Phone מחזיק קרוב ל-0% בשוק בגלל שהמכשירים יקרים וכמות האפליקציות שכתובות עם ממשק בשפה המקומית שואף לאפס.

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

עד כאן הכל טוב ויפה. מיקרוסופט יודעת שהיא לא הולכת להרוויח מהשוק הזה כמעט שום דבר. למשתמשים שם יש חבילות DATA קטנות ויקרות, ולאנשים שם אין שום כסף עודף לרכוש אפליקציות בתשלום של מספר דולרים פר אפליקציה. אף אחד לא ירכוש חבילות Skype Out ואף אחד שם לא הולך לרכוש מקום על ה-Cloud של מיקרוסופט עם המכשירים הללו. זה נסיון של מיקרוסופט להתחרות ביצרנים מקומיים על השווקים המתפתחים, וזהו שוק מאוד תחרותי, שוק שרק לפני כחודש נכנסה אליו באגרסיביות מתחרה אחת שמוכרת למיקרוסופט – גוגל עם הפלטפורמת Android One שיציע למשתמשים מכשיר במחיר זול (פחות מ-100$), ללא כל מיני קאסטומיזציות, עם עדכונים ישירות מגוגל.

אז יש סידרת קצה תחתון למיקרוסופט בשם Nokia X שמריצה אנדרואיד, ושאר המכשירים נמצאים תחת השם Lumia משתמשים במערכת ההפעלה Windows Phone 8.1. אתה רוצה לפתח אפליקציה למכשירים של מיקרוסופט? לך כתוב את האפליקציה ל-Target של WP 8.1.

זוכרים את evleaks? ההוא שצדק עם ההדלפה על נוקיה X? אז לבחור יש הדלפה חדשה..

מה זה אומר בעצם? עד כה, כפי שציינתי לעיל, כל מכשירי ה-Lumia היו מריצים אך ורק Windows Phone ומפרט טכני שנע בין מעבד דו ליבתי ו-1 ג'יגה זכרון עד 4 ליבות ו-2 ג'יגה זכרון וכמובן גודל אחסון (Flash) שונים – 16,32,64 ג'יגהבייט וכו'. עכשיו הולך להיות גם מכשיר Lumia שמריץ .. אנדרואיד.

והבלאגן מתחיל.

קודם כל, למי שלא ידע, גוגל עובדת בשיטת הפיחות הזוחל בכל הקשור לפתיחת אנדרואיד. יש כמובן את גירסת ה-AOSP שהיא Android Open Source Project שכל אחד יכול לקחת אותה ולהרים  אותה על כל דבר, אבל לגוגל יש חלקים סגורים שגוגל בהחלט מעודדת את המפתחים להשתמש בהם. אתה צריך משהו יותר מדויק מה-GPS? צריך שרותי DRM? צריך סטרימינג חלק? מעקב תוצאות משחקים ועוד 1001 דברים? תשתמש ב-API של גוגל עם הקוד הסגור שהם לא משחררים. צריך לדחוף הודעות למשתמש? גוגל תשמח לתת לך את השרות במחיר מצחיק אבל שוב – תצטרך להשתמש במשהו שגוגל לא פתחה. אתה יצרן ציוד שרוצה להפיץ אנדרואיד ולתת שרותי עדכון? גוגל תשמח לחתום איתך חוזה ואתה תצטרך לעמוד בכמה דרישות כשחלק מהם זה שהחנות, עדכונים וכו' – עוברים דרך גוגל. השרותים האלו נקראים Google Mobile Services.

מה מיקרוסופט תעשה? תחליף את כל שרותי ה-GMS בשרותים משלה? טכנית הם יכולים לעשות זאת, אבל אז אנחנו חוזרים למצב שאין לך שום תאימות כמעט לאנדרואיד (חכו, עוד לא דיברנו על אפליקציות שכתובות ב-C או ++C עם ה-NDK), מה שיצריך חברות ומפתחים לשנות את האפליקציות שלהם כדי שהם ירוצו בסביבת ה-MSDroid (אם נקרא לזה כך), אבל מדוע שמפתחים יתאמצו בכלל לעשות זאת? מפתחים בודדים אולי יסכימו, אבל כפי שאמזון למדה על בשרה רק לפני מספר שבועות – חברות משחקים כמו EA או King פשוט לא מוכנות לעשות זאת. הן בונות אפליקציה שרצה על מכשירים פופולריים, מעבירות את ה-APK לגוגל ומרוויחות מהמכירות. גם יצרני חומרה שכותבים אפליקציות משלימות לציוד שלהם לא ישכתבו חלקים מחדש רק בגלל שמיקרוסופט ביקשה.

אז AOSP יהיה בעייתי, החלפת כל שרותי ה-GMS של גוגל בשרותי Windows Phone לא תעזור למצב. יש כמובן פתרון פשוט שמיקרוסופט תחתום הסכם רישוי עם גוגל, אבל זו תהיה ה-אירוניה של החיים: מיקרוסופט גובה מכל יצרן חומרה מספר דולרים פר ציוד מבוסס אנדרואיד או ChromeOS ופתאום מיקרוסופט תשלם על רישוי? זה בחיים לא קרה במיקרוסופט, הם רגילים להיות בצד השני, בצד שגובה, לא משלם (כמובן שאם היה קורה דבר כזה, הייתי מת להיות הזבוב על הקיר היכן שלארי פייג' נפגש עם מנכ"ל מיקורוסופט לדון בתנאים).

אז מה הולך להיות עם זה? מיקרוסופט בשום מצב לא הולכת לרדת מ-Windows Phone. אם היא תפתח איזו "סביבת תואמות", אז אני מאמין שגוגל תעשה למיקרוסופט מה שמיקרוסופט עשתה ל-IBM עם OS/2 (זוכרים את Win32S?) ופשוט תשנה חלקים ב-GMS, ומכיוון שרוב המכשירים בשוק מקבלים את עדכון ה-GMS אוטומטית, לא צפויה להיות בעיה למכשירים שמריצים אנדרואיד מלא של גוגל, אבל כן תהיה בעיה למכשירים של מיקרוסופט…

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

* תודה ל-ARS Technica על המאמר שלהם באותו נושא.

Comments

comments

5 תגובות בנושא “מיקרוסופט ואנדרואיד – לאן?

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

  2. מה הקשר בדיוק ל-Dalvik ו-ART?
    מבחינת המפתחים זה ממש לא משנה דבר.

    יישומי Android נבנים בתור bytecode, זה מה שהסביבה (הן המבוססת Eclipse והן מה שמכונה "Android studio" שזה למעשה IntelliJ אאל"ט) מייצרת.
    למעשה, הם משתמשים בקומפיילר הרגיל של ה-JDK הרשמי כדי לייצר את הקובץ הבינארי, ורק לאחר מכן עושים כמה שינויים ב-bytecode כדי להפוך את הקובץ "תואם Dalvik".

    אבל זה לא הולך להשתנות עם כניסה של ART.
    ART עובד על המכשיר עצמו. הוא מקבל את ה-bytecode של Dalvik בתור קלט וממיר אותו לשפת מכונה native.

    אם Google תכריח מפתחים לבנות ישירות ל-ART, מה שתאורטית אפשרי, היא תהיה בצרה משתי סיבות:
    א) היא מיד תשבור את כל האפליקציות שיש היום בחנות שלה.
    ב) היא תאבד את היכולת שיש לאפליקציות ללא רכיב native (שזה עדיין הרוב) לרוץ על כל ארכיטקטורת מעבד, בין אם זה ARM, MIPS או x86.

    למעשה, לבנות "ישירות ל-ART" משמעו לאמץ את השיטה של Apple ושפוט לייצר בינאריים Native מראש.
    באותה מידה אפשר לזרוק את Java מהחלון ולהתחיל לעבוד לחלוטין ב-++C.
    זה אפילו יפתור את הבעיה מול Oracle, אבל נראה לך שזה יקרה?

    בקיצור – כרגע, ART לא משנה דבר מבחינת המפתחים, ואם אי פעם Google תגרום לכך שזה יהיה המצב, הרי שהיא תירה לעצמה ברגל.

    לגבי MS ו-GMS הם יכולים לעשות את מה שפרויקט Replicant מנסה לעשות:
    לבנות API תואם לשירותים של Google בתוך Android, כאשר מאחורי שמות פונקציות מסתתר למעשה קוד ושירותים של MS.

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

    מה יהיה הלאה?
    מעניין בהחלט…

סגור לתגובות.