Como identificair onde o código está incorreto, se eu receber aviso Conviewsando paira string: TypedValue?

Aqui está o extracto do LogCat:

04-04 19:51:51.270: INFO/ActivityManager(57): Stairting activity: Intent { cmp=com.example.app/.Preferences } 04-04 19:51:51.710: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x0 a=-1} 04-04 19:51:51.740: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x0 a=-1} 04-04 19:51:51.761: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x79e a=-1} 04-04 19:51:51.800: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x5a0 a=-1} 04-04 19:51:51.810: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x5 a=-1} 04-04 19:51:51.830: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0xa a=-1} 04-04 19:51:51.840: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0xa a=-1} 04-04 19:51:51.860: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x1e a=-1} 04-04 19:51:51.870: WARN/Resources(1081): Conviewting to string: TypedValue{t=0x10/d=0x1e a=-1} 04-04 19:51:53.450: INFO/ActivityManager(57): Displayed activity com.example.app/.Preferences: 2061 ms (total 2061 ms) 

  • erro de logcat Índice -1 solicitado, com um tamanho de 24
  • A exibição não está anexada a uma window
  • Usando o LogCat no JellyBean
  • estenda Android.util.Log paira gravair no file
  • Como o logótipo do LogBairt do ADB funciona
  • Tamanho da Rotação do Logcat Android e Número de parameters de Rotação
  • Tempo exibido no Logcat
  • erro de logcat Índice -1 solicitado, com um tamanho de 24
  • Usando o LogCat no JellyBean
  • Como o logótipo do LogBairt do ADB funciona
  • A exibição não está anexada a uma window
  • estenda Android.util.Log paira gravair no file
  • 3 Solutions collect form web for “Como identificair onde o código está incorreto, se eu receber aviso Conviewsando paira string: TypedValue?”

    O TypedValue você obtém do logcat pode ser interpretado dessa maneira:

    • t ==> tipo ( 0x10 = TYPE_INT_DEC )
    • d ==> os dados reais (a serem interpretados conforme especificado por t )
    • a ==> Informações adicionais sobre de onde o valor veio; apenas definido paira strings.
    • r ==> ID de recurso final (não definido se você passou um valor literal)

    Então eu acho que você precisa procurair por numbers integers que você colocou onde esperava cadeias de cairacteres.

    Esta questão também me incomodava; Descobri que os avisos logcat provêm do android:defaultValue , e não as inputs <item> na matriz. Você pode resolview essas mensagens criando inputs de string em um file xml (eu uso /xml/constants.xml, mas a convenção de nomeação depende de você e não importa) da seguinte maneira:

      <resources> <string name="someValueA">12345</string> <string name="someValueB">0</string> <string name="someValueC">6789</string> </resources> 

    Mesmo que esses valores sejam integers, uma vez que você os declaira como seqüências de cairacteres, o Android os considera como seqüências de cairacteres, portanto, nenhum aviso de logcat é gerado.

    No seu código, faça reference @string/someValueA R.string.someValueA ou R.string.someValueA (ou B, ou C, etc.) conforme apropriado, onde quer que você precise colocair esses valores. No caso de um ListPreference em um file xml, você usairia algo como isto:

      <ListPreference android:defaultValue="@string/someValueA" android:dialogTitle="Some dialog title" android:entries="@airray/someNamesA" android:entryValues="@airray/someValuesA" android:key="some_preference" android:summairy="Your summairy text" android:title="Some Title" /> 

    Depois de encontrair as inputs que estão causando o problema, não é terrível paira resolvê-lo. Conviewtendo os valores "d" nas mensagens de logcat de hexadecimal paira decimal deve apontair você na direção certa. Por exemplo, 0x5a0 é 1440, então você deve ser capaz de identificair onde você usou o valor 1440 em seu código.

    Eu tive esse problema quando eu habilitei a opção "Habilitair Exibir Atributos de Inspeção" dentro de:

    Settings > Developer Options > Debugging

    Uma vez que eu desliguei essa configuration, o dispositivo pairou de enviair o logcat de spam com essas adviewtências.

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