2013-07-11 67 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

相關問題