0

私は自分の会社のためにAndroidアプリを作成しましたが、それは私にとってうまく機能しているので、自分では経験したことのないエラーを伴うクラッシュレポートがいくつかあります。修正方法がわからないのは、サービスのjava.lang.verifyErrorです。

クラッシュしている行は次のとおりです。

String post_request = ConnectionHelper.getTicketRequestJsonString(true, ticketIdsToDownload);

ConnectionHelperは、文字列を返す静的関数のみを含むクラスです。問題を解決するにはどうすればよいですか?

編集:役に立ったら、「セキュリティの問題」に遭遇しているとは思わずにコードを投稿します

public static String getTicketRequestJsonString(boolean details, List<String> ticketIds){
    String ticketString = "tickets:[";
    int count = ticketIds.size() - 1;
    for (int i = 0; i <= count; i++){
        String s = ticketIds.get(i);
        ticketString += s
        ticketString += i != count ? "," : "]";
    }
    return ticketString;
}
4

2 に答える 2

0

ここで同じ問題がありました。そして最終的に、影響を受けるクラスが使用することがわかりました

try {
localIP = InetAddress.getLocalHost().getHostAddress();
} catch (NetworkOnMainThreadException ex) {         
}

これは、Android 2.3 では VerifyError で失敗しました。

NetworkOnMainThreadException の使用を削除すると、2.3 で再び動作します。

于 2013-04-17T09:52:48.627 に答える
0

AVerifyErrorは、利用できないものを参照するクラスを Android が読み込もうとしたときに発生します。たとえば、Android 2.1 デバイスで実行しているときに、Android 3.0 クラスを参照するクラスをロードします。

問題を解決するにはどうすればよいですか?

ロードできないものを具体的に特定し、その対処方法を決定します。たとえば、Android 3.x デバイスで Android 3.0 クラスを使用しながら、Android 2.1 デバイスで Android 3.0 クラスをロードすることを回避できるトリックがあります。

于 2011-07-07T23:39:00.747 に答える