У меня проблемы со скоростью моего приложения.
Мое приложение использует обработчик с таймером, который вычисляет координаты различных объектов, отображаемых на экране, и делает недействительным простое представление.Он работает довольно хорошо, когда запускается, но для начала требуется 3 или 4 секунды, а logcat часто печатает «пропущенные кадры».Я не очень хорошо разбираюсь в потоках, поэтому я предполагаю, что проблема в этом.
Буду признателен, если вы посмотрите на мою проблему:)
Вот код, о котором я говорюabout:
public void resume() {
keepGoing = true;
moveFlag = false;
final Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
mHandler.post(new Runnable() {
@Override
public void run() {
// ARRET DU CHRONOMETRE
if (!keepGoing){
cancel();
}
// MOVING OF THE OBJECTS
// REFRESHING THE VIEW
mView.invalidate();
}
});
}
}, 0, Interval);
}
Большое спасибо !!
Редактировать: Вот мои результаты logcat, когда я также начинаю занятие:
09-23 21:20:08.893 16382-16382/com.example.myapplication D/ViewRootImpl: #1 mView = com.android.internal.policy.PhoneWindow$DecorView{760d030 I.E...... R.....ID 0,0-0,0}
09-23 21:20:08.933 16382-16382/com.example.myapplication I/Choreographer: Skipped 75 frames! The application may be doing too much work on its main thread.
09-23 21:20:08.973 16382-16382/com.example.myapplication W/DisplayListCanvas: DisplayListCanvas is started on unbinded RenderNode (without mOwningView)
09-23 21:20:09.163 16382-16382/com.example.myapplication D/ViewRootImpl: MSG_RESIZED_REPORT: ci=Rect(0, 0 - 0, 0) vi=Rect(0, 0 - 0, 0) or=1
09-23 21:20:09.213 16382-16382/com.example.myapplication I/Timeline: Timeline: Activity_idle id: android.os.BinderProxy@775d973 time:10307099
09-23 21:20:09.463 16382-16382/com.example.myapplication D/ViewRootImpl: #3 mView = null