如何使用WorkManager显示新活动(屏幕)

问题描述 投票:0回答:1

MyWorker.class:

public class MyWorker extends Worker {

    public MyWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
        super(context, workerParams);
    }


    @NonNull
    @Override
    public Result doWork() {
        Log.d("TAG","WORK: ");
        //my actual work....

        Intent intent = new Intent(getApplicationContext(), NewScreen.class);
       getApplicationContext().startActivity(intent);

        return Result.success(); //true - success / false - failure
    }
}

MainActivity:

public class MainActivity extends AppCompatActivity {
     OneTimeWorkRequest oneTimeWorkRequest;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
       // TextView textView = findViewById(R.id.text);

        oneTimeWorkRequest = new OneTimeWorkRequest.Builder(MyWorker.class)
                .setConstraints(new Constraints.Builder()
                        .setRequiredNetworkType(NetworkType.CONNECTED)
                        .build())
                .build();


        WorkManager.getInstance().enqueue(oneTimeWorkRequest);
    }
}

我正在尝试使用WorkManager从MainActivity打开一个新的活动(屏幕)。尝试学习和尝试使用WorkManager。如果我输入运行日志,即执行doWork()。另外,我在意图上添加了断点,它可以正常工作,但UI不会受到影响。

FYI-我是新来的,正在学习WorkManager和后台过程。

[MyWorker.class:公共类MyWorker扩展了Worker {public MyWorker(@NonNull Context context,@NonNull WorkerParameters workerParams){super(context,workerParams); } @ ...

java android-intent android-workmanager
1个回答
0
投票

最后为我的问题找到了解决方案:

© www.soinside.com 2019 - 2024. All rights reserved.