0

我正在开发一个使用 phonegap 的应用程序。

当应用程序第一次启动时,我正在从服务器下载数据。该下载过程正在 AsyncTask 中执行,并且在其中的 onPostExecute() 中,我正在加载 url。

出现的问题是,当我的下载过程正在执行时,并且应用程序以某种方式进入后台,下载被终止,不幸的是,这绝对不是必需的。

克服这个麻烦;我想,使用服务是不错的选择之一。但是,在这种情况下,会出现另一个问题,即我怎么可能在 service.xml 中加载 url。

否则,还能做什么?

请建议我摆脱这个麻烦的可能方法,我目前面临。

4

2 回答 2

1

使用类似的方法下载数据。这可能会有所帮助。

     public void downloadUsingGET(String apkurl, String fileName) {

        try {
            String PATH = Environment.getExternalStorageDirectory()+"/Android/data/"+getPackageName()+"/files/";
            URL url = new URL(apkurl);
            HttpURLConnection c = (HttpURLConnection) url.openConnection();
            c.setRequestMethod("GET");
            c.connect();
            File file = new File(PATH);
            file.mkdirs();
            File outputFile = new File(file, fileName);
            FileOutputStream fos = new FileOutputStream(outputFile);

            InputStream is = c.getInputStream();

            byte[] buffer = new byte[1024];
            int len1 = 0;
            while ((len1 = is.read(buffer)) != -1) {
                fos.write(buffer, 0, len1);
            }
            fos.close();
            is.close();

        } catch (IOException e) {

        }



    }
于 2013-05-31T19:30:30.867 回答
0

如果您使用服务,则可以通过意图(您启动服务的意图)传递字符串。

于 2013-05-02T15:44:07.287 回答