Não é possível encontrar identificadores de recursos do AAR no XML

Eu desenvolvi uma preferência personalizada para um aplicativo. Possui dois atributos customizados. Estou tentando mover a preferência para um projeto de biblioteca para reutilização em outros projetos. Movi o arquivo Java junto com o layout correspondente e atrai os arquivos XML. Aqui está o arquivo attr no projeto da biblioteca:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="NumberPickerPreference" >
        <attr name="minValue" format="integer" />
        <attr name="maxValue" format="integer" />
    </declare-styleable>
</resources>

Aqui está o manifesto:

<manifest package="com.mydomain.androiduilibrary">
</manifest>

Um manifesto de aparência estranha, com certeza. Quando gerei o projeto da biblioteca, a única coisa que o Android Studio colocou no manifesto foram as informações do SDK, que geraram um aviso sobre o fato de já estar especificado no arquivo build.gradle, e excluí a entrada no manifesto.

Gero o arquivo AAR usando a tarefa bundleRelease e obtenho um arquivo chamado androiduilibrary-release.aar. Depois, vou para o projeto que precisa usar essa preferência e seleciono "Novo módulo | Importar pacote .JAR ou .AAR", navego até o AAR e agora ele está no meu projeto como um módulo intitulado androiduilibrary-release. Faço uma dependência de módulo na caixa de diálogo Estrutura do projeto e agora posso fazer referência ao código de preferência em Java. Por enquanto, tudo bem.

No entanto, quando tento fazer referência à preferência em XML, recebo o seguinte erro em meus atributos personalizados: "Erro: (9) Nenhum identificador de recurso encontrado para o atributo 'minValue' no pacote 'com.mydomain.androiduilibrary'". Aqui está o XML:

<PreferenceScreen
    xmlns:android="http://schemas.android.com/apk/res/android" 
    android:title="@string/location_service_settings_preference_header_title"
    xmlns:custom="http://schemas.android.com/apk/res/com.mydomain.androiduilibrary">

<com.mydomain.androiduilibrary.NumberPickerPreference
    android:title="@string/update_interval_preference_title"
    android:key="@string/update_interval_preference_key"
    android:defaultValue="@integer/update_interval_preference_default"
    android:summary="@string/update_interval_preference_summary"
    custom:minValue="@integer/update_interval_preference_min"
    custom:maxValue="@integer/update_interval_preference_max"
    android:dialogMessage="@string/update_interval_preference_dialog_message"
    android:dialogTitle="@string/update_interval_preference_title" />

Eu posso olhar dentro do AAR e ver que os valores estão sendo preenchidos no R.txt:

int attr maxValue 0x7f010001
int attr minValue 0x7f010000

E que seu manifesto está sendo criado corretamente:

<?xml version="1.0" encoding="UTF-8"?>

<manifest android:versionName="1.0" android:versionCode="1"
    xmlns:android="http://schemas.android.com/apk/res/android" package="com.mydomain.androiduilibrary">

    <uses-sdk android:targetSdkVersion="21" android:minSdkVersion="11"/>

</manifest>

Também recebo um aviso ao chamar a preferência personalizada: "O elemento com.mydomain.androiduilibrary.NumberPickerPreference não é permitido aqui", portanto, acho que também será um problema.

Está faltando uma etapa que me permitirá fazer referência a elementos do AAR no meu XML? Estou usando o Android Studio 1.0.2. Desde já, obrigado.

questionAnswers(1)

yourAnswerToTheQuestion