缩短查询已安装应用程序的时间

时间:2014-05-11 11:49:37

标签: android

我制作了一个应用程序,可用于获取已安装的应用程序信息,例如应用程序名称,程序包名称,安装路径等。问题是,当它首次运行查询机器上已安装的应用程序信息时,需要一段时间,有没有办法解决/缓解这类问题?

2 个答案:

答案 0 :(得分:1)

你可以做几件事:

  1. 正如@Shereef所说,你应该在主线程的线程中运行你的长期工作。
  2. 您应该在服务中运行该线程,以便在配置更改期间不会丢失进度,应用程序退出。然后,应用程序可以在遇到挫败等待的情况下向用户发送通知。
  3. 要减少/消除这种挫败感,您应该在结果可用时更新应用的用户界面。如果能够看到正在取得进展,用户可以更快地允许长时间运行的操作。
  4. 您应该允许用户在数据全部可用之前搜索或深入查看数据。如果他们忙于查看其他数据加载时的一个应用程序的详细信息,那么他们永远不会知道加载所有应用程序数据需要很长时间。
  5. 考虑将数据保存到数据库中,以便用户只需支付一次购置费用。
  6. 还要考虑将该数据库隐藏在ContentProvider之后。
  7. 您可以安排警报重新启动服务以在后台更新数据。

答案 1 :(得分:0)

Handler handler = new Handler();
new Thread(new Runnable() {
    void run() {
        // Your code here but not anything that talks to the UI
        handler.post(new Runnable() {
            void run() {
                // Talk to the UI here

            }
        });
    }
}).start();