Почему медленно загружается отрисовка? - PullRequest
0 голосов
/ 25 сентября 2019

Запуск моего приложения очень медленный (через 2 секунды после нажатия кнопки).Измеряя время с помощью System.currentTimeMillis (), я обнаружил, что проблема может быть связана с загрузкой моих 4-х элементов.Имеет ли это смысл ?Это очень медленная операция?Мои рисунки из векторов, это может быть проблемой?Что я могу сделать, чтобы ускорить эту операцию?

Вот метод, который я использую для создания растровых изображений из моих рисованных объектов:

public Bitmap loadBitmap(Drawable drawable){
    Bitmap bitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), Bitmap.Config.ARGB_8888);
    drawable.setBounds(0, 0, drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight());
    Canvas canvas = new Canvas(bitmap);
    drawable.draw(canvas);
    return bitmap;
}

Вот logcat с сообщением «пропущенные кадры»:

09-25 18:58:25.214 10944-10944/com.example.myapplication D/SecWifiDisplayUtil: Metadata value : none
09-25 18:58:25.224 10944-10944/com.example.myapplication D/ViewRootImpl: #1 mView = com.android.internal.policy.PhoneWindow$DecorView{3a7ba8d I.E...... R.....ID 0,0-0,0}
09-25 18:58:25.224 10944-10944/com.example.myapplication I/Choreographer: Skipped 68 frames!  The application may be doing too much work on its main thread.
09-25 18:58:25.254 10944-10944/com.example.myapplication W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)
09-25 18:58:25.304 10944-10944/com.example.myapplication D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
09-25 18:58:25.334 10944-10944/com.example.myapplication I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@bc8af24 time:27196117
09-25 18:58:25.594 10944-10944/com.example.myapplication D/ViewRootImpl: #3 mView = null

Большое спасибо заранее!

...