アプリがクラッシュする深刻な問題があります。
アプリのテキストを TextView に読み込んでいます。このテキストの一部はクリック可能で、別のアクティビティを呼び出す必要があります - これはほとんどのデバイスで正常に機能します。残念ながら、Nexus 7 デバイスでは機能しません。その理由はよくわかりません。
これは、Google から取得したスタック トレースです。
java.lang.RuntimeException: Android.os.Handler.(Handler.java:111) で Android.os.Handler.(Handler.java:197) で Looper.prepare() を呼び出していないスレッド内でハンドラを作成できませんandroid.widget.Editor$UserDictionaryListener.(Editor.java:3836) で android.widget.Editor.(Editor.java:192) で android.widget.TextView.createEditorIfNeeded(TextView.java:8475) で android.widget. TextView.setText(TextView.java:3611) で android.widget.TextView.setText(TextView.java:3554) で android.widget.TextView.append(TextView.java:3277) で android.widget.TextView.append(TextView .java:3267) [...一部のアプリ メソッドですが、この問題には関係ありません...]
Java コード:
final String text = displayedText;
SpannableString link = makeLinkSpan(displayedText, new View.OnClickListener() {
@Override
public void onClick(View v) {
//call the activiy
}
});
textView.append(link);
スタックトレースは Looper.prepare() を呼び出すように指示していますが、どこにあるのかわかりません... AsyncTask にデータをロードしています。doInBackground メソッド内でレイアウトがインフレートされ、textView はその子にすぎません。この問題が Nexus 7 ユーザーにのみ影響し、デバイスには影響しない理由がわかりません。Nexus 7 プリセットのエミュレーターでも問題なく動作しています
これを解決する方法はありますか?:D