Google Play商店仅在小米设备中显示崩溃(我无法复制)。请在下面找到崩溃日志。
我也曾尝试在小米设备中重现此崩溃,但无法重现。
java.lang.RuntimeException:
在android.os.AsyncTask $ 3.done(AsyncTask.java:309)
在java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
在java.util.concurrent.FutureTask.setException(FutureTask.java:223)
在java.util.concurrent.FutureTask.run(FutureTask.java:242)
在android.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask.java:234)
在java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
在java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:588)
在java.lang.Thread.run(Thread.java:818)
造成原因:java.lang.ExceptionInInitializerError:
在in.betterbutter.android.emoji.EmojiParse $ ParseAsync.doInBackground
(EmojiParse.java:30)
在in.betterbutter.android.emoji.EmojiParse $ ParseAsync.doInBackground
(EmojiParse.java:19)
在android.os.AsyncTask $ 2.call(AsyncTask.java:295)
在java.util.concurrent.FutureTask.run(FutureTask.java:237)
这是我的代码:
public class EmojiParse {
public void parse(JSONObject jsonObject) {
new ParseAsync().execute(jsonObject);
}
public class ParseAsync extends AsyncTask<JSONObject, Void, Void> {
@Override
protected Void doInBackground(JSONObject... params) {
JSONObject jsonObject = params[0];
try {
JSONArray jsonArray = jsonObject.getJSONArray("emojis");
for (int i = 0; i < jsonArray.length(); ++i) {
JSONObject object = jsonArray.getJSONObject(i);
String text = object.getString("text");
String code = object.getString("code");
String surrogates = StringEscapeUtils.unescapeJava(object.getString("surrogates"));
EmojiMap emojiMap = new EmojiMap();
emojiMap.hashSet.add(code);
emojiMap.displayMap.put(text, surrogates);
emojiMap.reverseMap.put(surrogates, text);
}
} catch (JSONException e) {
e.printStackTrace();
} catch (Exception e1) {
e1.printStackTrace();
}
return null;
}
}
}
最佳答案
在小米手机中,启用它在后台运行受到限制Setting
->'Apps' ->
已安装的应用程序-> 'Your App
-> Background Restrictions
-> No Restriction
这是因为小米默认为每个应用程序使用Baterry优化。
检查此链接here for example
使用给定的代码移至设置页面
Intent intent = new Intent();
intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
Uri uri = Uri.fromParts("package", getPackageName(), null);
intent.setData(uri);
startActivity(intent);
取消限制。