Skip to content

Commit 6fbdf3c

Browse files
committed
Igonre OPPO R11 Plus 6.0 NoSuchFieldError: No instance field mResultListener
1 parent cd7fcc8 commit 6fbdf3c

File tree

1 file changed

+32
-27
lines changed

1 file changed

+32
-27
lines changed

app/src/main/java/com/yyxx/wechatfp/network/updateCheck/UpdateFactory.java

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -26,40 +26,45 @@ public static void doUpdateCheck(final Context context, final boolean quite, fin
2626
if (!quite) {
2727
Toast.makeText(context, Lang.getString(Lang.TOAST_CHECKING_UPDATE), Toast.LENGTH_LONG).show();
2828
}
29-
new GithubUpdateChecker(new UpdateResultListener() {
30-
@Override
31-
public void onNoUpdate() {
32-
if (!quite) {
33-
Toast.makeText(context, Lang.getString(Lang.TOAST_NO_UPDATE), Toast.LENGTH_LONG).show();
29+
try {
30+
new GithubUpdateChecker(new UpdateResultListener() {
31+
@Override
32+
public void onNoUpdate() {
33+
if (!quite) {
34+
Toast.makeText(context, Lang.getString(Lang.TOAST_NO_UPDATE), Toast.LENGTH_LONG).show();
35+
}
3436
}
35-
}
3637

37-
@Override
38-
public void onNetErr() {
39-
if (!quite) {
40-
Toast.makeText(context, Lang.getString(Lang.TOAST_CHECK_UPDATE_FAIL_NET_ERR), Toast.LENGTH_LONG).show();
38+
@Override
39+
public void onNetErr() {
40+
if (!quite) {
41+
Toast.makeText(context, Lang.getString(Lang.TOAST_CHECK_UPDATE_FAIL_NET_ERR), Toast.LENGTH_LONG).show();
42+
}
4143
}
42-
}
4344

44-
@Override
45-
public void onHasUpdate(final String version, String content, final String pageUrl, String downloadUrl) {
46-
if (!dontSkip) {
47-
if (isSkipVersion(context, version)) {
48-
L.d("已跳過版本: " + version);
49-
return;
45+
@Override
46+
public void onHasUpdate(final String version, String content, final String pageUrl, String downloadUrl) {
47+
if (!dontSkip) {
48+
if (isSkipVersion(context, version)) {
49+
L.d("已跳過版本: " + version);
50+
return;
51+
}
5052
}
51-
}
52-
AlertDialog.Builder builder = new AlertDialog.Builder(context).setTitle(Lang.getString(Lang.FOUND_NEW_VERSION) + version);
53-
builder.setMessage(content);
54-
builder.setNeutralButton(Lang.getString(Lang.SKIP_THIS_VERSION), (dialogInterface, i) -> Config.from(context).setSkipVersion(version));
55-
builder.setNegativeButton(Lang.getString(Lang.CANCEL), (dialogInterface, i) -> {
53+
AlertDialog.Builder builder = new AlertDialog.Builder(context).setTitle(Lang.getString(Lang.FOUND_NEW_VERSION) + version);
54+
builder.setMessage(content);
55+
builder.setNeutralButton(Lang.getString(Lang.SKIP_THIS_VERSION), (dialogInterface, i) -> Config.from(context).setSkipVersion(version));
56+
builder.setNegativeButton(Lang.getString(Lang.CANCEL), (dialogInterface, i) -> {
5657

57-
});
58-
builder.setPositiveButton(Lang.getString(Lang.GOTO_UPDATE_PAGE), (dialogInterface, i) -> UrlUtil.openUrl(context, pageUrl));
58+
});
59+
builder.setPositiveButton(Lang.getString(Lang.GOTO_UPDATE_PAGE), (dialogInterface, i) -> UrlUtil.openUrl(context, pageUrl));
5960

60-
builder.show();
61-
}
62-
}).doUpdateCheck();
61+
builder.show();
62+
}
63+
}).doUpdateCheck();
64+
} catch (Exception | Error e) {
65+
//for OPPO R11 Plus 6.0 NoSuchFieldError: No instance field mResultListener
66+
L.e(e);
67+
}
6368
}
6469

6570
private static boolean isSkipVersion(Context context, String targetVersion) {

0 commit comments

Comments
 (0)