Google Play 最近在 Google Play 控制台中发布了“Android Vitals”功能,通过该功能可以提供有关已发布应用程序的分析信息。
Android Vitals 选项卡包含分析信息,如崩溃、ANR、多次崩溃、慢速渲染、冻结帧等。它们还显示“不良行为”指标,从而将您的应用程序的分析与基准进行比较。如果您的应用程序被标记为不良行为标志,那么它可能会影响您的排名/下载等。
是否还有其他人在 Google Play 上的应用中遇到不良行为标志?自从引入 Android Vitals 选项卡以来,有没有其他人看到自然流量急剧下降?考虑到我们的应用程序是使用 AS 开发的,是否有人对如何最好地解决这些“不良行为”标志有任何建议
提前致谢
java.lang.NullPointerException:
at com.mydemoapp.player.activity.Dashboard$37.subscribeActual (Dashboard.java:2033)
at io.reactivex.Observable.subscribe (Observable.java:10179)
at io.reactivex.internal.operators.observable.ObservableSubscribeOn$1.run (ObservableSubscribeOn.java:39)
at io.reactivex.Scheduler$1.run (Scheduler.java:134)
at io.reactivex.internal.schedulers.ScheduledRunnable.run (ScheduledRunnable.java:59)
at io.reactivex.internal.schedulers.ScheduledRunnable.call (ScheduledRunnable.java:51)
at java.util.concurrent.FutureTask.run (FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run (ScheduledThreadPoolExecutor.java:272)
at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1133)
at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:607)
at java.lang.Thread.run (Thread.java:761)
--
private Observable<ArrayList<HashMap<String, String>>> provideSongListOberservable() {
return new Observable<ArrayList<HashMap<String, String>>>() {
@Override
protected void subscribeActual(Observer<? super ArrayList<HashMap<String, String>>> observer) {
File home = new File(MEDIA_PATH);
String[] values = getResources().getStringArray(R.array.array_songs);
ArrayList<HashMap<String, String>> songsList = new ArrayList<>();
if (home.listFiles(new FileExtensionFilter()).length > 0) {
for (File file : home.listFiles(new FileExtensionFilter())) {
try {
HashMap<String, String> song = new HashMap<>();
song.put(KEY_SONG_TITLE,
values[Integer.parseInt(file.getName().split("_")[1].substring(0,
(file.getName().split("_")[1].length() - 4))) - 1]);
song.put(KEY_SONG_PATH, file.getPath());
// Adding each song to SongList
songsList.add(song);
} catch (Exception e) {
e.printStackTrace();
}
}
}
observer.onNext(songsList);
}
};
}