> Раз завёлся разговор про J2ME, а не Android, jar-файлы с мидлетами приходят
> на телефон не в прошивке, а в большинстве случаев по OTA (по воздуху)Не принципиально - обычно разница не более чем между предустановленным в ОС пакетом и доустановленным юзером лично.
> — есть такая технология доставки мидлетов, когда пользователь выбирает
> ссылку на описатель мидлет-сюиты jad-файл внутри мобильного браузера, а после согласия
> на доставку загружает мидлет(ы).
Ну спасибо тебе, Капитан, что рассказал нам про недо-реализацию репов по сути :)
>> А что если захочется НОВЫЙ КОДЕК заинсталлить?
> А зачем тебе новый кодек?
Мало ли. Ну вот гугель сделал VP8. Мне он нравится. И я им могу пользоваться на моих серверах не платя никому какие-то левые отчисления. Почему я им не должен пользоваться?
> Что положили в прошивку — пользуйся. Не нравится — меняй прошивку или покупай
> другой телефон.
Быдлопотребццтво процветало и пахло.
> В прошивке всё системное ПО отлажено и защищено от шаловливых ручёнок.
Ты хотел сказать - огорожено от меня, покупателя? Чтобы я лишний раз за телефоном поперся, потому что господа разработчики искусственно поспособствовали моральному старению?
>> что его не всегда разрешают политически - ну так за это
>> некоторые и не любят искусственно кастрированные платформы.
> То есть ты признаёшь, что в смартфонах кодек VP8 далеко не всегда
> можно заменить.
Да, но когда можно - это фича, а не баг. Ну вон на N900 вполне можно _любые_ кодеки доустановить, вплоть дo FLAC.
> И тем не менее утверждаешь, что обычный мобильник со
> прошитым VP8, который можно задействовать из J2ME, крап?
Да, крап. Ограниченный и неполноценный, ты сам это выше написал. А я разве опровергал тезис что излишне огороженные смарты - тоже крап? ;)
>> Ага, а вот FCAM на моем n900 реализует допустим кастомный алгоритм автофокуса.
>> И свои функции обработки картинок с матрицы. Не хочу ничего сказать,
>> но фотки получаются явно лучше чем родной камерой да еще и
>> в пережатый жыпег. А ява-кодеры смогут рожать только 100500 оболочек для
>> сосиски, при том сосиска делается не ими и вкуснее чем есть
>> - не станет.
> J2ME использует аппаратно-программные возможности, которые заложены в прошивку аппарата.
А в нормальных аппаратах их еще и расширять можно. Потребццтву - бой!
> Ничем не лучше и не хуже того же нативно-смартфонного ПО. Несложные
> алгоритмы пост-обработки изображений можно реализовать на Java. Байты везде байты.
Ага, только нежатые байты с камеры - в яве нифига не отдадут, а над жатыми нет особого смысла делать какие-то операции, поскольку там срач от жпега все испортит. А если бы и отдали, там нативный код то надрывается, чтобы хоть какое-то подобие реалтайма получить, ява вообще усрется. А ничего что один кадр 5мпикс камеры весит 10Mb? А сохранить хоть пару в памяти дадут? А память или лимит на нее - не кончится? :)
>> А глядя на фотки с андроидов я понимаю
>> что сосиска там пополам с картоном.
> Какие принципиальные трудности переписать пост-обработку мультимедийных данных с C++
> на Java, если это не для реального времени?
Во первых, ява-крап как правило не способен отдавать приложению несжатую картинку с камеры. И кстати, думаешь в FCAM кастомные дрова к ядру дописали чисто для прикола? А вот и хрен, без него доступ к всем элементам управления камеры в потребном виде получить не удается. В случае фотосъемки имеет смысл совместить кручение параметров съемки с постобработкой. Ну там например, HDR снять (а что, твой ява-крап умеет разную экспозицию в быстро шлепаемой серии из 3 кадров ставить?). Если что, HDR выглядит как-то прикольнее обычных фоток. Но явафоном его снять не светит - а нету там апи чтобы максимально быстро вбахать 3 кадра серией, с разной экспозицией и максимально быстро друг за другом (чем больше задержка, тем больше мазни). Потом по желанию можно их слепить (ага, всего 30 метров данных перепахать).
Во вторых, реалтайм - есть. Если аппарат будет снимать HDR слишком долго например - результат будет неприемлим (чем больше задержка между кадрами, тем сильнее мазня от тряски рук фотографа и перемещения движущихся объектов). Кроме того, даже в более простых случаях юзера не пропрет ждать в 3 раза дольше...
> Трудность в том, что специализированный софт УЖЕ написан на C/C++
> (опыт Symbyan и WinCE), а на Java его ещё предстоит написать или переписать,
Уточним: аналог FCAM ты на своей яве в принципе не напишешь. Это сочетание драйвера режима ядра и юзермодовой проги (на самом деле прог использующих сие апи есть несколько, позволяют довольно нетривиальные варианты съемки, типа съемки в темноте без шума и резко, или HDR, etc).
> так как в те времена J2ME работала только на полудохлых аппаратах, где не
> было тех ресурсов, что были в смартфонах с операционными системами. Сейчас
> ситуация изменилась — приложениям на Java и DEX-машины доступны те же
> аппаратные ресурсы, что и ранним смартфонным приложениям.
Ну напиши аналог FCAM на яве - с удовольствием посмотрю как это у тебя выйдет :). Правда я готов поставить 100 к 1 что это у тебя не получится. Вообще.
>> случае локальных приложений у мну политика более жесткая: я вообще не
>> запускаю программу если вижу основания ей не доверять.
> Как ты увидишь основания не доверять, где критерии доверия нативной программе,
Репутация автора/майнтайнеров. В особо параноидальном или подозрительном случае - вдумчивое чтение сырца.
> выполняющейся по сути в общем операционном пространстве с другими программами?
Ну вообще-то программы изолированы друг от друга. Хотя иногда можно укрепить сие контейнерами и виртуалками, если ожидаются особо-лютые хаксоры.
>> Как я смотрю, троянам не очень мешает разграничение прав.
> Конечно не мешает. Потому что троянские программы выполняются в одном пользовательском
> окружении с остальными программами. Защита памяти ничего не даёт, если троянская
> программа может элементарно изметь файл другой программы и/или её конфигурацию.
Ну в андроиде особо не может вроде, но это ж не мешает сливать по сети досье на пользователя, отсылать смс с текстом "не лох!" на короткие номера, качать рекламу (высаживая лимит траффика) и прочая.
> В мидлетах это невозможно — контрольные суммы не сойдутся при нарушении целостности
> class-файлов, а в J2ME используются песочницы, где мидлеты могут видеть данные
> только родной сюиты, jar-файлы не сохраняются в ФС, а переписываются/классы компилируются
> в защищённую область NAND.
По факту нет никакой "защищенной области NAND". Как максимум юзеру что-то не показывают. Но учтя что JVM, особенно J2ME как правило больше похожи на сито - толку то? Помнится в сименсах через J2ME бутлоадер патчили, чтоб не проверял загрузчики и позволял шить что попало. Такая вот "защита памяти". Ну а в случае цифровых подписей это действо просто факапнет загрузку до состояния "бесполезный кирпич" :)))
>> таким же успехом я или ставлю прогу, или нет. Поэтому если
>> я не доверяю программе - я просто ее не использую. Совсем.
> Логично.
В свете этого мне не понятно какой смысл в этом геморрое с подтверждением прав. Чисто информационная хрень, которая ничего не гарантирует, т.к. крапваре под андроид все-равно постоянно идет с адваре, спайваре и малваре и каждая вторая прога просит то чего ей по идее не надо, но надо ж рекламу крутить и данные юзера отсылать?! А не согласишься - не будет работать.
>> Т.е. про бесплатные/открытые программы можно забыть?
> Почему забыть? Например, OperaMini довольно хорошая бесплатная программа, позволяющая
> экономить трафик и гибко конвертировать контент под размер экрана мобильного устройства.
Ага, только ее сервера компрессии траффика забанены много где, а билайн не только детектит этот тип траффа но и зачем-то тарифицирует его 2 раза даже :)
> Никто не запрещает переделать OperaMini под свои задачи — есть довольно много
> усовершенствованных версий этой программы.
Игрушка для школьников. Для серьезных применений непригодно.
> Что, и Qt ты сам собственноручно перекомпилировал для своего N900, user294?
Нет, Qt там фирмой нокия скомпилен. Нокия, определенно, не будет трояны раздавать - это было бы самоубийственно :)
> Любой несертифицированный мидлет не способен отсылать SMS без разрешения со стороны пользователя.
> Видимо, ты один попался на этом и теперь ноешь.
И как это я один обнылся на весь интернет? У меня что, 100 рук чтоли? :)
>> Если прога работает с сетью - это вообще крындец.
> Так, "компьютер это сеть" — девиз Sun Microsystems. :)
Авторы малвари этот тезис одобряют.
>> Запускать поделки от умников типа тебя я просто не собираюсь - untrusted,
>> а мониторить каждый байт на предмет не сперли ли чего и не вгрузили ли дряни
>> - меня ломает, извини.
> Сдался ты мне.
Ну как бы такие любят рубать бабло по быстрому любой ценой, а если даже и не делают это, то уж идиотских ошибок в логике или криптографии допускают море. На радость хакерам.
>> Нет, я просто хочу запускать программы которым я доверяю. Например, открытым программам
>> от проверенных авторов я как правило доверяю.
> И у них есть сертификаты, подписанные доверенными CA? Откуда ты знаешь, может
> ту программу, которую тебе прислали по почте якобы знакомые, или которую
> ты скачал с сайта, подвергшегося взлому, не подменили?
На той же N900 - это просто репы. Обычные GPG ключи. А эти ваши CA... хм, а comodo и прочие DigiNotar - смогут подписать ComodoHacker'у и его последователям "расово верную программу", которой можно будет все и без вопросов? В случае репов - я должен изъявить желание доинсталлить ключ явно, что дополнительно подслащивает жизнь хакерам :)
> В J2ME на этот счёт есть система подписей и сертификации, а для твоей платформы
> что? Кому ты доверяешь на самом деле? "Доброму слову"?
Разработчикам и GPG ключам репов. Это кстати получше всяких DigiNotar'ов, в среднем по больнице.