Значки AccountAuthenticator
Я реализую AbstractAccountAuthenticator, и я не могу найти никакой информации о размерах значка и smallIcon.
Существует SampleSyncAdapter, который является образцом демонстрации для реализации вышеизложенного (он также демонстрирует, как реализовать AbstractThreadedSyncAdapter), но он определяет только 1 ресурс, пригодный для рисования для значка и smallIcon.
Кто-нибудь знает стандартные и требуемые размеры пикселей для обоих этих ресурсов?
Ответы
Ответ 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" />