Az Apple iMessage szolgáltatását elég sok kritika éri mostanában. Több alkalommal akadozott az utóbbi hónapokban, vagy a Mac-es kliense produkál furcsa dolgokat, és így az üzenetek sokszor nincsenek szinkronban az egyes eszközök között. Most egy újabb hiba bukkant fel, aminek utánajártunk.
A hibát egy reddit felhasználó osztotta meg talán elsőként, majd utána futótűzként kezdett terjedni twitteren is. A jelenség lényege, hogy például a következő két mondat esetén az utolsó szó eltűnik az üzenetből már küldés közben, ha a végére plusz szóköz kerül:
“I could be the next Obama ”
“The best prize is a surprise “
A tesztjeink alapján a probléma csak angol nyelven használt és csak retina kijelzős iPhone és iPod Touch esetén jelentkezik, tehát más nyelven, így például magyarul vagy mondjuk németül használva nem. A nem retina készülékek, így mondjuk az iPhone 3GS nem érintettek, ahogyan az iPad semelyik verziója sem.
Elküldés után mindez így néz ki egy iPhone 4S-en:
iPhone 3GS-en ugyanakkor hiba nélkül megjelenik a szöveg:
A retina kijelzős iPod Touch 4G esetén látható, hogy csak angolul használva tapasztalható a jelenség, magyarul rendben van minden. Egyúttal az is látható, hogy magyarra állítva a szöveg tördelése is változik, és az egyes buborékok szélessége is más, mint az angolon:
A Mac-es iMessage sem érintett, a szöveg ott is rendesen megjelenik, itt sincsenek hiányzó szavak:
Ráadásul ha kimásoljuk az ilyen csonka üzenetet, akkor a kimásolt szöveg tartalmazza az így lecsípett szót a mondat végéről is. Tehát az eltűnő szavak végül is ott vannak, csak a készülék nem jeleníti meg őket.
Nem összeesküvés és nem is cenzúra
A problémát valójában nem a mondatok tartalma adja, sem nem az, hogy be van-e kapcsolva a szöveg automatikus javítása vagy sem. Ráadásul csak retina kijelzős iPhone-okon és iPod Touch-okon jelentkezik, és azokon is csak akkor, ha angolra állítva használjuk őket, és már megnyitottuk az adott beszélgetést. Az összes beszélgetésünk listáját böngészve nincs ilyen gond, ott végig megjelenik a szöveg. Többen már összeesküvést és cenzúrát kiáltottak, miközben messze nem erről van szó. 🙂
Az egész oka igen prózai, és valójában a felhasznált betűk szélessége és a mondat karaktereinek a száma együttesen okozza. Az iOS-ben a Messages app szövegbuborékjai esetén a szöveget tartalmazó rész (textbox) maximális szélessége adott, hogy kiférjen a gondosan megtervezett grafikus felületre mindkét fél üzenete, és a dizájn is szépen mutasson. (Érdekes, hogy míg iOS-en a szöveg balra zárt igazítással jelenik meg, addig a Mac-es Messages-ben jobbra zártként: az egységesnek szánt dizájn szempontjából furcsa, hogy egy ilyen “apróság” nem egyezik.)
Az iOS tehát a szöveget bizonyos karakterszám után újabb sorba tördeli tovább, ezzel biztosítva a szövegbuborék maximális szélességének megtartását. Közben a buborék magasságát növeli, hiszen fel-le tudunk görgetni.
A gond például akkor jelentkezik, amikor a karakterek száma talán még nem éri el a kívánt értéket, de a betűk szélessége miatt már nem férne ki az adott sorba a szöveg, így azt a szöveget új sorba kellene tennie. Ehelyett azonban a mondat végi szó egyszerűen eltűnik a szövegbuborékból. Ha Obama vagy a surprise után nem teszünk újabb szóközt, akkor nincs gond, illetve ahogy fentebb már említettük, az adott üzenetdarabot kimásolva az tartalmazza a lecsípődött szövegrészt is.
A betűszélességet, mint okot a legjobban az alábbi példa bizonyítja. Míg a “wtf man my mind is blown ” szöveg kis w-vel kezdve probléma nélkül megjelenik, addig a “Wtf man my mind is blown ” esetén, tehát a szöveget nagy W-vel kezdve már szintén tapasztalható a lecsípődés:
Természetesen más, hasonló betűszélességet és karakterszámot eredményező mondatokkal is lehet próbálkozni, de minden esetben igaznak tűnik, hogy szóközzel kell zárni a szöveget.
Egy szóval nem kell attól tartani, hogy az Apple cenzúrázná az üzeneteinket, egyszerű szoftveres hibáról van szó.
Ki lesz az első, aki talál egy magyar példamondatot erre a hibára? 🙂
No comment yet, add your voice below!