I am struggling to get to the root of a crash report from an android user using an asus device running 5.1.1. The crash report is below:
Caused by java.lang.RuntimeException
Failed to resolve attribute at index 96
Raw Text
android.content.res.TypedArray.getColor (TypedArray.java:401)
android.widget.TextView. (TextView.java:710)
android.widget.EditText. (EditText.java:65)
android.widget.EditText. (EditText.java:61)
android.support.v7.widget.AppCompatEditText. (AppCompatEditText.java:64)
android.support.v7.widget.AppCompatEditText. (AppCompatEditText.java:60)
android.support.design.widget.TextInputEditText. (TextInputEditText.java:41)
Based off line 410 of TypedArray#getColor (http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.1.1_r1/android/content/res/TypedArray.java#401) the original index value passed to getColor is 96 / STYLE_NUM_ENTRIES. STYLE_NUM_ENTRIES is 6, therefore the index value passed in was 16.
Where I am getting hung up is looking at line 710 which is an empty line in 5.1.1 (http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/5.1.1_r1/android/widget/TextView.java#710). I would take this as evidence that ASUS modified the source of TextView. I am also confused by 16 not mapping to any TextAppearance_ attributes (https://stuff.mit.edu/afs/sipb/project/android/docs/reference/android/R.styleable.html#TextAppearance_textColorHighlight), let alone a color related TextAppearance_ attribute.
Is there a way to look at the modified source? What would be a good approach for continuing to troubleshoot? Did I make a fundamental mistake in my analysis of this stacktrace?
Likely related to android.view.InflateException: Error inflating class android.widget.EditText ASUS Android 5