У вас тоже так?2
Раньше после покупки нового смартфона, ты в первую очередь устанавливал нужные приложения. Сейчас, наоборот, удаляешь все ненужные
Раньше после покупки нового смартфона, ты в первую очередь устанавливал нужные приложения. Сейчас, наоборот, удаляешь все ненужные
В одном из обсуждений, в комментарии, я упомянул, что скоро попробую заюзать приспособу для превращения практически любого смартфона на Android без eSIM в вариант оснащенный eSIM, но тогда посылка ещё была в пути. Ну что же, начинаем начинать...
Начнём, пожалуй, с того, что такое eSIM. eSIM (embedded SIM) — та же самая "симка", но физически распаянная на материнской плате смартфона. Так было до недавнего времени, пока товарищи из Германии не придумали запихнуть eSIM в формат обычной СИМ карты. Сразу возникает вопрос - нахера, а главное - зачем? Ответ прост. На такую eSIM можно закатать несколько десятков профилей обычных СИМ карт и переключаться в нужный момент. Другой плюс - зарубежные поездки или путешествия. Сидя дома, покупаешь eSIM местного оператора, садишься в самолёт и при выходе из него, у тебя уже есть местная связь и мобильный интернет за адекватные деньги. Другое но - количество смартфонов с поддержкой eSIM довольно ограниченное и покупать новый только из-за eSIM, как-то не сильно рационально.
Теперь о личном опыте. Сразу скажу, не реклама, ничего с этого не получаю и не получал.
Первое с чего нужно начать, посмотреть, поддерживает ли Ваш смартфон такую eSIM. Сделать это можно установив приложение или по ссылке:
https://esim.me/popular-brands
После того, как выяснили, что Ваш смартфон будет работать, выбираете, сколько профилей Вам нужно и выбираете из трех - Single 5 профилей - одно устройство - 24,95€, Multi -10 профилей - любое устройство одного бренда - 39,95€ или Omni - 15 профилей - устройства любого бренда - 69,95€.
У меня последний вариант, который я купил в половину цены, в Чёрную Пятницу.
Далее оформляете заказ и ждёте. В РФ у них есть доставка, что проверено лично. Примерно через пару недель, я получил пакет на почте.
Внутри небольшая картонная упаковка с eSIM в формате обычной СИМ карты.
Внутри инструкция по активации eSIM.
Ставим приложение, из которого узнаём, что мой смартфон поддерживает эту eSIM только в первом слоте. Тут же можно узнать какая у Вас версия eSIM. В моём случае это Omni на 15 профилей eSIM.
Далее идём в меню и жмём большой плюсик, чтобы добавить eSIM. Я оформил eSIM от Тинькофф. Наводим камеру на QR-код, полученный от оператора и... нихера не произошло. Пишет eSIM не обнаружена, перезагрузите телефон. Перезагрузил и всё завелось.
Профили eSIM переключаются только из приложения, а вот дальше, Вы вправе вынуть эту eSIM и переставить в любое устройство, при этом оно продолжит работать с последним активным профилем.
К сожалению, не знаю в какое сообщество определить, так как эта информация подходит для путешественников, бизнесменов и еще для множества разных ситуаций.
Так как покупал, тестировал и писал сам, тег "Моё".
Цены ниже, но на тарифе за 12 баксов только два профиля. Далее нужно докупать.
Список поддерживаемых устройств:
По отзывам - принцип работы тот же. Управляется через приложение, но перевод более корявый.
Что выбирать, решать только Вам :)
Компания Xiaomi не собирается упрощать отключение рекламных баннеров в своих смартфонах. Китайский производитель не планирует добавлять на устройства единый переключатель, который бы изменял настройки во всех приложениях сразу.
Xiaomi намерена «переоптимизировать» свою бизнес-стратегию, в результате чего количество предустановленных приложений на смартфонах уменьшится, заверили в компании. Эти изменения должны улучшить пользовательский опыт, заявил представитель Xiaomi.
В китайской компании дали этот комментарий после того, как в сети появились слухи о том, что в смартфонах Xiaomi появится возможность отключить всю рекламу разом. Судя по всему, в обозримом будущем такой опции не будет.
Убираем рекламу в Xiaomi для любой версии MIUI. Инструкция
1. Настройки телефона – Пароли и безопасность – Доступ к личным данным – Отключаем ползунок у служб msa и MIUI Daemon. Так же можно смело отключить еще Отчет и Безопасность.
2. Настройки телефона – Пароли и безопасность – Конфиденциальность – Рекламные службы – Отключаем ползунок Персонализированная реклама.
3. . Настройки телефона – Конфиденциальность – Реклама – Отключаем персонализированную рекламу, отключаем и удаляем рекламный идентификатор.
4. Настройки телефона – Рабочий стол – отключаем ползунок Показывать предложения.
5. Приложение «Безопасность» - настройки – Отключаем ползунок Получать рекомендации
6. Приложение «Безопасность» - Очистка - Отключаем ползунок Получать рекомендации
7. Приложение «Загрузки» - нажимаем на три точки в правом верхнем углу – настройки - Отключаем ползунок Получать рекомендации.
8. Приложение «Тема» - нажимаем профиль – настройки – Отключаем ползунки Персональные рекомендации и показывать рекламу.
9. Приложение «Проводник» - нажимаем меню в левом верхнем углу – настройки – информация – Отключаем ползунок Получать рекомендации.
10.Приложение «Mi Video» - Профиль – настройки – Отключаем ползунок Персональные рекомендации.
11. Приложение «Музыка» - нажимаем меню в левом верхнем углу – настройки – расширенные настройки - Отключаем ползунок Показывать рекламу и можно тоже отключить Показывать рекомендации при запуске.
12. Если нет блокировщика рекламы в интернете и не хочется заниматься установкой, то скачиваем Google Play браузеры Brave или Vivaldi, в них встроены собственные мощные блокировщики рекламы. Либо можно скачать оттуда же браузер Kiwi и установить любые расширения из магазина Google, как на ПК. Или устанавливаем приложение Adguard, но тут придется немного поковыряться в настройках при установке.
13, Если у вас есть папки, то открываем ее – нажимаем на название папки – Отключаем ползунок Рекомендуемое сегодня.
14. Приложение магазина Mi Picks – нажимаем меню в правом верхнем углу – настройки – конфиденциальность - Отключаем ползунок Получать рекомендации.
15. При установки приложений, когда идет проверка – нажимаем на шестеренку в правом верхнем углу - Отключаем ползунок Получать рекомендации.
16. Приложение Google Play – нажимаем на профиль – Play защита – нажимаем на шестеренку в правом верхнем углу – отключаем ползунки «Сканирование приложений с помощью защиты» и « Помочь улучшить защиту».
17. Настройки телефона – Уведомления и центр управления – Уведомления приложений – Отключаем уведомления всех ненужных приложений (на ваш выбор)
18. Настройки телефона – Уведомления и центр управления – Дополнительные карточки – отключаем ползунок «Умный дом»
19. Настройки телефона – Пароли и безопасность – Конфиденциальность – Найти устройство – отключаем ползунок сервиса Найти устройство (по вашему желанию)
20. Настройки телефона – Пароли и безопасность – Конфиденциальность – отключаем ползунок Участвовать в программе улучшения качества. Идем ниже – Использование и диагностика – отключаем ползунок Использование и диагностика.
21. . Настройки телефона – Приложения – Все приложения – удаляем все ненужные приложения. Если приложение ненужное, но удалить нельзя, то заходим в само приложение – контроль активности – ставим Жесткий режим, чтобы оно никак не функционировало, можно еще отключить и Мобильный интернет с Wi-Fi.
Наслаждаемся телефоном без рекламы.
Я большой фанат Linux на мобильных системах и давно слежу за такими проектами, как Meego, Maemo и конечно же, Sailfish-подобными ОС. Недавно я самолично написал в компанию F+ и попросил какой-нибудь смартфон на «Авроре» для статьи и на моё удивление, представители компании согласились! Что из себя представляет R570E, какова «Аврора» с точки зрения обычного пользователя, какие проблемы могут возникнуть у разработчика и есть ли у этой системы перспективы? Читайте в сегодняшней статье!
Пожалуй сейчас Linux'ом на смартфонах и мобильных системах никого не удивить. Ядро Linux используется в ОС Android, благодаря чему хотя бы одно устройство с пингвином на борту можно найти почти в каждом доме. Однако Android использует именно само ядро Linux, выстраивая вокруг него собственное пользовательское окружение (или более корректно — userspace): подсистема абстракции от железа (HAL), оконная система и фреймворк для приложений. На десктопных же системах используется стек, известный как GNU/Linux, предоставляющий этакое знакомое нам unix-окружение со стандартным набором программ, glibc и компилятором GCC. При этом Android абсолютно не совместим с программами, собранными для обычных GNU/Linux систем как раз таки из-за преусловутой glibc (вместо неё в Android используется bionic и свой собственный динамический линкер), и поэтому многие гики хотят запустить полноценный дистрибутив на мобильном устройстве.
Но благодаря тому, что ядро Linux распространяется по лицензии GPL3, производители смартфонов обязаны открывать исходный код своих модификаций ядра под собственные устройства. И пока развивалась моддинг-сцена Android с такими кастомами, как CyanogenMod или, например, MIUI, на некоторые устройства выходили такие диковинные системы, как Ubuntu Touch, pmOS и, конечно же, Sailfish OS.
Linux на мобильных устройствах берёт своё начало ещё с середины 2000-х годов. Именно в это время компания Motorola решила использовать в своих продвинутых устройствах ядро Linux, а если более конкретно — построить собственную оболочку Motorola EZX на базе MontaVista Linux. Немудрено, что систему быстро хакнули и наделали для неё кастомного софта, патчей и других примочек. Примерно в тоже самое время компания Nokia начала развивать линейку собственных интернет-планшетов на базе дистрибутива Linux под названием Maemo.
В 2007 году на свет появился первый полностью открытый смартфон (в том числе и с аппаратной точки зрения — то есть принципиальная схема, разведенная плата и иные необходимые для постановки устройства на конвейер документы) Neo 1973, построенный на базе хакнутого проектом OsmocomBB модема TI Calypso и ОС OpenMoko, который получил умеренный успех среди Linux-гиков. А в 2009 году вышел легендарный Linux-смартфон Nokia N900, который до сих пор считается одним из самых удачных и успешных гиковских смартфонов из когда-либо выпущенных.
И вот в 2011 году Nokia, почти полностью перешедшая на Windows Phone и остановившая развитие Symbian, выпускает свой последний гиковский смартфон — Nokia N9, который в некоторых аспектах стал «батей» многих фишек в современных смартфонах. Несмотря на популярное заблуждение, N9 работает не на Meego, а на Maemo со значительно доработанным пользовательским интерфейсом. И как раз UI устройства был крайне необычным и на своё время прорывным: управление системой жестами, наличие двух всегда доступных страниц, своё видение шторки уведомлений и очень плавная работа. Когда стало ясно, что Nokia больше не будет выпускать Linux-смартфоны, несколько инженеров компании основали свою собственную фирму Jolla и продолжили развивать Meego для полноценного запуска на Nokia N9. Результатом их работы стала новая система — Sailfish OS.
Такие разные: N9 вышел флагманским смартфоном в 2011 году, в то время как R570E корпоративным и относительно бюджетным в ~2023. Но всё же в R570E есть частичка работы инженеров той самой Nokia, причём довольно большая.
Основной фишкой системы было наличие инкрементальных обновлений, возможность разработки приложений с использованием Qt (т. е в отличии от Android, все приложения и подсистемы полностью нативные, а не написаны на Java), и довольно неплохая совместимость с обычным ARM-софтом для других дистрибутивов Linux. Со временем Ростелеком увидел перспективы в Sailfish OS и выкупил долю в компании, начав работу над своим собственным форком этой системы — ОС «Аврора». С годами «Аврора» полностью отделилась от материнского проекта и начала развитие в другом направлении: если Sailfish OS была системой для гиков и просто пользователей, то «Аврора» больше нацелена на Enterprise-сегмент (т. е. «госка»), на гиков и только потом на конечных пользователей.
И мне, как фанату Linux на мобильных устройствах, очень хотелось пощупать и заполучить свой собственный девайс на этой ОС. Набравшись смелости, я написал в PR-отдел F+ и через пару недель получил положительный ответ. Радости моей не было предела! Но когда девайс пришёл ко мне, начались определенные трудности...
Прикладывать скриншоты деловой переписки -- плохой тон, однако в случае с F+ всё было максимально приятно: ребята поняли, что девайс поедет к гику и дали свободу воли и перо в руки автору, т. е. мне :)
Начать стоит с распаковки девайса. Ко мне смартфон пришёл «не новым», его уже распаковали и накатили на него некоторые тестовые приложения для внутренних нужд PR-отдела. Кроме того, у меня стоит «особенная» версия Авроры 5.1, доступная пока ещё не всем пользователям.
В коробке нас встречает сам девайс, защитное стекло (девайс всё таки защищенный) на дисплей, краткий мануал по использованию «Авроры» (в кои-то веки он нужен!), а также скрепка, Type-C кабель и 5В/2А блок питания. В рознице к девайсу прилагаются ещё и TWS-наушники.
Поскольку смартфон предполагается защищенным по стандарту IP68 (пыленепроницаемый и способен выдержать погружение в воду на длительное время), он выполнен в прорезиненном корпусе с небольшой выемкой для дисплея. В руке лежит хорошо, хоть и полноват.
После включения нас встречает логотип «Авроры», а затем и предложение ввода пин-кода (есть также сканер отпечатков пальца). Enterprise-направленность девайса видна сразу: MDM-политики, возможность удаленного бана украденного устройства по ключу активации системы и возможность добавления своих репозиториев с софтом помимо возможности установки RPM и использования стандартных репозиториев ОМП.
Характеристики девайса следующие:
Процессор: MediaTek Helio A25. 2020 год, 8 ядер Cortex-A53 на частоте от 1.5 до 1.8ГГц (пламенный привет MT6753 в любимых мной китайских айфонах). В целом, это довольно бодрый по меркам бюджетника чипсет, именно A25 сейчас частый гость на смартфонах до 5-6 тысяч рублей.
GPU: PowerVR GE8320 на частоте 600МГц. В целом, GPU можно назвать гордостью девайса: и если с 3D-играми на Авроре и Sailfish вяло, то для эмуляторов даже относительно тяжелых консолей он подойдет замечательно.
Память: eMCP «бутерброд» с 4Гб предположительно LPDDR4 оперативной памяти и 64Гб eMMC 5.1 постоянной памяти. UFS-флэшки чипсет не поддерживает в силу своей бюджетности.
Дисплей: 5.7" IPS HD+ матрица. Вполне годная, очень похожа на матрицу моего китайского айфона, есть ощущение что на современных бюджетниках используется +- похожие дисплеи.
Звук: есть 3.5мм джек! Это настолько редкость сейчас, что я выделил эту фичу в отдельный пункт.
Сеть: Wi-Fi a/b/g/n ac, Bluetooth 5.0, 2G, 3G, LTE. Стандартный минимальный набор.
Камера: 13Мп + 2Мп
Аккумулятор: 5080мАч, литий-полимерный. Для броневика ёмкость средненькая.
В целом, аппаратно R570E - больше классический китайский OEM-смартфон на привычной MediaTek'овской платформе. Мне говорили, что есть какие-то изменения в плате "под капотом", однако девайс я пока не разбирал. Если F+ выложит в общий доступ схему устройства, то смартфон сможет похвастаться ещё и повышенной ремонтопригодностью, что очень актуально как для шаловливых энтузиастких ручек, так и для компаний, закупивших девайс для бизнеса. В целом, как по мне, — характеристики вполне неплохие, но стоит иметь в виду, что я почти всю жизнь пользовался бюджетными девайсами и выжимал из них все соки, так что мне привычно доводить девайс до идеала и после покупки.
Но в случае R570E, самое важное в девайсе — это «Аврора». И на её пользовательские качества мы сейчас с вами и посмотрим.
Сначала предлагаю взглянуть на «пользовательскую» часть системы. Недавно пользователям начали прилетать апдейты с «РуСтором» на борту (в бета-ветке), однако мой смартфончик пока что обделен этим обновлением. Об этом чуть позже.
Как и «батя» в лице Sailfish OS, «Аврора» управляется полностью жестами. Некоторые обзорщики сравнивают UI Авроры как «украденный у Android и iOS», однако это не так: корни интерфейса уходят в Nokia N9, из которого как раз все всё и позаимствовали спустя почти 10 лет. Несмотря на бюджетный 4-х летний чипсет, девайс работает очень плавно и у него есть адекватная многозадачность.
По умолчанию в системе предустановлен классический набор приложений, плюс ярлыки PWA можно выносить на рабочий стол. К слову о браузере — здесь используется Firefox 78 (2020 год) с самопальным интерфейсом, который всё ещё открывает большинство сайтов, но стремительно теряет актуальность. С апдейтами обещали обновить и WebView, едва-ли 78'ой останется актуальным в 2025 году.
R570E неплохо подходит и по основному предназначению (т. е. как телефон): номеронабиратель удобный, есть импорт контактов из Exchange, vcf-файлов и других телефонов. Что ещё, собственно, нужно? Приложение для обмена SMS самое обычное, ничего примечательного.
Само собой есть встроенный плеер для прослушивания музыки. Из-за броненаправленности смартфона, мне не удалось нормально подключить мои основные полноразмерные наушники, но в целом качество ЦАПа... на уровне остальных смартфонов с MTK на борту: нормально, но после флагманских BlackBerry с ЦАП'ом Wolfson, смартфонов Sony или ZTE Axon с аж двумя отдельными аудиотрактами (!) хочется вернуться всё же к флагманам: А вот что в плеере не понравилось, так это отсутствие эквалайзера: плеер совсем простенький.
В целом, понравился клиент почты. Есть интеграция с российскими сервисами, плюс поддержка POP3/IMAP-ящиков. Сам клиент шустрый и удобный. Единственный момент - не работает поиск по всему ящику, только по синхронизированным сообщениям и не сразу заработал SMTP gmail'а.
Поговорим о камере. Модуль здесь бюджетный, на уровне флагманских смартфонов эдак года 2013-2014. По качеству выдает картинку близкую к Galaxy S2-S3, но немного не хватает цветокоррекции. Макро тоже у смартфона получается "с трудом", по крайней мере в авторежиме. Правда всё это можно объяснить тем, что для камеры у MTK есть куча блобов с различными алгоритмами для улучшения изображения, и эти блобы разработаны для использования с Android и возможно Аврора использует лишь самый простой вариант захвата изображения с камеры:
Также я накатил клиент Telegram «Tavro» на базе библиотеки TDlib, который вполне неплох... однако его полная версия платная. Впрочем, подразумевается что полная версия «Тавро» предназначена для бизнеса. Если будет наблюдатся тенденция с платным жизненноважным софтом на «Авроре» — то система точно не станет популяряной у обычных пользователей. А ещё Тавро лагучий и если пару дней не открывать Telegram, то синхронизация большого числа изменений может занять пару минут, а интерфейс будет висеть.
Также я хотел написать вторую статью о разработке небольшой 3D-аркады с нуля под «Аврору», однако возникли определенные трудности о которых я и говорил в начале статьи. Дело в том, что на мой смартфон установлена немножко «особенная» версия ОС, где режим разработчика (отладчик и ещё некоторые фичи) просто сломан. Пакет (сломанный) уже установлен, однако не удаляется, не обновляется и не устанавливается. В моём случае можно только сделать бэкап и прошить дамп чистой системы с 4pda, благо такая возможность есть.
Тем не менее, даже несмотря на «поломанность», есть возможность установки сторонних приложений. Просто включаем соответствующую галку в настройках — и вот, мы можем ставить сторонние rpm-пакеты прям как apk в Android.
В целом, «Аврору» можно назвать достаточно открытой для моддинга и разработки собственных программ системой. За деплой приложений не нужно ничего платить, есть неплохая документация и можно делать с системой всё что угодно из терминала: благо root-доступ есть из коробки для всех. Я немного общался с @chuvilin(техдир в ОМП), а он когда-то сам хоумбрю приложения для Maemo (Nokia N900) писал, так что вполне очевидно что даже сами разработчики держат вектор на открытость системы для гиков.
Пожалуй, наличие перспектив у «Авроры» зависит от того, зачем вам нужен девайс с ней на борту. Если говорить о Enterprise-секторе и гос-организациях, то система со временем может занять довольно большой процент рынка и так или иначе, у вас будет шанс пощупать её на промышленном устройстве. В целом, её интеграцией в бизнес уже сейчас активно занимается компания «Марвел» (владелец бренда F+).
Также у «Авроры» есть хорошие перспективы среди гиков: существуют тематические каналы в Telegram, а также люди активно обсуждают систему на 4pda. Аврора очень интересная «под капотом» и достаточно дружелюбная по отношению к разработчикам, так что гики — определенно одна из ЦА этой системы.
Есть ли перспективы среди обычных пользователей? Тут сказать сложно. Дело в том, что основная проблема «Авроры», Sailfish OS, Meego и Maemo — относительно малое количество софта, которым можно пользоваться «из коробки». И если гикам часть приложений можно запилить самому (например, клиент банка на СМСках), то что делать простым пользователям? Правильно, ждать появления нужного софта в магазинах, а до этого использовать веб-версии в FireFox. Будем честны, такой вариант устраивает далеко не всех.
Вот такой материал об «Авроре» и F+ R570E у нас с вами сегодня получился. А как вам данный смартфон? Есть ли у него перспективы? Пишите своё мнение в комментариях!
P.S: Я не получил от F+ ни копейки за статью, кроме самого девайса. Все впечатления — мои личные, а меня довольно легко впечатлить (достаточно чтобы на девайсе был Linux :) ) Поэтому, надеюсь, даже те читатели, которые не питают симпатию к Авроре», останутся довольны после прочтения статьи.
Также у меня есть Telegram-канал "Клуб фанатов балдежа", куда я публикую ссылки на новые статьи, видео, а также мысли по программированию, ремонту и моддингу различных гаджетов, а также немного щитпоста. Подписывайтесь, если интересно. Недавно я начал вести ещё и паблик в ВК, там в основном репосты видосов с ютуба для тех, кто не хочет юзать VPN, но кому интересны мои видосы. Также туда публируется часть постов из телеги.
Статья подготовлена при поддержке TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud чтобы не пропускать новые статьи каждую неделю!
Время неумолимо бежит вперед: выходят новые гаджеты, постепенно заменяя старые, превращая их в тыкву или в лучшем случае, в «тапочек» для звонков. Сейчас смартфоны стали практически одинаковы во всем: дисплей на всю площадь передней панели, почти полное отсутствие аппаратных кнопок, беспроводная зарядка… Это всё, конечно, здорово, но ведь иногда так хочется взять в руки старый, но такой необычный в наше время QWERTY-смартфон и попытаться его использовать как основной, да и цены на них могут приятно удивить: БУ девайс можно купить за несколько сотен рублей (~5-10$). Одна проблема — клиенты приложений на версии Android 1.6-2.0 безбожно устарели и давно не работают. Но иногда желание воскресить старый девайс превыше потребительского качества и тут я пришёл к мысли… а почему бы не написать с нуля свои клиенты популярных приложений? ВК с музыкой, YouTube, трекинг посылок. Так я и сел писать необходимые в повседневной жизни приложения, с нуля, на голом API Android, без каких либо фреймворков (и даже AppCompat). Получилось ли у меня это? Узнаем в статье!
На самом деле копаться в старых девайсах и пытаться найти им применение — это очень интересное и затягивающее дело. Ведь зачастую попытки оживить девайс заключаются в прочтении большого количества мануалов, документации, копании в терминале, а иногда даже компиляции загрузчиков/ядер! И подобные занятия интересны на всех уровнях: хардварный, системный, прикладной и пользовательский. В предыдущих статьях мы с вами моддили девайсы на всех этих уровнях: ремонтировали «железные» болячки, написали несколько статей о системном моддинге и компиляции загрузчиков под неизвестные китайские устройства, а также узнавали о пользовательском опыте установки готовой кастомной прошивки на 7-летнее устройство.
Но до сегодняшнего дня мы с вами обходили прикладной уровень моддинга устройств: т. е. написание самых обычных, повседневных программ, без которых сложно представить жизнь современного человека. Ещё во времена выхода первого Galaxy S в 2010 году, многие из нас уже сутками красноглазили в Java версии «аськи», кто-то уже сидел в ВКонтакте, хоть и большинство не заглядывали в смартфон каждые пару минут для проверки нотификаций.
К 2012 году смартфонная жизнь уже стала похожа на ту, к которой мы привыкли сейчас — соц. сети, мессенджеры, пуши, потоковое видео — многие из нас успели привязаться к такой жизни и… к конкретно тем самым девайсам!
2012 год давно миновал, тенденции в разработке приложений кардинально поменялись, а учитывая, что многие мои читатели не любят выбрасывать девайсы в мусорку (и правильно делают), наверняка кто-то регулярно заглядывает на полочку к своим пыльным «бывшим» гаджетам и рассматривает их с теплотой… но с сожалением понимает, что их время прошло. Или не прошло? :) Ну, тут как посмотреть. Если есть навыки и огромная мотивация, то программер может многое, в том числе и запилить все самые необходимые приложения сам!
Я давно лелеял эту идею, подумывая, как бы лучше её реализовать. Да и почти всю свою жизнь, я писал на C#, практически не «щупав» API Android и его UI фрейморк. В один день у меня очень сильно зачесались руки написать что-нибудь эдакое под него и причём сразу — весьма серьёзное!
Всем этим устройствам более 10 лет. Самым молодым из них является реплика Lumia 1020, которую мы тоже успели замоддить!
Так и родилась идея написать клиент YouTube. А потом и ВК. Ну и трекинг в придачу. Ну а чего б и нет, на всё про всё я выделил себе неделю: за это время я должен успеть закончить пусть и сыроватые, но вполне юзабельные клиенты для моих любимых сервисов. И я начал думать…
Написание приложений под старые мобильные ОС, как и под любые другие платформы, требует планирования того, что и как будет работать с учётом ограничений целевой платформы. У меня было сразу несколько ограничений, что только раззадоривало пыл:
В большинстве своём, на старых версиях Android работают одноядерные чипсеты, а значит, лимитированная многопоточность. Никакой работы в UI-потоке кроме обновления интерфейса, а поскольку в первых версиях этой системы интерфейс менее отзывчив, чем в более свежих — нужно сохранять баланс между функционалом, симпатичностью и скоростью работы. Мои приложения должны оптимально работать в следующих условиях: 256мб ОЗУ, из которых свободно в среднем 30-40мб (Сбер, привет тебе с вылетами на 2гб ОЗУ), 1 ядро ~600мгц, видео-ядро уровня Mali300-Malii400. Негусто? Ну, нам сойдет.
Вторым ограничением стало тотальное устаревание корневых сертификатов, а как многие из нас знают, просто так их на мобильных системах не обновить. Поэтому придётся идти на хаки — делать сервер-реле, который преобразует трафик из https в http там, где нельзя просто отключить проверку верификации SSL (это как раз кейс с API VK). Решено — отдельный сервер-реле, который отправляет запрос на сервер ВК и обратно возвращает нам обычный результат в JSON.
Ну а третьим ограничением стал сам Android. targetSDK = 5 (Android 1.5 Cupcake), никакого AppCompat (кушает драгоценное свободное место), никаких сервисов Google (их тут нет лет 5 уже). Всё на чистом API системы, почти в тех же условиях, в каких 13-14 лет назад писались первые приложения для Android.
Если я его раздобуду когда-нибудь, то в лепешку расшибусь, но портирую на него свои приложения. Тогда я с гордостью скажу, что мои приложения работают на 100% Android устройств %)
Полный энтузиазма я сел писать код. Основную часть статьи я решил поделить на каждое приложение отдельно с конкретными объяснениями: где, что и как я делал. Хочется заранее сказать — я не особо давно пишу под Android, зато много писал под WinForms, поэтому какие-то решения могут показаться странными. А некоторые решения обусловлены версией Android. Например, нотификации в первых версиях Android не было Notification.Builder, а сам Notification был больше похож на структуру. Приложения, конечно же, мы будем писать на Java.
Первым делом я начал писать клиент ВК и сразу определился со своими хотелками, которые были весьма скромными: возможность листать диалоги, читать сообщения и отправлять их (с полной поддержкой QWERTY-клавиатур, т. е. отправка на Enter), плюс возможность слушать музыку без ограничений. На ВК бочку ни в коем случае не гоню, просто публичного API совсем нет, даже с ограничениями, хотя было бы здорово…
Мне снова хотелось почувствовать те эмоции, которые я когда-то ощущал от прослушивания музыки будучи школяром со своим первым Android-смартфоном. В 2013 году я прилетал со школы и слушал плейлист на практически таком же девайсе с идентичным железом и версией Android. Я хорошо помню, как пользовался прелестями многозадачности Android на 2G интернете (3G чипсет просто не поддерживал): одну песню слушаешь, поставил вторую качаться, пока песня доиграет — уже и вторая скачалась. :)
Итак, хотелки выбраны, пора начинать писать приложение. Для дебага у меня было 3 устройства: Galaxy S4 (Android 4.2 JB), китайский Galaxy S3 Mini I9300 (Android 2.2, на фото выше) и Samsung Galaxy S I9000 (Android 2.3), ну и конечно же эмулятор с 4.4 KitKat. Android Studio и сейчас умеет без проблем собирать приложения вплоть до версии Android 2.2 даже с последними Build Tools и Target SDK — главное выкинуть appcompat, androidx, и юнит тесты из build.gradle. Без каких-либо проблем он цепляет и сами устройства по adb. Даже отладчик без проблем работает.
Первым делом я начал писать активити (полноэкранная форма в терминологии Android, или «экран» приложения) с диалогами — он должен раз в n секунд подгружать данные и строить «морду» для всего этого. По сути, почти весь код клиента — это получение ответа от API ВК, разбор JSON на датасет и визуализация этого датасета на экран. Для этого я ввёл два объекта: VK, который делает асинхронные запросы на сервер, оборачивает работу с сервером-реле и парсит JSON и VKObjectProcessor (это скорее всего отрефакторится до VKDataSet чуть позже).
Архитектура приложения получилось довольно простой и примитивной. При старте активити авторизации проверяет данные приложения (PersistStorage) на наличие API-токена и при его отсутствии запрашивает авторизацию. Как это уже стало классическим среди различных «самопальных» клиентов, мой клиент «прикидывается» официальным приложением ВК — для этого используется связка app_id и app_secret приложения ВКонтакте для Android.
После авторизации приложение перенаправляет нас на страницу диалогов. Поскольку у нас нет ни пушей, ни лонгполлинга, метод обновления остается один — в заданные интервалы. Для этого у нас есть Handler, который раз в 3.5сек берет список диалогов с сервера, проверяет, обновились ли данные и если да — обновляет датасет, отправляя сигнал обновления интерфейса (который построен на ListView). Кроме того, у нас есть кэш аватарок — точно так же распаралелленый на несколько потоков, а загруженные на данный момент превьюшки хранятся в хэшмапе.
При этом сообщения реализованы схожим образом — на данный момент возможности горячей подгрузки сообщений «сверху» нет, поэтому обновляются последние 50 сообщений скопом и сразу. Шустро ли всё это работает? Вполне неплохо. Конечно, основное процессорное время уходит на разбор тяжелых JSON, но тут отчасти вина ВК — мало того, что кастрировали функционал getHistory в последних версиях API, так ещё и нет возможности возвращать только те поля, которые нужны.
Как же я поступил с аудиозаписями? Музыка через API — настоящая заноза для разработчиков клиентов, с которой пришлось «подолбаться». Правда, недолго — раз у нас для основных запросов уже есть сервер-реле, то почему бы не сделать ещё и для музыки? Суть обхода простая: если сгенерировать специальный API-токен, то можно свободно обращаться к методам, связанным с музыкой без необходимости притворяться официальным клиентом и «подписывать» запросы md5 ключом. Примитивный PHP-скрипт как раз и предоставляет такую возможность, позволяя получить доступ к базе музыки ВК, однако ограничение типичное — у пользователя должны быть открыты аудиозаписи:
Тут был код на пхп, о его скушал пикабу!
По итогу у меня получился рабочий плеер с поиском музыки и добавленными треками. Опять же — производительность остаётся отличной! Ссориться с ребятами из ВК не хочу, поэтому добавлять возможность качать треки пока не стал — но вам стоило бы быть подружелюбнее к разработчикам кастомных клиентов! :)
Что мы получили по итогу? Довольно простенький клиент ВК, который практически не потребляет ОЗУ и шустро работает. Да, здесь не хватает кучи различных фич — как минимум, прсомотра ленты и стены. Но ещё успеется — если проект будет интересен не только мне, то продолжим наращивать фишечки потихоньку! Уже ближе к релизу я слегка причесал клиент, добавив более «вкшный» дизайн и приделал анимированное боковое меню. Про Animation ещё кто-то помнит? :)
С разработкой клиента YouTube были свои особенности: во-первых, в отличии от клиента ВК, видео через реле просто так не загрузишь, слишком много трафика, а во-вторых, YouTube уже не «отдаёт» видео в форматах, которые поддерживают старые устройства — в основном, это h263 до 720p. К сожалению, потоковое видео с софтовым декодированием уложит на лопатки большинство «одноядерников» тех лет.
Ситуация осложнялась тем, что ни VideoView, ни стандартные плееры всех смартфонов, на которых я отлаживал приложение, не умели игнорировать ошибки SSL и просто валились с ошибкой. Пришлось что-то придумывать: ведь видосики хочется смотреть на крутейшем AMOLED дисплее Galaxy S!
Посидел я, подумал и придумал. Для поиска по базе YouTube, получения информации и прямых ссылок на видео я решил использовать альтернативный фронтэнд YouTube, который называется Invidous API — крутая штука со своим API, которая сама распределяет пул токенов самого ютуба и отдаёт ответы в виде JSON. Форматы запросов очень простые: <url инстанса Invidous>/api/v1/метод, например «search?q=test®ion=RU&hl=ru» — выдаст нам результат поиска «test» в Российском регионе. Очень удобно, да? А ещё Invidous — не какой-то отдельный сервис, а целая сеть т. н. инстансов — какой хочешь, такой и юзай! Поскольку большинство инстансов «прячется» за свежими сертификатами, пришлось идти на довольно известный костыль с отключением верификации хостнеймов у HttpUrlConnection:
А туть был костыль на Java.
А поскольку у нас нет возможности воспроизводить потоковое видео онлайн, то я решил его просто предварительно загружать через собственный менеджер закачек, с возможностью последующей очистки кэша. Поскольку таким устройствам 2060p качество не нужно, я выбираю 240p-360p mp4 в avc кодеке, в среднем ролики по 30 минут весят около 30-40 мегабайт. При HSDPA+, загрузка подобного видео займет около минуты-двух — не так уж и много, можно и подождать. Закинул тестовую версию в беседу любителей ретро-мобилок — люди были в восторге. ;)
Поскольку Invidous отчасти строится на анонимности — авторизации тут нет. Однако свою задачу посмотреть видосики он выполняет нормально — поэтому весь UI приложения я поделил на 4 вкладки: тренды, популярное, история и поиск. Подписки, как и историю можно реализовать на стороне клиента — для некоторых такой подход покажется плюсом, для кого-то — нет, однако минимальный задел для клиента уже есть — мы можем смотреть видео!
Приложения и бэкэнд полностью открытые, исходный код доступен по лицензии GPLv3. Следить за статусом проекта можно на моём GitHub!
Последние версии можно скачать в релизах проекта.
Из текущих хотелось:
Портировать на Android 1.6. Несмотря на то, что приложение в целом имеет targetSDK = 5, на 2.1 оно работать отказывается. В Android, после 2.1, слегка поменялся бинарный формат xml разметок, из-за чего приложение на старых системах вылетает с исключением. Но это решаемо: eclipse adt в зубы, импортируем проект и вперед! ;)
Кроме того, я экспериментировал с попытками как можно сильнее уменьшить нагрузку как на сеть, так и на процессор путём облегчения датасетов. Если один JSON от ВК весит в среднем 30-60кб (который 1 ядерный чипсет частотой 600мгц может «долго» жевать, негативно сказываясь на UI), то примитивный KeyValue формат, который содержит только нужные поля умещается в 5-6-7кб в текстовом виде и благодаря своей примитивности (весь парсинг — два substring, один indexof и поиск ключа по хешмапе) совсем не «налегает» на процессор. Благодаря этим наработкам, я запилил и примитивный клиент ВКшечки для j2me.
В целом, можно сделать единый формат датасетов для мессенджеров, а на бэкэнде реализовывать всё что угодно — Telegram, ВК, да хоть личные сообщения на хабре, а для платформ только делать «морды»: так можно завести современные мессенджеры и на Sailfish, и на J2ME, и на Symbian, и на WinMobile, практически без пота и крови :)
Полная адаптация под кнопочное управление. Сейчас с клиента можно без проблем писать сообщений с любой клавиатуры, в том числе и QWERTY. Однако основной интерфейс всё ещё не полностью адаптирован под кнопки и требует выполнения некоторых действий пальцем.
Как по мне — получилось вполне неплохо. Да, приложения кое-где сыроваты и явно не дотягивают по функционалу до их больших версий. Но кое в чем они всё таки выигрывают: они лёгкие и быстрые, а самое главное — ещё могут продлить жизнь любимого девайса для кого-то. И я считаю — это классно! Среднее потребление ОЗУ обеими клиентами: 5-10мб. Вес APK: 30-50кб на момент выхода статьи. Вот что значит писать под голое API без модных фреймворков! ;)
Что до остального функционала — кое-что в Android продолжает неплохо работать и в наше время. Например, DLNA-стриминг в доме, E-Mail клиент или банкинг через смски. Я уверен, это покрывает 80% потребностей большинства пользователей — так разве после этого можно назвать старые смартфоны бесполезными?
Я писал эту статью с целью показать вам, что старые девайсы отнюдь не тыква, если есть щепотка энтузиазма в глазах и любовь к гаджетам, а заодно и поделиться с вами своими приложениями. Часто в комментариях мне пишут, что хотели бы пользоваться своими смартфонами и дальше, если бы не устаревающие версии Android. А вы как считаете? Жду ваше мнение в комментариях.
Статья подготовлена при поддержке компании TimeWeb Cloud. Подписывайтесь на меня и @Timeweb.Cloud, чтобы не пропускать новые статьи про девайсы каждую неделю! А ещё не забудьте проставить плюсик на хабре, если статья вам понравилась - это поможет с финансированием и выходом новых статей!
Здравствуйте уважаемые пикабушники! Многих напрягает, когда перед записью звонков в ваших смартфонах с ОС Андроид сначала идёт синтетический голос, который оповещает собеседника, что разговор записывается. Всё дело в том, что на большинстве современных телефонах предустановлено приложение «Телефон» от корпорации Гугл, которые, следуя законодательству, «вшивают» это оповещение в своё ПО.
Есть несколько способов, избавится от этого «головняка». Опишу один самых простейших. «Танцы с бубном» на самом минимуме. ))
Вся суть метода - замена голосового движка от Гугл, на движок от Яндекса, с последующим удалением последнего.
Внимание! Вы сами выбираете следовать этому гайду или пройти мимо. За недопонимание и кривые ручки отвечаете только Вы.
.
Не хотите читать инструкцию? В конце есть видео-инструкция от авторитетного блогера «PomaIIIka»
.
.
Просьба дочитать до конца. В конце вас ждёт бонус-альтернатива.
.
.
Для начала скачиваем с форума 4pda архив YandexTTS_Engine перейдя по ссылке или отсканировав QR-код.Для скачивания на 4PDA необходима регистрация.
Не умеете распаковывать архивы? Нет регистрации и не хотите создавать аккаунт? Можно скачать установочный файлик с телеграмм-канала автора видеоинструкции, что в конце поста.
Перейдите на канал (кликабельно) и наберите в поиске Телеграмм канала – tts
.
.
Выделяем нужный файл и скачиваем его на телефон
.
Файл скачали и, проверяем его на вирусы. Отправляем его на сайт ВирусТотал и получаем вот такой результат (кликабельно). Все антивирусные движки показали, что наш файлик чист. (Рекомендую все скачанные файла проверять на этом сайте)
.
Запускаем скачанный файл и, в открывшемся окне, разрешаем установку из неизвестных источников. Всё, голосовой движок от Яндекса установлен.
Заходим в настройки телефона и в поисковой строке вбиваем Синтез. Переходим в результат поиска. Как синтезатор речи по умолчанию выбираем Yandex TTS, вместо Google TTS.
Теперь снова переходим в настройки телефона: Приложения - Все приложения и в поиске начинаем вбивать "Телефон".
Вот она, Гугл звонилка. С синей иконкой. Очищаем кэш и удаляем обновления. Спокойно! Всё потом снова обновится.
Без малого всё готово. Проверяем результат на входящем звонке. Работает? Оповещения о записи нет? Отлично! Мы этого и добивались.
.
Обновляем приложение Телефон.
Заходим в Плэй Маркет, находим Телефон Google
среди установленных
приложений и тыкаем в кнопку Обновить! Либо
ждём, когда само обновится автоматически. Долго ждать не придётся )) Или переходим по ссылке (клик) и так же обновляем , тыкнув в нужную кнопку.
.
Теперь заходим в Настройки телефона – Приложения – Все приложения – находим Yandex TTS Engine и удаляем его.
Ну, вроде всё. Проверяем, как теперь работает запись звонков, и, для чистоты эксперимента перезагружаем телефон и снова проверяем.
.
Источники с форума 4pda
Спасибо
автору видеогайда PomaIIIka Рекомендую его
верифицированный канал (кликабельно)
Спасибо, что прочитали ) Помогите с тегами, пожалуйста, если что пропустил.
.
.
.
.
.
.
.
.
.
В последний момент решил предложить альтернативу. Считаете всё описанное выше трудным или опасным? Хорошо. Вот Вам бонус, всё от того же PomaIIIka. Самый легчайший способ ухода от проблемы оповещения о записи ;-)
.
.
.
ВСЁ!!!
Здравствуйте уважаемые Пикабушники! Маленькая "полезность", о которой не знают (как бы это странно не выглядело)) большой процент пользователей.
Многим не нравится, что WhatsAppне работает на компе, если ваш телефон не подключен к интернету. Такая возможность давно реализована в большинстве мессенджеров (Телеграмм, Вайбер и т.п.). Относительно недавно такая функция появилась и в Ватсапе.
.
Если у вас уже стоит клиент для Винды, то пропускаем этот шаг и переходим к пункту 1.
.
И так! Кратенько, но подробно.
Скачиваем с официального сайта установочный файл WhatsApp для Windows (КЛИК) и устанавливаем, как любую другую прогу.
.
Не желаете скачивать на комп лишнее ПО? Тогда открываем в браузере вкладку https://web.whatsapp.com/ Функционал пожиже, чем в клиенте, но для пересылки сообщений вполне пойдёт.
.
.
1. Запускаем WhatsApp для Виндовс на ПК.
2. Откройте WhatsApp на своём телефоне.
3. Нажмите на три точки в правом верхнем углу
.
4. В окошке выбираем Связанные устройства
.
.
5. Тыкаем в Бета версия для нескольких устройств...
.
.
6. В открывшемся окне жмём – Использовать Бета версию.
.
.
7. Жмём ПРИВЯЗКА УСТРОЙСТВА.
Потребуется привязать устройство с помощью отпечатка или ввести ПИН-код, которым вы разблокируете смартфон.
Разблокировка - действие одноразовое. После она не потребуется, если вы сами не активируете эту функцию в настройках на телефоне.
.
.
8. Откроется окно сканера на телефоне - просканируйте QR-код на дисплее компьютера.
.
Вот и всё. На компьютере загрузились ваши сообщения . Над блоком с контактами вы можете, нажав на три точки справа, зайти в настройки, посмотреть Архив и Избранные сообщения, создать группу, выбрать тёмную тему и т.п.
Можно отключить смартфон от интернета или совсем выключить. А можете запускать одновременно клиент на Виндовс, вкладку Ватсап Веб в браузере и приложение на телефоне, клиент на другом ноутбуке.
Откатить всё обратно, можно проделав те же шаги и в конце отказаться от бета-тестирования.
.
Всё!!!
.
Спасибо, что дочитали до конца. 😉