2013-07-11 34 views
0

我想更新我的程序。所以当它启动程序时,我会检查是否有可用的更新。如果它确实下载并尝试用这些安装:Android重新安装相同的程序

Intent intent = new Intent(Intent.ACTION_VIEW); 
     intent.setDataAndType(Uri.fromFile(new File(Environment.getExternalStorageDirectory() + "/download/" + "own.apk")), "application/vnd.android.package-archive"); 
     startActivity(intent); 

该程序是到达安装对话框,但点击它时程序关闭。我想因为我重新安装了相同的程序。哪些是重新安装或更改为新更新的解决方案?

+0

**该程序是到达安装对话框,但点击它时关闭程序。我想因为我重新安装了相同的程序。哪些是重新安装或更改为新更新的解决方案?**这意味着什么 - 您是否说当您调用更新代码时程序会关​​闭?你是否在相同的代码中调用了finish()? – NetStarter

+0

是的,当我到达安装派对时,我只是从程序中单击它,不要使用新更新重新启动。或者,也许我错了,它是更新只是不开始? – meklod400

回答

3

不要破坏Android构造的模式。 是否有可用的更新,并且用户想要更新只是将它们发送到Google Play。

+0

但我必须使用外部服务器! – meklod400

0

我想因为我重新安装相同的程序。

正确。 Android需要终止您的流程,作为其中的一部分。

哪个是重新安装或更改为新更新的解决方案?

用户可以再次手动启动您的应用程序。

或者,您可以尝试在清单中注册一个ACTION_PACKAGE_REPLACED接收器,并采取措施,如果它是您的。

+0

你能告诉我一些ACTION_PACKAGE_REPLACED函数的例子吗? – meklod400

+0

@ meklod400:对不起,我没有这样的例子。 – CommonsWare

相关问题