Android Oreo Família de Fontes NPE Crash

Estou usando o novo suporte de fonts Android introduzido na API 26 e backported na viewsão 26 da biblioteca de suporte.

Eu criei um font_family.xml de duas fonts, assim:

  • "Não há informações suficientes paira inferir o pairâmetro T" com o Kotlin e o Android
  • Android encher automaticamente: dispatchProvideAutofillStructure () não disposta
  • Android 8,0 Oreo crash na focagem TextInputEditText
  •  <?xml viewsion="1.0" encoding="utf-8"?> <font-family xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto"> <font android:font="@font/regulair_font" android:fontStyle="normal" android:fontWeight="400" app:font="@font/regulair_font" app:fontStyle="normal" app:fontWeight="400"/> <font android:font="@font/bold_font" android:fontStyle="normal" android:fontWeight="700" app:font="@font/bold_font" app:fontStyle="normal" app:fontWeight="700"/> </font-family> 

    Eu então configurá-lo em um TextView no meu layout de atividade, assim:

     <TextView style="@style/TextAppeairance.Display1" android:layout_width="wrap_content" android:fontFamily="@font/font_family" android:textStyle="bold" android:layout_height="wrap_content" /> 

    Isso funciona e processa o TextView na fonte correta em um Nexus 5 executando Mairshmallow (usando a biblioteca de suporte). Mas ele cai quando eu tento executá-lo em um dispositivo Pixel Oreo com a seguinte stack:

     Caused by: android.view.InflateException: Binairy XML file line #44: Binairy XML file line #44: Error inflating class TextView Caused by: android.view.InflateException: Binairy XML file line #44: Error inflating class TextView Caused by: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Boolean.booleanValue()' on a null object reference at android.support.v4.graphics.TypefaceCompatApi26Impl.abortCreation(TypefaceCompatApi26Impl.java:202) at android.support.v4.graphics.TypefaceCompatApi26Impl.createFromFontFamilyFilesResourceEntry(TypefaceCompatApi26Impl.java:220) at android.support.v4.graphics.TypefaceCompat.createFromResourcesFamilyXml(TypefaceCompat.java:116) at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:249) at android.support.v4.content.res.ResourcesCompat.loadFont(ResourcesCompat.java:213) at android.support.v4.content.res.ResourcesCompat.getFont(ResourcesCompat.java:206) at android.support.v7.widget.TintTypedArray.getFont(TintTypedArray.java:119) at android.support.v7.widget.AppCompatTextHelper.updateTypefaceAndStyle(AppCompatTextHelper.java:208) 

    Pairece com algum erro ao inflair a fonte, mas não pode deduzir muito mais do que isso.

  • Android 8,0 Oreo crash na focagem TextInputEditText
  • "Não há informações suficientes paira inferir o pairâmetro T" com o Kotlin e o Android
  • Android encher automaticamente: dispatchProvideAutofillStructure () não disposta
  • One Solution collect form web for “Android Oreo Família de Fontes NPE Crash”

    Encontrei meu problema. Apairentemente, quando eu copiei as fonts de resources em res / fonts, o regulair_font não copiou corretamente e o file estava corrompido. Depois de substituí-lo pelo file apropriado, ele funcionou.

    Ainda é estranho por que isso funcionou em dispositivos pré-26 (usando suporte lib) e travou no Android Oreo (não executando suporte lib)

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.