olis wrote:Кстати, почему под Эппл нет преферанса ? Никто писать не хочет потому что денег не принесет?
Holy war: Android vs iOS
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
По большому счету, там не такие уж и технические сложности. На самом деле, мало мальски солидную игрушку изначально начинают писать на С/C++, так как таким образом проще игровой движок перенести с iOS на Android и в обратном направлении. Но ес-но таким образом можно авто-спортировать процентов 80 кода, а дальше остаются эти самые 20%, под которые нужно начинать портировать под разные размеры экрана, процессоры (я про скорость), модели производителей. Это в случае с Андроидом. К тому же игровая компания, которая бережет свою репутацию, не может просто так протестировать на десятке моделей Андроид телефонов и выложить в Google Play. Потому что есть очень хорошая вероятность, что на куче других телефонов - что-то пойдет не так или даже будет крэшаться. А это обозначает, что люди будут оставлять негативные ревью на Google Play и ставить низкий рейтинг, от которого потом отмыться очень сложно. А негативная репутация потом может аукнуться потом даже под App Store (типа, "а... нет, плохая игрушка, я или мой друг под Андроидом пробовал"). Вкупе с довольно печальными продажами игр под Google Play - это все приводит к тому, что разработчики не хотят тратить массу усилий и денег на портирование под кучу Андроидных телефонов и таблеток зная, что финансовый output будет не таким уж и хорошим.rzen wrote: с игрушками похоже та же картина, платить никто не хочет, соответственно подкидываться не охота. впрочем на игрушках я не хочу пока фокусироваться, там возможны технические сложности, может интеррапт просветит?
Для 3D игрушек возможно это будет некоторым образом сглаживаться тем, что многие начинают писать под Unity 3D. Но Unity не дешев - 1,500 за собственно Pro версию, и еще в дополнение 1,500 - за Android Pro и 1500 - за iOS Pro. Но и даже там, разработчик всегда захочет протестировать на всех современных телефонах (а я видел глюки у Unity под разные модели Android телефонов).
-
- Уже с Приветом
- Posts: 4935
- Joined: 02 Mar 2002 10:01
- Location: UK
Re: Holy war: Android vs iOS
На Эпплсторе нет, поиск во всяком случае ничего не находитИнтеррапт wrote:olis wrote:Кстати, почему под Эппл нет преферанса ? Никто писать не хочет потому что денег не принесет?
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Есть, я только что проверил на телефоне. PrefDesk называется. $0.99 стоит.olis wrote:На Эпплсторе нет
Ну и вот ссылка: http://itunes.apple.com/us/app/prefdesk ... 29978?mt=8
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Интеррапт wrote:По большому счету, там не такие уж и технические сложности. На самом деле, мало мальски солидную игрушку изначально начинают писать на С/C++, так как таким образом проще игровой движок перенести с iOS на Android и в обратном направлении. Но ес-но таким образом можно авто-спортировать процентов 80 кода, а дальше остаются эти самые 20%, под которые нужно начинать портировать под разные размеры экрана, процессоры (я про скорость), модели производителей. Это в случае с Андроидом. К тому же игровая компания, которая бережет свою репутацию, не может просто так протестировать на десятке моделей Андроид телефонов и выложить в Google Play. Потому что есть очень хорошая вероятность, что на куче других телефонов - что-то пойдет не так или даже будет крэшаться. А это обозначает, что люди будут оставлять негативные ревью на Google Play и ставить низкий рейтинг, от которого потом отмыться очень сложно. А негативная репутация потом может аукнуться потом даже под App Store (типа, "а... нет, плохая игрушка, я или мой друг под Андроидом пробовал"). Вкупе с довольно печальными продажами игр под Google Play - это все приводит к тому, что разработчики не хотят тратить массу усилий и денег на портирование под кучу Андроидных телефонов и таблеток зная, что финансовый output будет не таким уж и хорошим.rzen wrote: с игрушками похоже та же картина, платить никто не хочет, соответственно подкидываться не охота. впрочем на игрушках я не хочу пока фокусироваться, там возможны технические сложности, может интеррапт просветит?
Для 3D игрушек возможно это будет некоторым образом сглаживаться тем, что многие начинают писать под Unity 3D. Но Unity не дешев - 1,500 за собственно Pro версию, и еще в дополнение 1,500 - за Android Pro и 1500 - за iOS Pro. Но и даже там, разработчик всегда захочет протестировать на всех современных телефонах (а я видел глюки у Unity под разные модели Android телефонов).
-
- Уже с Приветом
- Posts: 4935
- Joined: 02 Mar 2002 10:01
- Location: UK
Re: Holy war: Android vs iOS
Да, я тоже попробовал. С есть iphones.ru ссылка. Но почему когда я набираю в поиске prefdesk на applestore ничего не находится?Интеррапт wrote:Есть, я только что проверил. PrefDesk называется. $0.99 стоит.olis wrote:На Эпплсторе нет
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Ну не знаю. Я набрал именно в телефоне и оно нашлось сразу же. И в iTunes нашлось.olis wrote:Да, я тоже попробовал. С есть iphones.ru ссылка. Но почему когда я набираю в поиске prefdesk на applestore ничего не находится?Интеррапт wrote:Есть, я только что проверил. PrefDesk называется. $0.99 стоит.olis wrote:На Эпплсторе нет
-
- Уже с Приветом
- Posts: 4935
- Joined: 02 Mar 2002 10:01
- Location: UK
Re: Holy war: Android vs iOS
У меня нет iTunes может поэтому. Но вообще странно все этоИнтеррапт wrote:Ну не знаю. Я набрал именно в телефоне и оно нашлось сразу же. И в iTunes нашлось.olis wrote:Да, я тоже попробовал. С есть iphones.ru ссылка. Но почему когда я набираю в поиске prefdesk на applestore ничего не находится?Интеррапт wrote:Есть, я только что проверил. PrefDesk называется. $0.99 стоит.olis wrote:На Эпплсторе нет
-
- Уже с Приветом
- Posts: 24375
- Joined: 18 Nov 2003 16:42
Re: Holy war: Android vs iOS
получается главная беда—фрагментация? какие то подвижки в сторону улучшения на этом фронте наблюдаются? у меня складывается впечатление что они в принципе отложили решение проблемы фрагментации на пару поколений, собссно даже не решение а просто дождаться когда старые девайсы отомрут а новые окажутся с более менее приемлимым общим знаменателем. это (очень) оптимистично два-три года. а к тому времени и софт подтянется.
вопрос таки остаётся насущным, а именно, найдут ли девелоперы под андроид модель монетизации не требующую от клиента платить $$ и как это повлияет на ландшафт доступного софта?
вопрос таки остаётся насущным, а именно, найдут ли девелоперы под андроид модель монетизации не требующую от клиента платить $$ и как это повлияет на ландшафт доступного софта?
Don't code today what you can't debug tomorrow.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Фрагментация - очень сильно влияет. Вон гугл уже разрешил несколько разных APK поставлять для одного приложения в Маркет, т.е. фактически признали, что для некоторых игр/приложений нужно делать разные билды для разных моделей телефонов или версий. Начинает напоминать J2ME в этом отношении. Такими темпами скоро пора будет доставать из загашников Antenna препроцессор и прикручивать к Андроиду, как в старые добрые времена. К тому же адаптация новых версий OS идет очень медленно. Например:rzen wrote:получается главная беда—фрагментация? какие то подвижки в сторону улучшения на этом фронте наблюдаются? у меня складывается впечатление что они в принципе отложили решение проблемы фрагментации на пару поколений, собссно даже не решение а просто дождаться когда старые девайсы отомрут а новые окажутся с более менее приемлимым общим знаменателем. это (очень) оптимистично два-три года. а к тому времени и софт подтянется.
всего 5% сидит с Android 4.x, остальные с 2.3.x, которая в конце-2010-го начале 2011-го года была выпущена. 20% пользователей вообще с 2.2 версией, которая в середине 2010-го вышла.
С фрагментацией по версиям - вообще непонятно как Гугл собирается бороться.
-
- Уже с Приветом
- Posts: 24375
- Joined: 18 Nov 2003 16:42
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Holy war: Android vs iOS
Так очень сильно влияет или для некоторых игр и приложений?Интеррапт wrote:Фрагментация - очень сильно влияет. Вон гугл уже разрешил несколько разных APK поставлять для одного приложения в Маркет, т.е. фактически признали, что для некоторых игр/приложений нужно делать разные билды для разных моделей телефонов или версий.rzen wrote:получается главная беда—фрагментация? какие то подвижки в сторону улучшения на этом фронте наблюдаются? у меня складывается впечатление что они в принципе отложили решение проблемы фрагментации на пару поколений, собссно даже не решение а просто дождаться когда старые девайсы отомрут а новые окажутся с более менее приемлимым общим знаменателем. это (очень) оптимистично два-три года. а к тому времени и софт подтянется.
Вы как опытный разработчик мобильных приложений какие конкретно проблемы испытываете в связи с фрагментацией андроид устройств?
In vino Veritas!
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
У меня было куча разнообразных проблем (начиная от сети, закачивая с open gl). В большинстве случае конечно не Гугл виноват, а underlying implementation некоторых функций производителем. Вот навскиду то, с чем столкнулся совсем недавно, это когда необходимо было определить user unique id. Ну ес-но начинаются переборы MSISDN, IMSI, MEID, MAC address, при чем на одних и тех же сетях и даже на разных телефонах от одного производителя - работает по разному (на одном MAC адрес определяется, на другом нет). Когда уже все казалось, что работает, в продакшене всплыло, что какая-то модель Самсунгов то ли для MSISDN, то ли еще для чего-то просто хардкодило один и тот же идентификатор для всех телефонов.crypto5 wrote:Вы как опытный разработчик мобильных приложений какие конкретно проблемы испытываете в связи с фрагментацией андроид устройств?
Ну и как обычно - разброс по экранам. Очень разнообразные размеры, screen density и т.п. Что в принципе приводит к тому, что нужно тестировать на очень многих девайсах.
Но конечно основная проблема, это когда видишь, сколько всяких вкусностей было добавлено в API в 3.x и 4.x версиях, а нет - использовать их не можешь, потому что baseline все-равно остается 2.2 версия.
Жить сейчас конечно можно. Андроид мне нравится хотя бы даже за то, что если непонятно как что работает - просто открываешь исходники Андроида и смотришь. Но вот очень не хотелось бы, чтобы этот разброс по версиям (и имплементациям от производителя) - продолжал увеличиваться и привел к полному зоопарку годика эдак через 3-4.
-
- Уже с Приветом
- Posts: 9035
- Joined: 25 Oct 2011 19:02
- Location: SVO->ORD->SFO
Re: Holy war: Android vs iOS
Оно сильно влияет на ВСЕ игры и большинство приложений. Разрешение экрана, разный чипсет (Tegra, Qualcomm и.т.д.), зоопарк версий самой OS, необходимость делать отдельные билды NDK для разных версий. NDK для MIPS только пару неделей назад появилась. Игровые движки помогают конечно. Сам я Unity yа Андроид не пользовался, но знаю людей, которые так и не смогли пройти кросс-платформенный квест и написали игру с нуля, выкуинв движок.crypto5 wrote: Так очень сильно влияет или для некоторых игр и приложений?
Вы как опытный разработчик мобильных приложений какие конкретно проблемы испытываете в связи с фрагментацией андроид устройств?
Могу еще рассказать про страшный секрет браузера в Андроиде, который даже в 4.x еще не умеет рендерить анимацию (и вобще любой рендеринг битмапов) на железе, когда iOS это умел со дня рождения? Это особенно смешно в свете маркетинга Гуглем Javascript'а и интерактивных веб приложений.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Анимацию в браузере - это вы про какую? GIF animation? Если GIF - то умеет. По крайней мере на моем My Touch 4G с Android 2.3 - GIF анимация рендерится. На каком-то из Дроидов я видел - что не рендерится.dotcom wrote:Могу еще рассказать про страшный секрет браузера в Андроиде, который даже в 4.x еще не умеет рендерить анимацию (и вобще любой рендеринг битмапов) на железе, когда iOS это умел со дня рождения?.
-
- Уже с Приветом
- Posts: 20128
- Joined: 21 Feb 2009 22:55
- Location: Лох Онтарио
Re: Holy war: Android vs iOS
Че-то как-то холивар сошел на нет.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Ну он остался в тлеющем состоянии и при случае - вспыхнет. Да и так уже - 170 страниц нахоливарили. Такими темпами топики про Глобал обгоним.perasperaadastra wrote:Че-то как-то холивар сошел на нет.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Holy war: Android vs iOS
Ну вы здесь плохого захотели просто. И еще помнится вы рассказывали что в иос-е такой финт ушами тоже как то не сильно проходил, или я ошиваюсь?Интеррапт wrote:У меня было куча разнообразных проблем (начиная от сети, закачивая с open gl). В большинстве случае конечно не Гугл виноват, а underlying implementation некоторых функций производителем. Вот навскиду то, с чем столкнулся совсем недавно, это когда необходимо было определить user unique id. Ну ес-но начинаются переборы MSISDN, IMSI, MEID, MAC address, при чем на одних и тех же сетях и даже на разных телефонах от одного производителя - работает по разному (на одном MAC адрес определяется, на другом нет). Когда уже все казалось, что работает, в продакшене всплыло, что какая-то модель Самсунгов то ли для MSISDN, то ли еще для чего-то просто хардкодило один и тот же идентификатор для всех телефонов.crypto5 wrote:Вы как опытный разработчик мобильных приложений какие конкретно проблемы испытываете в связи с фрагментацией андроид устройств?
In vino Veritas!
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Holy war: Android vs iOS
Игры наверняка не просто портируются, но речь выше шла о productivity приложениях. Я пока что не сильно вижу какие проблемы могут быть у них если исповедовать идеи резинового дизайна.dotcom wrote:Оно сильно влияет на ВСЕ игры и большинство приложений. Разрешение экрана, разный чипсет (Tegra, Qualcomm и.т.д.), зоопарк версий самой OS, необходимость делать отдельные билды NDK для разных версий. NDK для MIPS только пару неделей назад появилась. Игровые движки помогают конечно.crypto5 wrote: Так очень сильно влияет или для некоторых игр и приложений?
Вы как опытный разработчик мобильных приложений какие конкретно проблемы испытываете в связи с фрагментацией андроид устройств?
In vino Veritas!
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Ну не плохого, ес-но вся такая информация не передается, а передается только MD5 или SHA1 хэш без привязки к какой-либо персональной информации о пользователе, как бы это стандартная практика, куча приложений, которые вы загружаете, наверняка могут иметь аналитику от, например, Flurry - так что такого рода информация будет передаваться.crypto5 wrote:Ну вы здесь плохого захотели просто. И еще помнится вы рассказывали что в иос-е такой финт ушами тоже как то не сильно проходил, или я ошиваюсь?
В iOS такой финт вообще не пройдет, т.к. API по unique device id Эппл давече сделал deprecated. Зато можно получить MAC address без проблем, как в обычном Unix, в виде чего-то вроде
Code: Select all
// Setup MIB
int mgmtInfoBase[6];
mgmtInfoBase[0] = CTL_NET; // Request network subsystem
mgmtInfoBase[1] = AF_ROUTE; // Routing table info
mgmtInfoBase[2] = 0;
mgmtInfoBase[3] = AF_LINK; // Request link layer information
mgmtInfoBase[4] = NET_RT_IFLIST; // Request all configured interfaces
NSString* errorMsg = NULL;
char* msgBuffer = NULL;
size_t length;
// With all configured interfaces requested, get handle index
if ((mgmtInfoBase[5] = if_nametoindex("en0")) == 0) {
errorMsg = ...
}
else {
// Get the size of the data available
if (sysctl(mgmtInfoBase, 6, NULL, &length, NULL, 0) < 0) {
errorMsg = ...
}
else {
// Alloc memory based on above call
if ((msgBuffer = malloc(length)) == NULL) {
errorMsg = ...
}
else {
if (sysctl(mgmtInfoBase, 6, msgBuffer, &length, NULL, 0) < 0) {
errorMsg = ...
}
}
}
}
.. парсим и пропускаем через SHA1
В андроиде кстати с получением MAC адреса - только в новых версиях можно, если через Android API. А если по старинке (все-таки линукс) читать /sys/class/net/eth0/address то далеко не на всех телефонах срабатывает. На самом деле и с Андроидом и с iOS в этом отношении у меня все нормально имплементировано уже, просто на Андроид девайсах вот вылезали косяки на некоторых моделях, которые не были протестированы (все-таки тяжело на сотнях моделей тестировать).
Если не считать этого, то Андроид дает намного больше контроля и доступа к OS и к железу. Ну и одно из следствий - фрагментация.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Ну, например, вот эти самые идеи "резинового дизайна" - совсем не подходят для home screen widgets, например. Т.к. там скроллинга нет и все должно четко помещаться в определенные размеры. И начинают вылазить косяки. Например, в 4.0 в настройках есть возможность увеличить или уменьшить общий размер шрифта в системе. Если следовать рекомендациям Гугла и использовать "sp" units для шрифтов, то можно очень легко обломаться, если кто-то поменял общий размер шрифта в системе (а это еще и умеют делать кучи программ, не только в 4.0) - и весь интерфейс home screen widgets оказывается поломан. В таком случае остается применять "dp" units наплевав на тех, кто решил увеличить шрифт, т.к. у него не очень хорошее зрение.crypto5 wrote:Игры наверняка не просто портируются, но речь выше шла о productivity приложениях. Я пока что не сильно вижу какие проблемы могут быть у них если исповедовать идеи резинового дизайна.
Опять же, даже обычный интерфейс для приложений, если хочется, чтобы он был покрасивше, далеко не всегда можно уложить в стандартные layouts так, чтобы он красиво выглядел на разных разрешениях.
-
- Уже с Приветом
- Posts: 4637
- Joined: 24 Oct 2009 01:38
- Location: Chicago ;-) -> SFBA!
Re: Holy war: Android vs iOS
Ну на мой скромный взгляд много текста на виджеты кидать не стоит, а если там отдельные слова то ничего они не поломают.
Но это вроде уже совсем какая то другая степь, отдельная от темы фрагментации, будь у айфона виджеты были бы там такие же точно проблемы.
Но это вроде уже совсем какая то другая степь, отдельная от темы фрагментации, будь у айфона виджеты были бы там такие же точно проблемы.
In vino Veritas!
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
Еще как может поломать, даже на отдельных словах. Например, если у вас текст (например, имя города) и внизу картинка с погодой, которая занимает виджет до конца границы - то еще как поломает, если кто-то увеличит шрифт на 50%, например.crypto5 wrote:Ну на мой скромный взгляд много текста на виджеты кидать не стоит, а если там отдельные слова то ничего они не поломают.
Но это вроде уже совсем какая то другая степь, отдельная от темы фрагментации, будь у айфона виджеты были бы там такие же точно проблемы.
Ну про iPhone тут речь вообще не идет - виджеты в iOS - это даже сложно виджетами назвать
-
- Уже с Приветом
- Posts: 9035
- Joined: 25 Oct 2011 19:02
- Location: SVO->ORD->SFO
Re: Holy war: Android vs iOS
Все перемещения объекта UI из точки X1, Y1 в точку X2, Y2, любая трансформация, скроллинг, визуальные эффекты, - это все анимация. Посмотрите на видео двухлетней давности, где CTO Adobe (Кевин Линч который) показывает производительность Flash'а и JS/Canvas с bouncing balls. Так вот, как тормозило, так и тормозит. Спросите, на фига вам bouncing balls? И правильно спросите. Нам они не нужны. Но, как ни странно, элементарный скроллинг на Андродие, что на телефоне, что на таблетах хоть с >1GHz CPU сделать невозможно. Не получается плавно и все тут. Обещали нам GPU acceleration в 4.0. Не успели, - говорят. Вот хотели Chrome доделать для Андроида и сделать возможность Webview с Chrome'овым двигателем. Тоже не успели. Меня очень повеселила новая опция в 4.0 "Force GPU acceleration" в настройках. По умолчанию Off кстати.Интеррапт wrote: Анимацию в браузере - это вы про какую? GIF animation? Если GIF - то умеет. По крайней мере на моем My Touch 4G с Android 2.3 - GIF анимация рендерится. На каком-то из Дроидов я видел - что не рендерится.
-
- Уже с Приветом
- Posts: 17281
- Joined: 07 Sep 2011 10:05
- Location: Seattle, WA
Re: Holy war: Android vs iOS
А... ок. Я не понял просто про какую анимацию идет речь.
Кстати, GPU acceleration еще в Honeycomb появилась для девелоперов (для applications), правда по умолчанию была off.
Кстати, GPU acceleration еще в Honeycomb появилась для девелоперов (для applications), правда по умолчанию была off.