Google Android - это несложно

Добро пожаловать на форум сайта startandroid.ru
Текущее время: 20 май 2019, 11:44

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Урок 29. WorkManager. Введение
СообщениеДобавлено: 13 июн 2018, 22:09 
Администратор
Аватар пользователя

Зарегистрирован: 07 янв 2012, 11:32
Сообщений: 1400
Благодарил (а): 0 раз.
Поблагодарили: 75 раз.

В этом уроке знакомимся с WorkManager.




Click here to read this article!

_________________
Добро пожаловать на форум сайта StartAndroid
ИзображениеИзображение


Последний раз редактировалось damager82 20 дек 2018, 11:55, всего редактировалось 7 раз(а).

Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 29. WorkManager. Введение
СообщениеДобавлено: 14 июн 2018, 13:03 

Зарегистрирован: 14 июн 2018, 12:47
Сообщений: 1
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Замечательный материал по фактам. Хотелось бы увидеть субъективное мнение специалиста - для решения каких задач лучше подходит WorkManager, а когда лучше использовать что-то ещё.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 29. WorkManager. Введение
СообщениеДобавлено: 08 авг 2018, 01:13 

Зарегистрирован: 08 авг 2018, 00:44
Сообщений: 1
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Ошибка в статье. Worker.Result. А у вас без точки


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 29. WorkManager. Введение
СообщениеДобавлено: 29 окт 2018, 10:22 

Зарегистрирован: 11 фев 2015, 18:58
Сообщений: 9
Благодарил (а): 1 раз.
Поблагодарили: 0 раз.
Пожалуйста обновите статью, после обновления до worker manager alfa 10 код перестал работать, всю голову сломал как починить не знаю


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 29. WorkManager. Введение
СообщениеДобавлено: 22 янв 2019, 11:29 

Зарегистрирован: 30 дек 2012, 06:30
Сообщений: 3
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
wasiliysoft писал(а):
Пожалуйста обновите статью, после обновления до worker manager alfa 10 код перестал работать, всю голову сломал как починить не знаю


implementation "android.arch.work:work-runtime:1.0.0-beta02"
отправка файла
Код: [ Загрузить ] [ Скрыть ]
  1. ... 
  2. Data.Builder builder = new Data.Builder().putString(SendFileWorker.KEY_FILE_PATH, imageFile.getAbsolutePath()); 
  3.                         OneTimeWorkRequest request = new OneTimeWorkRequest.Builder(SendFileWorker.class).setInputData(builder.build()).build(); 
  4.                         switchToSendState(); 
  5.                         WorkManager.getInstance().enqueue(request); 
  6. ... 


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Урок 29. WorkManager. Введение
СообщениеДобавлено: 09 мар 2019, 11:30 

Зарегистрирован: 08 мар 2019, 11:09
Сообщений: 2
Благодарил (а): 0 раз.
Поблагодарили: 0 раз.
Очень странно: похоже, OneTimeWorkRequest запускается у меня дважды.

логи:
Код: [ Загрузить ] [ Скрыть ]
  1. 2019-03-09 13:48:36.329 30594-30594/com.vsevolodvishnevsky.workmanager D/workmng: onCreate main 
  2. 2019-03-09 13:48:36.700 30594-30594/com.vsevolodvishnevsky.workmanager D/workmng: onChanged main ENQUEUED 
  3. 2019-03-09 13:48:36.787 30594-30628/com.vsevolodvishnevsky.workmanager D/workmng: doWork: start pool-1-thread-1 
  4. 2019-03-09 13:48:36.803 30594-30594/com.vsevolodvishnevsky.workmanager D/workmng: onChanged main RUNNING 
  5. 2019-03-09 13:48:46.790 30594-30628/com.vsevolodvishnevsky.workmanager D/workmng: doWork: end pool-1-thread-1 
  6. 2019-03-09 13:48:46.816 30594-30594/com.vsevolodvishnevsky.workmanager D/workmng: onChanged main SUCCEEDED 
  7. 2019-03-09 13:49:06.807 30594-30631/com.vsevolodvishnevsky.workmanager D/workmng: doWork: start pool-1-thread-2 
  8. 2019-03-09 13:49:16.809 30594-30631/com.vsevolodvishnevsky.workmanager D/workmng: doWork: end pool-1-thread-2 


код активити и myWorker:
Код: [ Загрузить ] [ Скрыть ]
  1. public class MainActivity extends AppCompatActivity { 
  2.  
  3.     @Override 
  4.     protected void onCreate(Bundle savedInstanceState) { 
  5.         super.onCreate(savedInstanceState); 
  6.         setContentView(R.layout.activity_main); 
  7.         Log.d(MyWorker.TAG, "onCreate " + Thread.currentThread().getName()); 
  8.         doWork(); 
  9.     } 
  10.  
  11.     public void doWork() { 
  12.         OneTimeWorkRequest request = new OneTimeWorkRequest.Builder(MyWorker.class).build(); 
  13.         WorkManager.getInstance().enqueue(request); 
  14.         LiveData<WorkInfo> info = WorkManager.getInstance().getWorkInfoByIdLiveData(request.getId()); 
  15.         info.observe(this, new Observer<WorkInfo>() { 
  16.             @Override 
  17.             public void onChanged(@Nullable WorkInfo workInfo) { 
  18.                 Log.d(MyWorker.TAG, "onChanged " + Thread.currentThread().getName() + " " + workInfo.getState()); 
  19.             } 
  20.         }); 
  21.     } 


Код: [ Загрузить ] [ Скрыть ]
  1. public class MyWorker extends Worker { 
  2.    public static final String TAG = "working"; 
  3.  
  4.     public MyWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) { 
  5.         super(context, workerParams); 
  6.     } 
  7.  
  8.     @NonNull 
  9.     @Override 
  10.     public Result doWork() { 
  11.         Log.d(TAG, "doWork: start "+ Thread.currentThread().getName()); 
  12.  
  13.         try { 
  14.             TimeUnit.SECONDS.sleep(10); 
  15.         } catch (InterruptedException e) { 
  16.             e.printStackTrace(); 
  17.         } 
  18.  
  19.         Log.d(TAG, "doWork: end " + Thread.currentThread().getName()); 
  20.         return Result.success(); 
  21.     } 


причем, при втором запуске статусы уже не приходят...


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 6 ] 

Часовой пояс: UTC + 3 часа


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB