我创建了一个应用程序,用于搜索越来越大的素数并将它们保存在文本文件中。正确知道我让用户单击一个按钮以使应用程序搜索更大的素数并将其保存到文件。
我希望应用程序在后台运行 while 循环,并自行搜索和保存,而不需要任何用户交互,而不是单击。
是onStart();将 while 循环放入其中以便它在应用程序运行时在后台运行的好方法? 我还应该使用 Runnable 接口(interface)动态地向用户显示找到质数并将其保存到文件中吗?
提前谢谢您!
最佳答案
如果您的 while 循环将执行大量工作,则可以使用 Service,或者考虑使用 AsyncTask(最多几秒钟。)。
服务是一个应用程序组件,代表应用程序希望在不与用户交互的情况下执行长时间运行的操作,或者提供功能供其他应用程序使用 ( here )
AsyncTask 可以正确且轻松地使用 UI 线程。 here
正如 @EpicPandaForce 提到的,如果您正在执行 CPU 密集型操作(例如 mp3),请考虑使用 IntentService
因为它是在另一个线程上执行的。
关于java - Android Activity LifeCycle,应用程序运行时运行 while 循环的方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30200957/