See More
Popular Forum

MBA (4887) B.Tech (1769) Engineering (1486) Class 12 (1030) Study Abroad (1004) Computer Science and Engineering (988) Business Management Studies (865) BBA (846) Diploma (746) CAT (651) B.Com (648) B.Sc (643) JEE Mains (618) Mechanical Engineering (574) Exam (525) India (462) Career (452) All Time Q&A (439) Mass Communication (427) BCA (417) Science (384) Computers & IT (Non-Engg) (383) Medicine & Health Sciences (381) Hotel Management (373) Civil Engineering (353) MCA (349) Tuteehub Top Questions (348) Distance (340) Colleges in India (334)
See More

Android Vitals “Bad Behaviour” Flags

General Tech Bugs & Fixes
Max. 2000 characters

Deepak Parmar


( 8 months ago )



Google Play recently released the “Android Vitals” feature in the Google Play Console whereby they present analytic information about the released app.

The Android Vitals tab contains analytic information like crashes, ANR, multi-crashes, Slow Rendering, Frozen Frames, etc. They also show “bad behaviour” metrics whereby they compare the analytics of your app with benchmarks. If your app gets flagged with bad beahviours flags, then supposedly it can impact your rankings/downloads etc.

Is anyone else experiencing bad behaviour flags in their app on google play? Has anyone else seen a dramatic decrease in organic traffic since the Android Vitals tab was introduced? Does anyone have any advice on how to best solve these “bad behaviour” flags considering our Apps are developed with AS

Thanks in advance

bad behav image



  at com.mydemoapp.player.activity.Dashboard$37.subscribeActual (

  at io.reactivex.Observable.subscribe (

  at io.reactivex.internal.operators.observable.ObservableSubscribeOn$ (

  at io.reactivex.Scheduler$ (

  at (

  at (

  at (

  at java.util.concurrent.ScheduledThreadPoolExecutor$ (

  at java.util.concurrent.ThreadPoolExecutor.runWorker (

  at java.util.concurrent.ThreadPoolExecutor$ (

  at (


private Observable<ArrayList<HashMap<String, String>>> provideSongListOberservable() {
        return new Observable<ArrayList<HashMap<String, String>>>() {
            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<>();
                                            (file.getName().split("_")[1].length() - 4))) - 1]);
                            song.put(KEY_SONG_PATH, file.getPath());

                            // Adding each song to SongList
                        } catch (Exception e) {


Ayushi Jain


( 8 months ago )

An "App crashing" bad behavior means your app is crashing a lot.

Google Play has publicly said (eg this talk) that it will use bad behavior as a signal when deciding which how to order apps in search results, and choose which apps to promote.

In order to fix this - get your development team to make crash fixing a priority, not just adding new features. Use the crash reports in the Play console to find out the bugs in your app, and fix them.

what's your interest