С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Виджет много ресурсов берет - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Отправка и получение данных (запроса) из сервера http://www.cyberforum.ru/android-dev/thread1117233.html
Помогите пожалуйста! Мне нужно отправить данные на сервер, желательно чтобы и в ответ сервер что-то отправлял. Мне надо отправить на сервер текстовые данные, координаты gps(широта и долгота) и...
Программирование Android Поворот изображения (GPS) Добрый день Пытаюсь сделать вот что, на canvas рисую изображение относительно своих координат, которые беру с GPS. Хотелось бы рисовать также направление движения, если оно есть. Направление... http://www.cyberforum.ru/android-dev/thread1117131.html
Программирование Android Подключение к БД
Подскажите как можно подключиться к серверу БД и сделать например SELECT... ссылки на где почитать тоже подойдут
Авторизация и обмен данными между пользователями Программирование Android
Всем привет. Есть задумка приложения, пользователи будут обмениваться между собой информацией (приглашение, заметки в календарь и текст). Подскажите можно ли реализовать без сторонних серверов,...
Программирование Android Поиск по записям ListView http://www.cyberforum.ru/android-dev/thread1117009.html
Низнаю как сформулировать чтоб меня поняли... есть у меня поиск по записям ListView, все он ищет и работает как мне надо, но есть проблема... например при отсевании поиском итемов остается один ...
Программирование Android Фиксированный R class Здрасвствуйте! Возможно ли зафиксировать конкретные предопределенные значения для некоторых полей R класса? Если можно как это сделать? подробнее

Показать сообщение отдельно
EgorDybovik
0 / 0 / 0
Регистрация: 24.02.2013
Сообщений: 128

Виджет много ресурсов берет - Программирование Android

12.03.2014, 15:21. Просмотров 703. Ответов 9
Метки (Все метки)

Написал виджет на планшет, все работает, но когда ставлю виджет планшет заметно начинает тормазить, при повороте экрана особенно заметно, вообще тормозит, сам виджет обновляется 1 раз в секунду и при этом отсчитывает время ежесекундно как спедометр... Не могу понять в чем проблема, откуда он столько жрет, или если не жрет то в чем может быть проблема..
Вот код:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
package com.example.vidjet;
 
import java.util.Arrays;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask;
 
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.ComponentName;
import android.content.Context;
import android.util.Log;
import android.widget.RemoteViews;
import android.widget.TextView;
 
 
 
public class MyWidget extends AppWidgetProvider {
    final String LOG_TAG = "myLogs";
    
    
    
     int[] appwe;
      @Override
      public void onEnabled(Context context) {
        super.onEnabled(context);
 
        
      }
 
    @Override
      public void onUpdate(Context context, AppWidgetManager appWidgetManager,
          int[] appWidgetIds) {
        super.onUpdate(context, appWidgetManager, appWidgetIds);
        RemoteViews remoteviews;
        remoteviews = new RemoteViews(context.getPackageName(),R.layout.widget);
        Date d = new Date();
        appwe = appWidgetIds;
        int day = d.getDate();
 
        int m = d.getMonth();
        int day2 = 0;
        if(m==1){ day2=28-day+36-1;} else if(m==2){day2 = 31-day+5-1;} else day2=5-day-1;
        
 
        int ch = d.getHours();
        int ch1 = 23-ch;
        int min = d.getMinutes();
        int min1 = 59-min;
        int sec = d.getSeconds();
        int sec1 = 59-sec;
        remoteviews.setTextViewText(R.id.textView1, String.valueOf(day2));
        remoteviews.setTextViewText(R.id.textView6, String.valueOf(ch1));
        remoteviews.setTextViewText(R.id.textView8, String.valueOf(min1));
        remoteviews.setTextViewText(R.id.textView10, String.valueOf(sec1));
        appWidgetManager.updateAppWidget(appWidgetIds, remoteviews);
        Timer timer = new Timer();
        timer.scheduleAtFixedRate(new UppdateTimerTask(context,appWidgetManager),1,1000);
        
      }
      
      private class UppdateTimerTask extends TimerTask{
          RemoteViews views;
          AppWidgetManager appWidgetManager;
          ComponentName thisWidget;
          int day,m,day2,ch,ch1,min,min1,sec,sec1;
          public UppdateTimerTask(Context context, AppWidgetManager appWidgetManager){
              this.appWidgetManager = appWidgetManager;
              views = new RemoteViews(context.getPackageName(),R.layout.widget);
              thisWidget = new ComponentName(context, MyWidget.class);
                Date d = new Date();
                day = d.getDate();
                m = d.getMonth();
                day2 = 0;
                if(m==1){ day2=28-day+36-1;} else if(m==2){day2 = 31-day+5-1;} else day2=5-day-1;
                
                ch = d.getHours();
                ch1 = 23-ch;
                min = d.getMinutes();
                min1 = 59-min;
                sec = d.getSeconds();
                sec1 = 59-sec;
          }
        @Override
        public void run() {
            sec1--;
            if(sec1<0){
                sec1=60;
                min1--;
                if(min1<0){
                    min1=59;
                    ch1--;
                    if(ch1<0){
                        ch1=23;
                        day2--;
                    }
                }
            }
            views.setTextViewText(R.id.textView1, String.valueOf(day2));
            views.setTextViewText(R.id.textView6, String.valueOf(ch1));
            views.setTextViewText(R.id.textView8, String.valueOf(min1));
            views.setTextViewText(R.id.textView10, String.valueOf(sec1));
            appWidgetManager.updateAppWidget(thisWidget, views);
        }
          
          
      }
 
      @Override
      public void onDeleted(Context context, int[] appWidgetIds) {
        super.onDeleted(context, appWidgetIds);
        Log.d(LOG_TAG, "onDeleted " + Arrays.toString(appWidgetIds));
      }
 
      @Override
      public void onDisabled(Context context) {
        super.onDisabled(context);
        Log.d(LOG_TAG, "onDisabled");
      }
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.