我正在使用一个使用phonegap的应用程序。
首次启动应用程序时,我正在从服务器下载数据。 下载过程正在AsyncTask中执行,在onPostExecute()中,我正在加载url。
出现的问题是,当我的下载过程被执行,并且应用程序以某种方式进入后台时,不幸的是,下载终止,这绝对不是必需的。
克服这个麻烦;我想,使用服务是一个很好的选择。但是,在这种情况下,出现了另一个问题,即我怎么可能在服务中加载网址。
否则,还能做些什么?
请告诉我,摆脱这种麻烦的可能方法,我目前正在面对。
答案 0 :(得分: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) {
}
}
答案 1 :(得分:0)
如果您使用服务,则可以通过意图传递字符串(启动服务的意图)。