Как получить разрешение экрана android

Содержание
  1. Советы
  2. Cleartext HTTP traffic not permitted (https)
  3. Запретить делать скриншот экрана приложения
  4. Аналог html-кода
  5. Где находятся исходники системного калькулятора?
  6. Имитация тяжёлых задач
  7. Доступ к ресурсам через URI
  8. Ошибка Debug Certificate expired
  9. Убрать предупреждающие значки при использовании строк в атрибутах
  10. Проверка на первый запуск приложения
  11. Ошибка при загрузке apk-файла на эмулятор/устройство
  12. Сделать скриншот экрана своего приложения
  13. Раскодирование HTML-символов
  14. Кодирование строк по схеме UTF-8
  15. Кодирование в режиме Base64
  16. Пишем собственную функцию md5() для вычисления хэша строки
  17. Как заблокировать экран в приложении?
  18. Узнать размеры экрана
  19. В чем разница между fill_parent и match_parent
  20. Как убрать заголовок у Activity?
  21. Как использовать собственный значок для программы
  22. Получить номер версии программы
  23. Убить приложение
  24. Сколько используется памяти
  25. Разрешённый объём памяти для приложения
  26. Запретить автоматическую смену ориентации при повороте устройства
  27. Особенности изменения разрешения экрана на смартфоне с ОС Android
  28. Зачем менять параметры экрана
  29. Как узнать разрешение экрана на Android-устройстве
  30. С помощью скриншота
  31. Официальные характеристики
  32. AIDA64
  33. Как изменить разрешение дисплея на смартфоне/планшете
  34. Easy DPI Changer
  35. SecondScreen
  36. Android Debug bridge
  37. Как изменить расширение экрана без специальных приложений

Советы

Cleartext HTTP traffic not permitted (https)

При работе с Android 8+ примеры, которые обращаются к веб-адресам по протоколу http вызывают ошибку. Чтобы обойти данное ограничение, можно сделать следующее.

В папке res/xml размещаем файл network_security_config.xml:

В манифесте в блоке application добавляем новый атрибут.

Запретить делать скриншот экрана приложения

Существует специальный флаг FLAG_SECURE, запрещающий пользователю сделать скриншот вашего экрана. Это нужно в целях безопасности для отдельных видов приложений, например, банковских.

Аналог html-кода

При многострочных текстах вы можете воспрепятствовать переносу слов на разные строки, если их желательно держать вместе. В html есть специальный символ неразрывного пробела . В строковых ресурсах вы можете использовать символ или юникод-код \u00A0.

Где находятся исходники системного калькулятора?

Имитация тяжёлых задач

В Android нельзя выполнять сложные задачи в основном потоке. Для создания быстрой заглушки, которая будет имитировать тяжёлую задачу, можно написать следующий код:

Например, поместите код в обработчик нажатия кнопки и после нажатия нажмите на кнопку Back. Программа зависнет и вы увидите сообщение об этом.

Доступ к ресурсам через URI

Обычно мы обращаемся к ресурсам через идентификатор. Существует альтернативный способ через Uri. Например, такой подход может пригодиться для загрузки изображения в WebView при помощи метода loadUrl(). Формат доступа будет следующим: android.resource://[package-name]/res-id. Например:

Ошибка Debug Certificate expired

По умолчанию вашей программе выдается отладочный сертификат на один год. Если у вас есть старый проект, то можете получить сообщение об ошибке: Error generating final archive: Debug Certificate expired.

Вам следует удалить старый сертификат, и Eclipse создаст новый ещё на один год. Путь к сертификату можно посмотреть в настройках: Preferences | Android | Build | Default debug keystore. Обычно это папка C:\Users\ИмяПользователя\.android.

Убрать предупреждающие значки при использовании строк в атрибутах

Если в некоторых атрибутах компонентов использовать строки, то появляются предупреждающие значки с всплывающей надписью [I18N] Hardcoded string «Котики рулят», should use @string resource. Надпись призывает использовать строковые ресурсы, а не писать текст прямо в атрибутах. На самом деле это всего лишь предупреждение, а не ошибка. Программа будет прекрасно запускаться, но новичков такие надписи пугают. Можете убрать данное предупреждение, если добавите дополнительный атрибут tools:ignore.

Читайте также:  Блок головоломки для андроида

Проверка на первый запуск приложения

Для проверки первого запуска приложения можно использовать настройки SharedPreferences. Смотрите пример.

Ошибка при загрузке apk-файла на эмулятор/устройство

Если при загрузке apk-файла вашего приложения на эмулятор или устройство вы получаете сообщение об ошибке:

Failed to upload xxxxxxxx.apk on device ’emulator-5554′
java.io.IOException: Unable to upload file: timeout

То зайдите в Eclipse в меню Window | Preferences | Android | DDMS и в текстовом поле ADB connection time-out (ms) вместо значения по умолчанию 5000 введите большее значение.

Сделать скриншот экрана своего приложения

Один из примеров снятия скриншота своего экрана — через методы рисования получить графический отпечаток корневой разметки, а затем сохранить его как картинку, которую можно вывести в ImageView. Выберите любой ваш экран для опытов и добавьте на неё кнопку для снятия скриншотов и ImageView для вывода сохранённого изображения. В моём случае корневым элементом была компоновка TableLayout.

Результат до и после снятия скриншота. Сам скриншот помещается в ImageView, поэтому растягивается до его размеров. Попробуйте доработать пример.

Изменённый пример, когда скриншот сохраняется на SD-карту:

Не забываем про разрешения.

Раскодирование HTML-символов

Если вам нужно раскодировать HTML-символы (угловые скобки <>, знак амперсанда &, кавычки «»), то воспользуйтесь методом TextUtils.htmlEncode(). Добавим на форму две текстовые метки. И небольшой код для примера:

Примечание: Если вы пользуетесь Notepad++, то там есть такая же возможность: TextFX | TextFX Convert | Encode HTML.

Кодирование строк по схеме UTF-8

Вероятно, вы не раз замечали, что в адресной строке некоторые символы заменяются на последовательность других символов. Самый простой пример — символ пробела заменяется на %20. Немного изменим предыдущий пример:

В нашем примере были преобразованы символы пробела и русские символы.

Кодирование в режиме Base64

Пишем собственную функцию md5() для вычисления хэша строки

У PHP-программистов есть готовая функция md5(), которая вычисляет MD5 хэш строки с использованием алгоритма MD5 RSA Data Security и возвращает этот хэш. Хэш представляет собой 32-значное шестнадцатеричное число. Напишем собственную функцию на Java:

Осталось применить её где-нибудь:

Как заблокировать экран в приложении?

Также нужно установить разрешение android.permission.DISABLE_KEYGUARD.

Если стоит обратная задача — запретить блокировку экрана при долгом бездействии, то используйте метод setKeepScreenOn() или используйте XML-атрибут android:keepScreenOn=»true».

Узнать размеры экрана

Для вычисления размеров экрана можно воспользоваться двумя способами. Второй способ более правильный.

В чем разница между fill_parent и match_parent

match_parent = fill_parent. Первое свойство нужно использовать в новых проектах, второе свойство считается устаревшим и пока оставлено в целях совместимости.

Как убрать заголовок у Activity?

В некоторых случаях хочется спрятать заголовок (Title) у программы. Есть несколько способов. Например, применить специальную тему (прописать в манифесте файла):

Также попробуйте android:theme=»@android:style/Theme.Black.NoTitleBar.Fullscreen» (убирает не только заголовок, но и панель уведомлений). Названия тем могут быть и другими, смотрите документацию. Несколько примеров

Если у вас используется своя тема, то используйте в ней параметр:

Также существует программный способ (перед вызовом setContentView):

Как использовать собственный значок для программы

Когда вы создаете учебные примеры, то у всех программ используется стандартный значок с изображением андроида. Как же использовать свой значок? Ответ прост. В папке проекта /res вы можете видеть подпапки drawable-ldpi, drawable-mdpi, drawable-hdpi и др., в которых и содержатся готовые значки в формате PNG под разные размеры экранов.

Читайте также:  Get wifi password from android

Вы можете просто открыть png-файл в графическом редакторе и нарисовать что-то свое и сохранить изменения.

Вы можете сохранить значки под своим именем, например, cat.png. В этом случае вам надо открыть файл манифеста, найти там строчку:

И отредактировать её, например, android:icon=»@drawable/cat» (без расширения). Как вариант, вы можете сохранить один значок в папке drawable в нужном размере, если пишете программу под определенные типы телефонов.

Размеры значков в папках (часть):

  • Low density – ldpi = 36×36 px
  • Medium density – mdpi = 48×48 px
  • High density – hdpi = 72×72 px
  • Extra-high density screen — xhdpi (320 dpi) = 96 × 96 px

Получить номер версии программы

Убить приложение

Сколько используется памяти

Нужно от общей памяти отнять свободную память

Более общий пример:

Разрешённый объём памяти для приложения

Система выделяет каждому приложению определённый лимит памяти. На разных устройствах размер выделяемой памяти отличается. Чтобы узнать размер выделяемой памяти для вашего приложения, используйте код:

Особенно это касается приложений, которые активно используют графику. Следите за размерами изображений, вызывайте метод recycle() для освобождения памяти при работе с классом BitmapFactory.

Начиная с Android 3.0 можно попросить у системы выделять чуть больше памяти, прописав в манифесте просьбу:

Запретить автоматическую смену ориентации при повороте устройства

Если вы хотите запретить автоматическую смену ориентацию при повороте устройства, то можно ее отключить для нужного экрана. Например, если экран с настройками должен отображаться только в портретном режиме, то добавьте одну строчку с атрибутом screenOrientation в манифест файла для соответствующей активности

Источник

Особенности изменения разрешения экрана на смартфоне с ОС Android

Чтобы изменить разрешение экрана Андроид, пользователи могут использовать специальные приложения, отладку по USB или применить инструменты, встроенные в прошивку девайса. Объясним, как изменить параметры дисплея и зачем это нужно.

Зачем менять параметры экрана

Существует 2 основных причины :

  1. Уменьшение разрешения снижает нагрузку на аппаратную начинку — увеличивается fps в играх, медленнее садится батарея, но изображение становится менее четким.
  2. Увеличить плотность пикселей и размер шрифта — картинка станет насыщеннее, но аккумулятор начнет садиться быстрее из-за возросшей нагрузки.

Обратите внимание! Не стоит увеличивать разрешение на смартфонах с бюджетными чипсетами. Без запаса мощностей, устройство будет греться и терять в производительности.

Как узнать разрешение экрана на Android-устройстве

Определив ширину и высоту пикселей дисплея, пользователь может решить, в “какую сторону” их изменять.

С помощью скриншота

Сделайте снимок рабочего стола и проверьте данные о файле:

  1. Зажмите клавишу блокировки и качель уменьшения громкости.
  2. Откройте «Галерею» или ее аналог.
  3. Перейдите в папку «Screenshots».
  4. Зажмите палец на снимке и разверните меню «Еще».
  5. Тапните по «Детали».
  6. Данные будут указаны в «Разрешение».
  1. Откройте «Проводник».
  2. Найдите подпапку «Screenshots», находится в папке «DCIM» или «Pictures».
  3. Выделите скрин, зажав на нем палец, тапните «Еще» и выберите «Свойства».
  4. Данные указаны в разрешении.

Официальные характеристики

Подробную информацию об экране указывают в ТХ устройства в интернет-магазинах.

Читайте также:  Драйвера для виндовс для подключения андроид

Интересно! Значение PPI — указывает на плотность пикселей и чем выше этот параметр, тем “четче” изображение (нет зернистости).

AIDA64

  1. Откройте «Play Market».
  2. Вбейте «AIDA64» в поиск.
  3. Нажмите «Установить».
  4. Откройте софт и перейдите в «Отображение».
  5. Обратите внимание на «Разрешение экрана» и «Плотность пикселей».

Как изменить разрешение дисплея на смартфоне/планшете

Для этого существует несколько вариантов приложений, которые работают как на устройствах с Root, так и без них.

Easy DPI Changer

Вариант для пользователей смартфонов с Рут-правами доступа.

  1. Скачайте приложение, как описано для AIDA64.
  2. Измените характеристики экрана, указав плотность пикселей «Density» и нажмите «Apply».
  3. Либо установите параметры экрана в «Resolution», установив ширину и высоту изображения. Тапните «Apply».
  4. Откатывают изменения, тапнув по иконке закрученной стрелки.

SecondScreen

Еще одно решение для владельцев смартфонов с Root:

  1. Загрузите софт.
  2. После запуска приложения, тапните по изображению «+».
  3. Создайте новый профиль, указав название и выбрав тип разрешения. Жмите «ОК».
  4. Появятся параметры, доступные для поправок. Оставьте базовые значения и тапайте на дискету.
  5. Выберите «Load».

Обратите внимание! В настройках учетной записи можно вручную выставить желаемое разрешение и dpi.

Android Debug bridge

Единственный способ, как изменить разрешение экрана на Андроид без рут прав. Это действие требует установить программу Android Debug bridge или распаковать ее файлы в отдельную папку с названием adb, чтобы получить доступ к изменению параметров устройства.

Проблемы, с которыми может столкнуться пользователь :

  • необходимо подобрать разрешение и плотность, сопоставимую с соотношением сторон девайса, диагональю экрана;
  • после применения параметров, будут наблюдаться ошибки в отображении интерфейса;
  • после обновления, часть системных приложений откажутся работать;
  • слишком низкие параметры превратят аппарат в “кирпич”.

  1. Перейдите в «Настройки».
  2. Выберите «О телефоне».
  3. 7 раз щелкните на «Номер сборки» или «Версия прошивки».
  4. Вернитесь в главное меню и выберите «Опции разработчика». Они могут находиться в «Специальные возможности»«Для разработчиков».
  5. Включите «Отладка USB».

Интересно! Чтобы приложения не вступали в конфликт с аппаратом, после изменения параметров дисплея, следует отключить отладку по USB и режим «Для разработчиков» (тумблер находится сверху одноименного меню).

Второй шаг — подключите смартфон или планшет к компьютеру через кабель :

  1. Появится сообщение о подтверждении отладки, тапните «ОК».
  2. На клавиатуре нажмите «Win+R», чтобы открыть командную строку.
  3. Задайте команду «cmd».
  4. Введите «cd /» и щелкайте «Enter» (далее нажимайте его после каждой команды).
  5. Теперь укажите «cd adb». Обратите внимание, что программа должна быть установлена в папке с названием adb и расположена на диске, где хранится Windows.
  6. Используйте команду «adb».
  7. Введите «adb shell dumpsys display».
  8. Найдите строку с указанием «width», «heignt» и «density». Запишите указанные там параметры, чтобы суметь вернуть изменённые характеристики.
  9. Для изменения разрешения задайте команду «adb shell wm size 111×111», где вместо 111 разрешение.
  10. Измените плотность, используя «adb shell wm density xxx», где вместо xxx чувствительность (этот параметр менять необязательно).
  11. Чтобы сохранить полученный результат введите «adb reboot» — смартфон перезагрузится.

Как изменить расширение экрана без специальных приложений

Во флагманских смартфонах с высоким разрешением, параметры экрана изменяют через настройки:

  1. Откройте «Настройки».
  2. Перейдите в «Экран».
  3. Выберите «Разрешение экрана».
  4. Тапните по среднему или минимальному значению.

Источник

Оцените статью