Что такое tag log на планшете
Всем привет! Сегодня мы кратко расскажем про Андроид приложение — MTKLogger, а вы поймете что это за программа и нужна ли она вам на смартфоне.
Некоторые пользователи Андроид замечают появление неизвестного приложения MTKLogger на своих смартфонах. Автоматическая установка, в наши дни, воспринимается как вирус, но в данном случае спешу вас успокоить — МТК Логгер не является вирусным приложением.
MTKLogger — это программа для сбора и обработки системных логов, работающая на процессорах МТК.
Такой сбор логов ведется на многих ОС, например в Windows это называется «журнал». Все записанные логи сохраняются в отдельную системную папку mtklog. Если говорить о надобности этого приложения для простых пользователей, коих большинство, то программка не пригодится, а вот для тех, кому необходимо иметь всю статистику, тогда МТКЛоггер пригодится.
MTKLogger собирает логи, однако, они имеют размер, и чем больше логов будет сохранятся, тем больше места будет занимать папка mtklog. Это большой минус данного приложения. Если места у вас и так не особо много, тогда вы можете остановить и удалить MTK Logger.
Как удалить приложение?
Для того чтобы убрать MTK Logger и не нагружать систему, необходимо:
- Открыть инженерное меню вашего телефона набрав нужную комбинацию — для разных фирм производителей комбинации разные, выберите свою в видео.
- Открыть закладку Log and Debugging и выбрать там пункт MTKLogger.
- Просмотрите функции MobileLog, NetworkLog, а также ModemLog и установите переключатель в неактивное положение.
- Удалите папку mtklog и установочный файл приложения mtklogger.apk в папке systemapp. Для удаления файлов и папок нужны root-права.
На этом все. Надеюсь вы разобрались с тем, что это за программа MTKLogger и сможете удалить её.
Tag log что это на андроид
indianlarry, обязательно. ) Однако это не помогает и после перезагрузки в LogCat логи сыпятся как обычно. Может от прошивки зависит, хотя не должно.
Работает гораздо надёжней, но надо чтоб была поддержка init.d. Вроде как в файле build.prop можно отключить, но я не заморачивался. А вообще, почитайте тут: Скрипты, твики, собери их все
но как проверить все ли 4 лога отключаются?
и как узнать отключились ли логи при использование init.d?
Как включить/отключить уровни журналов в Android?
143 d-man [2010-01-07 07:48:00]
У меня есть множество операторов регистрации для отладки, например.
при развертывании этого приложения на телефоне устройства я хочу отключить подробный журнал, откуда я могу включить/отключить протоколирование.
78 Решение Cytown [2010-01-07 13:35:00]
Общим способом является создание имени именованного логического уровня и определение его уровня отладки на основе loglevel.
Позже вы можете просто изменить LOGLEVEL для всех уровней вывода отладки.
185 Dave Webb [2010-01-07 13:27:00]
Verbose никогда не следует компилировать в приложение, кроме как во время разработки. Журналы отладки компилируются, но удаляются во время выполнения. Журналы ошибок, предупреждений и информации всегда сохраняются.
Таким образом, вы можете захотеть удалить дескрипторы журнала Verbose, возможно, используя ProGuard, как это предлагается в другом ответе.
В соответствии с документацией вы можете настроить ведение журнала на устройстве разработки с помощью System Properties. Свойство для установки равно log.tag. , и оно должно быть установлено на одно из следующих значений: VERBOSE , DEBUG , INFO , WARN , ERROR , ASSERT или SUPPRESS . Дополнительная информация об этом доступна в документации для метода isLoggable() .
Вы можете временно установить свойства, используя команду setprop . Например:
В более поздних версиях Android требуется, чтобы /data/local.prop был доступен только для чтения. Этот файл читается во время загрузки, поэтому вам необходимо перезапустить его после его обновления. Если /data/local.prop доступен для записи в мире, он, вероятно, будет проигнорирован.
Наконец, вы можете установить их программно, используя метод System.setProperty() .
Это будет — кроме всех других оптимизаций ProGuard — удалите любые подробные записи журнала непосредственно из байт-кода.
18 kdahlhaus [2011-02-06 21:24:00]
Лучше всего использовать API SLF4J + часть его реализации.
Для приложений Android вы можете использовать следующее:
Вы должны использовать
4 larham1 [2011-10-20 22:27:00]
В этом методе используется запись в сообществах.
Log4j или slf4j также могут использоваться в качестве фреймворков регистрации в Android вместе с logcat. См. Проект android-logging-log4j или поддержка log4j в android
Вот более сложное решение. Вы получите полную трассировку стека, и метод toString() будет вызываться только при необходимости (Performance). Атрибут BuildConfig.DEBUG будет ложным в рабочем режиме, поэтому все журналы трассировки и отладки будут удалены. Компилятор горячей точки имеет возможность удалить вызовы из-за окончательных статических свойств.
2 Donkey [2013-05-15 17:58:00]
Это позволяет вам иметь прекрасный контроль над журналами. Вы можете, например, отключить все журналы или только журналы некоторых пакетов или классов.
Кроме того, он добавляет некоторые полезные функции (например, вам не нужно передавать тег для каждого журнала).
Я создал утилиту /Wrapper, которая решает эту проблему + другие общие проблемы, связанные с журналом.
Утилита отладки со следующими функциями:
Я попытался сделать документацию самодостаточной.
Предложения по улучшению этой утилиты приветствуются.
Загрузите его из GitHub.
1 Darnst [2013-09-19 18:25:00]
Также полезно (удобно), что Java интерпретирует логический var как false, если ему не присвоено значение, что означает, что он может быть оставлен как false до тех пор, пока вам не понадобится включить ведение журнала: -)
Мы можем использовать класс Log в нашем локальном компоненте и определить методы как v/i/e/d. Основываясь на необходимости, мы можем позвонить дальше.
пример показан ниже.
1 Jim [2013-03-28 22:54:00]
В очень простом сценарии ведения журнала, где вы буквально просто пытаетесь писать на консоль во время разработки для целей отладки, проще всего просто выполнить поиск и заменить перед вашей производственной сборкой и прокомментировать все вызовы в журнал или System.out.println.
Я знаю, что это не идеально, и было бы неплохо, если бы способность находить и прокомментировать вызовы Log и System.out.println были встроены в Eclipse, но до тех пор, пока это не будет самым простым и быстрым и лучшим способом сделайте это, чтобы прокомментировать поиск и заменить. Если вы это сделаете, вам не нужно беспокоиться о несоответствии номеров строк трассировки стека, потому что вы редактируете исходный код, и вы не добавляете никаких накладных расходов, проверяя конфигурацию уровня журнала и т.д.
Для меня часто бывает полезно установить разные уровни журналов для каждой TAG.
Я использую этот очень простой класс-оболочку:
Теперь просто установите уровень журнала на TAG в начале каждого класса:
MTKLogger: что это такое?
MTKLogger — это специальное приложение для сбора системных логов на платформах на базе процессоров MTK. Приложение выполняет ту же самую функцию, что и журнал в операционной системе Windows — сохраняет логи в папке под названием mtklog.
Для чего нужно приложение MTKLogger? Если говорить о простом пользователе, то оно ему банально не нужно, так как он не будет разбираться в огромном количестве информации, содержащейся в логах, и занимающей массу свободного пространства. А вот для тех пользователей, которым логи необходимы, например, для ведения статистики, приложение, несомненно, окажется полезным.
Казалось бы, почему бы не забыть об этом приложение? Дело в том, что размер папки с логами может увеличиваться и увеличиваться настолько, что занимает немало свободного пространства, поэтому от логов стоит избавиться. Чтобы отключить MTKLogger, нужно:
- Зайти в инженерное меню на устройстве.
- Найти вкладку Log and Debugging.
- Выбрать пункт MTKLogger.
- В настройках отключить с помощью переключателей разделы MobileLog, ModemLog и NetworkLog.
- Выйти из инженерного меню.
- Удалить папку mtklog.
Теперь логи не будут создаваться. Включить MTKLogger можно в обратном порядке.
Tag log что это на андроид
Is there any neat way to get a TAG for a class?
13 Answers
I use a TAG, but I initialise it like this:
This way when I refactor my code the tag will also change accordingly.
I usually create an App class that sits in a different package and contains useful static methods. One of the method is a getTag() method, this way I can get the TAG everywhere.
App class looks like this:
EDIT: Improved per br mob comment ( Thanks )
And when I want to use it:
The output of the getTag method is the name of the caller class (with the package name), and the line number where the getTag is called from, for easy debuging.
Go to Android Studio -> preference -> Live Templates -> AndroidLog then select Log.d(TAG, String).
In Template text replace
Then click Edit variables and enter className() in the Expression column next to the className Name column.
Now when you type the shortcut logd it will put
You dont need to define a TAG anymore.
I put this inside my extended Application so i can use in every other file
I have created a class of Static variables, methods and classes named as S .
В статье я расскажу, что это такое MTKLogger на устройствах Андроид и можно ли удалять его. Многие люди крайне подозрительно относятся к приложениям, которые появляются на их смартфонах или планшетах из неоткуда и без спроса. Собственно, правильно делают, ведь новой программой может быть нежелательный гость в виде вируса, отправляющего СМС на платные номера и/или собирающего пароли, номера карты и прочую информацию, присутствующую на смартфоне.
Однако не каждое самовольно появившееся приложение является вредоносной программой. Исключением является, например, MTKLogger, значок которого замечали многие пользователи операционной системы Android. Если была обнаружена иконка именно этого приложения, то все в порядке, ничего страшного с устройством не произошло.
Что такое MTKLogger
MTKLogger – программа, значок которой появляется только на устройствах, построенных на процессоре от MTK (MediaTek). Это приложение отвечает за, впрочем, полезную, но для большинства обычных пользователей ненужную функцию – ведение журнала (логов). Аналогичные функции есть практически во всех операционных системах и во многих программах. Например, в Windows она называется «Журнал операционной системы Windows».
Кому и для чего нужно приложение MTKLogger
Собственно обычному пользователю программа MTKLogger не нужна. Без наличия специальных знаний человек все равно мало что поймет из того, что записалось в журнал.
С другой стороны людям, которые разрабатывают программное обеспечение для Android или занимаются ремонтом телефонов приложение MTKLogger жизненно необходимо и они уже знают что это MTKLogger. Именно через него можно узнать, что произошло перед сбоем в программе и как ведет себя то или иное оборудование.
Нужно ли оставлять MTK Logger обычному пользователю
Для обычного пользователя нет особой разницы – он может как удалить это приложение MTKLogger, так и оставить его на смоем смартфоне или планшете. Ни в первом, ни во втором случае ничего плохого не произойдет.
С другой стороны ясно, что эта MTKLogger выполняет некоторые вычисления и, как следствие этого, немного нагружает процессор. Если человек уверен в том, что он не станет пользоваться логами, то он может смело освободить место от приложения, тем самым несколько улучшив работу своего мобильного устройства.
Следует отметить, что со временем журналы, формируемые MTKLogger, могут сильно увеличиться в объёме, и они будут занимать достаточно много места в памяти устройства.
Как отключить приложение MTKLogger
Чтобы удалить программу MTKLogger на Андроид необходимо иметь права суперпользователя. Кроме того, вариант со стиранием приложения мы не будем рассматривать еще и по той причине, что не хорошо нарушать целостность системы. Пусть логгер останется на устройстве (он занимает всего пару килобайт), а уберем непосредственно файлы журнала, созданные им, и отключим их ведение.
- Чтобы выключить MTKLogger нужно открыть инженерное меню и отыскать там вкладку Log and Debugging.
- Затем потребуется найти пункт MTKLogger, и там выключить три переключателя – напротив MobileLog, NetworkLog и ModemLog.
- После этого можно закрыть инженерное меню.
- Останется только удалить папку с логами. Она называется MTKLOG и может находиться как на карте памяти, так и в системном хранилищ.
- Найдите ее и просто удалите.
Надеюсь вы разобрались с тем, что такое MTKLogger и теперь понимаете его предназначение.
Tag log что это на андроид
Для начала приведу информацию относительно памяти телефона найденую мною на одном из сайтов.
-
4. MicroSD / SDHC / SDXC . (есть и смартфоны без слота для карты)
Залез в интернет, выяснил, что доступ к Internal storage можно получить имея root права. Станцевал с бубном в течении примерно часов 10, получил на телефоне root права. Как? – не помню. В форуме всё написано, но либо у меня уже мозги не те, либо на форуме пишет народ с не теми мозгами :rolleyes:
С помощью программы Link2SD, перенёс часть программ на карту SD. Это хорошо почистило память. Хватило примерно на месяц. Через месяц СМС опять не приходят.
Начал настраивать себя на снос и переустановку системы, всё не решался >-)
Залез в интернет, выяснил, что есть такие временные файлы с расширением rm. Нашёл их в папке datalocaltmp c помощью программы RootExplorer, удалил – помогло не надолго (объём их был около 3 Мб).
Залез в папку data основательно, прошерстил её различными способами. Нашёл кучу файлов с расширением log, в названии которых присутствует слово error и название различных программ, в том числе тех, которые я удалил давно. Размер каждого из них составлял около 2 Mb, а количество – около 30 шт. Удалил их все. И, о чудо, внутренняя память заполнена 62 Мб из 181 (и телефон работает). Надолго ли? Посмотрим, такое ощущение что чистить надо постоянно.
5 приложений, которые нужно удалить с Android прямо сейчас
Погодные приложения, оптимизаторы, дефолтный браузер — от этого всего лучше избавиться.
Facebook и другие социальные сети
Социальная сеть Facebook является сегодня самой популярной в мире, поэтому неудивительно, что соответствующее мобильное приложение установлено у огромного количества пользователей. Мобильный клиент позволяет вам получать уведомления о новых лайках, постить фотки своей еды и всегда оставаться на связи с друзьями. Однако взамен это приложение потребляет огромное количество системных ресурсов и значительно уменьшает срок работы мобильного гаджета от батареи. Согласно ежегодному отчёту App Report 2015 AVG Android App Report, именно мобильный клиент Facebook занимает верхние строчки в хит-параде самых прожорливых программ на платформе Android.
Альтернатива. Используйте мобильную версию Facebook в любом современном браузере. Функциональность отличается ненамного, зато отсутствуют раздражающие уведомления и стремительно тающая батарея.
The Weather Channel и другие погодные приложения
The Weather Channel — отличный пример того, как на самой простой функции — отображении прогноза погоды — разработчики умудряются выстроить целый мегакомбайн. Здесь вы увидите и анимированные обои, и метеорологические карты, и букет интерактивных виджетов, и бог знает что ещё. Всё это хозяйство сидит в оперативной памяти устройства, каждые пять минут стучится в интернет и, разумеется, самым бессовестным образом съедает заряд вашей батареи.
Альтернатива. Выгляните в окошко — вы получите гораздо более надёжную информацию, чем то, что показывает виджет рабочего стола. Если необходим прогноз, то Google предоставит вам самое надёжное предсказание на неделю вперёд.
AntiVirus FREE и другие антивирусные программы
Дискуссия о том, нужны ли антивирусные программы на устройствах под управлением Android, иногда бывает довольно горячей. Я придерживаюсь мнения, что если вы не получаете root-права на устройстве и не устанавливаете взломанные программы из сторонних сомнительных источников, то антивирус вам не нужен. Компания Google бдительно следит за содержимым своего магазина и моментально удаляет из него все потенциально опасные элементы, поэтому всегда активный мониторинг антивируса будет только зря тормозить ваш смартфон или планшет.
Альтернатива. Если возникли всё-таки сомнения в здоровье гаджета, то установите антивирус, просканируйте, а затем удалите его.
Clean Master и другие оптимизаторы системы
Вера в чудеса является самой главной движущей силой для распространения разных «очистителей» и «оптимизаторов». Мол, сотни лучших программистов Google не смогли довести свою систему до ума, а вот этот изобретатель-одиночка взял и сделал! Спешим вас расстроить: большинство подобных приложений либо вообще ничего не делают, либо наносят только вред. Очистить кэш, удалить остатки старых программ можно и встроенными системными инструментами. Очистка же памяти на самом деле только замедляет запуск программ и работу Android вместо обещанного создателями утилит ускорения системы.
Альтернатива. Используйте имеющиеся в Android инструменты для очистки кэша приложений. Забудьте об оптимизации памяти.
Дефолтный браузер
Некоторые производители и разработчики сторонних прошивок снабжают свои творения специальными версиями браузера. Как правило, в них намертво вшиты ссылки на сайты рекламодателей и другой ненужный вам контент. Кроме этого, никто не может поручиться, что такой браузер не сливает вашу информацию налево. Лучше никогда не использовать подобную программу и вообще, если это возможно, удалить её из системы.
Альтернатива. Для Android существуют десятки хороших браузеров, но самым надёжным и быстрым является, несомненно, Google Chrome. Он функционален, обладает поддержкой самых современных веб-технологий, умеет экономить мобильный трафик и обладает простым и понятным интерфейсом.
А какие приложения вы считаете самыми вредными на платформе Android?
MTKLogger на Android – функции и возможности программы
MTKLogger – это Android-приложение для сбора ошибок, работающее в фоновом режиме. Встроено в некоторые телефоны Android, в частности, в мобильные телефоны и планшеты, которые имеют физические компоненты MediaTek (компания, которая продаёт полупроводники). Вы можете деактивировать приложение, не будучи пользователем root, и удалить его, если вы являетесь пользователем root.
Работа с приложением MTKLogger на Android.
Что такое mtklogger
- Android Log (Журнал Android) – основной журнал android; сохраняется, пока параметр Mobile Log активен.
- Kernel Log (Журнал ядра) – журнал ядра; сохраняется, пока параметр Mobile Log активен.
- Bluetooth Log (Журнал Bluetooth) – журнал Bluetooth сохраняется, пока активен Mobile Log.
- Limit Current Log Size (Ограничить текущий размер журнала) – максимальный размер журнала Mobile Log для этой сессии.
- Limit Total Log Size (Ограничить общий размер журнала) – общий размер журнала, включая текущие и сохранённые записи Mobile Log.
- Start Automatically (Автозапуск) – автозапуск Mobile Log.
- Log Mode (Режим журнала) – режим восстановления журналов, обычно SD.
- Limit Log Size (Предельный размер журнала) – общий размер папки Modem Log.
- Start Automatically (Автозапуск) – автозапуск Modem Log.
- Enable environment check (Включить проверку среды) – включите для проверки текущего состояния сетевого подключения. Если параметр активен, он при необходимости пропингует 2 IP для подтверждения состояния сетевого подключения.
- Enable package limitation (Включить ограничение пакета) – ограничить размер каждого пакета Network Log.
- Limited package size (Ограниченный размер упаковки) – ограничения для каждого сетевого пакета.
- Limit Log Size (Предельный размер журнала) – общий размер папки Network Log.
- Start Automatically (Автозапуск) – автозапуск Network Log.
- Enable Tag Log (Включить журнал тегов) – включите для проверки текущего состояния сетевого подключения. Если параметр активен, он при необходимости пропингует 2 IP для подтверждения состояния сетевого подключения.
- Log storage location (Место хранения журнала) – включите, чтобы ограничить размер каждого пакета Network Log.
- Run Command (Команда запуска) – установите размер ограничения для каждого сетевого пакета.
Чтобы очистить все предыдущие журналы, нажмите на значок корзины, выберите «Удалить все» и подтвердите действие ОК. Чтобы извлечь файлы журналов, подключите устройство к компьютеру с помощью USB-кабеля. Перейдите в /storage/mtklog/ и скопируйте файлы с устройства на ПК.
Кому и для чего нужно приложение MTKLogger
MTKLogger – это программа-функция, которая сохраняет все события и действия, выполненные пользователем, при этом занимая всё свободное место в памяти смартфона или на SD-карте. Необходимо только в том случае, если вы этого хотите. MTKLogger можно безопасно отключить и удалить. Это не повлияет на ваше устройство. После удаления приложения может потребоваться отключить функцию регистрации в вашем телефоне, чтобы предотвратить очередное накопление событий журнале в MTKLogger. Программа по сути является кейлоггером. Кейлоггер, иногда называемый регистратором нажатий клавиш или системным монитором, представляет собой тип технологии наблюдения, используемый для мониторинга и записи каждого нажатия клавиши, набранного на клавиатуре конкретного компьютера. Программное обеспечение типа Keylogger также доступно для использования на смартфонах, таких как устройства Apple iPhone и Android.
Злоумышленники часто используют такие утилиты в качестве инструмента-шпиона для кражи персональной информации, учётных данных для входа и конфиденциальной корпоративной информации. Регистраторы кейлоггеров могут также использоваться работодателями для наблюдения за компьютерной деятельностью сотрудников, родителями для контроля за использованием Интернета их детьми, пользователями для отслеживания возможной несанкционированной активности на их устройствах или правоохранительными органами для анализа инцидентов, связанных с кибератаками.
Аппаратный кейлоггер – это небольшое устройство, которое служит коннектором между клавиатурой и ПК (экраном и смартфоном). Девайс подключается через обычный разъем PS/2 или USB-адаптер, благодаря чему спрятать такое устройство для получения конфиденциальных данных несложно. Аппаратный кейлоггер может также иметь форму модуля, который устанавливается внутри самой клавиатуры. Когда пользователь печатает на клавиатуре, кейлоггер собирает каждое нажатие клавиши и сохраняет его как текст на своём собственном миниатюрном жёстком диске, который может иметь до нескольких гигабайт памяти. Чтобы получить доступ к собранной информации, злоумышленнику необходимо позже вернуться и физически удалить устройство. Существуют также беспроводные клавиатурные шпионы, которые могут перехватывать и дешифровать пакеты данных, передаваемые между беспроводной клавиатурой и её приёмником.
Читать еще: Перегревается ноутбук и выключается что делать HPПрограмма для создания кейлогинга Bottom of Form для установки не требует физического доступа к компьютеру пользователя. Приложение может запускаться и работать скрытно, чтобы избежать ручного обнаружения или антивирусного сканирования. Программа кейлоггера обычно состоит из двух файлов, которые устанавливаются в одном каталоге: файл библиотеки динамической компоновки (DLL), который выполняет всю запись, и исполняемый файл, который устанавливает файл DLL и запускает его в работу. Программа записывает каждое нажатие клавиши и периодически загружает информацию через Интернет. Некоторые кейлоггеры способны сохранять и другие данные, например, буфер обмена или создание снимков экрана.
Нужно ли оставлять mtk logger обычному пользователю
Как отключить приложение MTKLogger
Для отключения MTKLogger необходимо перейти в инженерное меню смартфона.
Удалите MTKLogger как пользователь root
Если вы уже получили права root, вы можете удалить MTKLogger, установив приложение «Root Uninstaller».
- Скачайте бесплатное приложение в Google Play. Программа предназначена для удаления других приложений. Её функционал также позволяет удалять предустановленные системные утилиты.
- Запустите «Root Uninstaller» и найдите приложение, которое вы хотите удалить. Если вы не хотите удалять MTKLogger, программу можно заморозить, чтобы она не засоряла систему.
Права root открывают довольно много новых возможностей, и реализовать их можно не только через Root Uninstaller. Например, то же самое можно сделать с помощью альтернативного, но более сложного в использовании приложения Root Explorer.
В первом параметре метода используется строка, называемая тегом. Обычно принято объявлять глобальную статическую строковую переменную TAG в начале кода:
Некоторые в сложных проектах используют следующий вариант, чтобы понимать, в каком классе происходит вызов:
Далее уже в любом месте вашей программы вы вызываете нужный метод журналирования с этим тегом:
Также используется в исключениях:
Пользователи не видят этот журнал. Но, вы, как разработчик, можете увидеть его через программу LogCat, доступный через ADB или DDMS.
LogCat также можно запустить из командной строки:
Параметры командной строки смотрите в документации.
Быстрое отключение журналирования
Теперь остаётся только присвоить нужное значение переменной isDebug перед созданием готового apk-файла для распространения.
Способ устарел. В 17-й версии Android Build Tools появился класс BuildConfig, содержащий статическое поле DEBUG. Можно проверить следующим образом:
В этом случае конфигурация releaseWithLog будет являться релизной сборкой с ведением логов. Естественно, в коде слегка поменяется проверка:
LogCat на устройстве
Не знаю, как то сам. И под этой надписью нужно что то написать. Один тип пишет так:" В Engineer Mode есть птичка "Start tag log". Снял. И на SD карте папку mtklog удалил." Но у меня нет такого мода, но зато папка такая присутствует. Я удалял эту папку, но проблема ушла не на долго. потом опять появилась(
Вы каким то образом включили логирование андроида (функция для разработчиков) гг
залезь в настройки и выбери восстоновление заводсих настроек правда все сотрется но зато ты избавишся от этой проблемы
Арутюн, у тебя мод стоит как и у меня раньше но так как у меня планшет был практически пуст я его восстановил на заводские.Хотя погоди у меня есть прога но для ее работы нужны рут права посхмотри на ютубе как их получить именно для наших с сурфером 7.02 показывается как получить рут.После того как станеш супер пользователем заходи в прогу SD Maid выбери сверху во вкладке поиск мусора и удали все че найдет програмка
Спасибо за помощь. Я поменял планшет, пока вроде не пишет такого, но на будующее буду знать.
Арутюн, незачто и это ты можеш посоветовать игры какие нибудь прост уже незнаю в чё поиграть обе gta прошёл modern combat, sybway во всё уже погамал НАВЕРНО.
Хочу начать небольшой разговор о том, как можно получать данные о работе приложения и некоторых его компонентов от пользователей.
Одно дело — разработка, LogCat в Android Studio (если вы из любителей пожестче — можно распечатку в консоли смотреть с помощью adb), и совсем другое — ломать голову над вопросом почему у вас все работает на всем парке тестовых устройств, а пользователь жалуется на абсолютно обратную ситуацию. Коммуникация между разработчиком и конечным пользователем — это хорошо, но совсем другое — видеть своими глазами картинку происходящего (помните, как в матрице — для кого-то это зеленые иероглифы, а для кого-то — женщина в красном?)
Предлагаю разбить задачу на несколько частей, а именно — сбор и хранение логов, способ их передачи из одного приложения в другие с помощью FileProvider, ну и небольшой helper класс для создания писем с аттачами. Итак, поехали.
Кто-то использует System.out.println, кто-то — статические методы класса Log. Я с некоторых пор пришел к написанию своего класса для распечатки логов. Давайте вкратце расскажу почему.
Во-первых, это проще. Как правило, для отслеживания изменений в процессе выполнения приложения я использую одну и ту же метку. И вот однажды я подумал — зачем ты пишешь постоянно Log.i(MY_TAG, «info») если можно сократить немного и убрать из этой формулы одну постоянную?
Во-вторых, расширение логгирования. Это конкретно упирается в нашу задачу — хранение логов в файлах. Можно написать отдельный класс, в который будем передавать какие-то данные, как то: данные и имя файла, но данные мы уже передаем в метод Log.i / Log.e / проч., создавать лишний раз переменную что ли для этого? Некрасиво все это как-то.
Ладно, довольно лирики, давайте лучше взглянем на класс Diagnostics.
Для того, чтобы вывести информацию в LogCat с дефолтной меткой, достаточно написать следующее:
Иногда мне хочется видеть какие методы вызываются и в каких объектах. И с какими параметрами или значениями переменных. В общем, тут важно для меня — где именно производится вызов. Тогда я использую следующую конструкцию
Diagnostics.i(this, “onCreate w/param1 = “ + param1);
где this — это экземпляр класса Caller. Например, для MainActivity вы увидите следующее:
03–29 12:31:53.203 16072–16072/com.isidroid.platform I/Diagnostics: MainActivity.onCreate w/param1 = 200
И все сразу становится понятно — кто вызывает и где вызывает.
А теперь о хранении этой информации.
Как вы уже могли видеть, в классе Diagnostics есть методы для работы с файлами — createLog и appendLog. Объяснять, я думаю, не стоит — первый создает файл, второй — добавляет в него строку. Для новичков или тех, кто ленится читать код, уточню — appendLog создает файл, если его не существует, а createLog всегда создает новый. Чтобы лишней информации там не хранилось.
Файлы хранятся в cache директории, которая, к слову, недоступна для других приложений (ну, если у вас телефон не рутован, конечно).
В общем, теперь процедура распечатки лога и хранения его в файле выглядит следующим образом.
Надеюсь, это выглядит просто в использовании.
Как я уже говорил выше, наши файлы для лога хранятся в некоторой защищенной от чужих глаз папке. Она настолько защищена, что если вы попробуете передать файлы в другое приложение с использованием относительного пути File.getAbsolutePath(), то вы потерпите неудачу.
На помощь к нам мчится FileProvider, друзья!
2. Указываем директории, доступные для шаринга. Для этого создаем файл res/xml/cache_file_paths и для нашего конкретного примера заполняем его.
Конец.
Нет, правда, это все.
На самом деле это довольно мощный инструмент для работы с файлами в вашем приложении, но в рамках поставленной задачи это все, что нам нужно сделать. Подробности — в официальной документации.
Мы с вами почти добрались до конца, осталось дело за малым. Вообще, создание намерения (intent) для отправки писем — это довольно тривиальная задача, чтобы под нее писать отдельный хелпер. Но с другой стороны, если можно причесать код в вашей Activity / Fragment, то почему бы и нет, верно?
Гораздо симпатичнее будет выглядеть какой-нибудь строитель (builder) в коде нежели условия, проверки и лишние циклы. Я за то, чтоб это выносить в отдельный класс (кстати, не только я ратую за разделение представления от бизнес-логики).
Давайте перейдем сразу к сути. Сначала я покажу класс (который вы можете скопировать и использовать не глядя, конечно), а потом пример его использования. Поехали!
Где this — это Activity.
Вы можете самостоятельно указать «рыбу» для текста письма, но я рекомендую использовать те данные, которые указаны в методе buildContent, расширяя их при необходимости. Можно конечно извернуться и применить паттерн «декоратор» для расширения этих данных без модификации класса FeedbackHelper, но лично для меня необходимости в этом не было… Что до вас, то дерзайте!
Читайте также: