Подтвердить что ты не робот

Значки AccountAuthenticator

Я реализую AbstractAccountAuthenticator, и я не могу найти никакой информации о размерах значка и smallIcon.

Существует SampleSyncAdapter, который является образцом демонстрации для реализации вышеизложенного (он также демонстрирует, как реализовать AbstractThreadedSyncAdapter), но он определяет только 1 ресурс, пригодный для рисования для значка и smallIcon.

Кто-нибудь знает стандартные и требуемые размеры пикселей для обоих этих ресурсов?

4b9b3361

Ответ 1

Для экранов с высокой плотностью (drawable-hdpi):

  • smallIcon: 36x36 px
  • нормальный: 72x72 px

для экранов средней плотности (drawable-mdpi):

  • smallIcon: 24x24 px
  • нормальный: 48x48 px

Один ресурс, который можно использовать как для /inable, так и для ресурса, является ресурсом, который можно использовать по умолчанию, и предназначен для обычного размера экрана и средней плотности. Система масштабирует ресурсы плотности по умолчанию для экранов с высокой плотностью и вниз для экранов с низкой плотностью, поэтому лучше, если вы создадите каталог для hdpi и еще один для mdpi с заданным размером значков.

Надеюсь, что это поможет.

Ответ 2

Существует некоторая двусмысленность в отношении того, какая разница между icon и smallIcon. Android заявляет, что оба они относятся к значку слева от ярлыка учетной записи (значок робота для Android на этом рисунке), но где smallIcon используется вместо icon, зависит от размера экрана. Это определение, по-видимому, не является точным ввиду следующего сравнения:

введите описание изображения здесь

Приведенное выше сравнение значка и smallIcon в двух устройствах с разной шириной экрана. Из рисунка кажется, что андроид использует smallIcon для страницы учетных записей (левый снимок экрана в приведенном выше изображении). Значок большего размера используется только для страницы, показывающей разные учетные записи типа учетной записи (правый скриншот) в примечании 4, тогда как Nexus 5 отображает одинаковый размер значка для обоих экранов. Поскольку ширина экрана Nexus 5 и Note 4 составляет 388 дп и 445 дп соответственно, ширина экрана 400 дп может быть определена как порог для ширины экрана, над которой применяется более крупный значок. Тем не менее это не точно. Я затронул эту тему, а также тему аутентификации учетной записи андроида здесь

Ответ 3

Следуя конкретному предоставленному CsaByte, я получил эти размеры для моих значков Authenticator.

MDPI

  • smallIcon: 24x24
  • значок: 48x48

ИПЧР

  • smallIcon: 36x36
  • значок: 72x72

xhdpi

  • smallIcon: 48x48
  • значок: 96x96

xxhdpi

  • smallIcon: 72x72
  • значок: 144x144

xxxhdpi

  • smallIcon: 96x96
  • значок: 192x192

Поместите эти чертежи в свою папку с ограниченной способностью.

Затем в файле authenticator.xml вы можете пойти с этим:

<account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
    android:accountType="@string/account_type"
    android:label="@string/app_name"
    android:icon="@drawable/icon"
    android:smallIcon="@drawable/smallIcon" />

Размер значка такой же, как размер ic_launcher, если вы не хотите использовать пустое пространство внутри своего приложения, и вам не нужен специальный значок для вашего аутентификатора, вместо этого вы можете использовать mipmap ic_launcher. Ваш файл authenticator.xml может быть записан как:

<account-authenticator xmlns:android="http://schemas.android.com/apk/res/android"
    android:accountType="@string/account_type"
    android:label="@string/app_name"
    android:icon="@mipmap/ic_launcher"
    android:smallIcon="@drawable/smallIcon" />