無sdcard卡時軟件的自動更新

今天一上班就被告知軟件沒法自動更新,明明都測試過的怎麼就不行了呢。仔細詢問才發現,原來是手機沒有安裝sdcard,悲催啊又得想辦法解決了。google了下,原來這問題不少人都遇過,也已經有的解決的辦法,在這也就當本身再總結下。 html

自動安裝apk通常都是調用 Intent.FLAG_ACTIVITY_NEW_TASK ,是須要知道apk所在的目錄的,沒有了sdcard,只能存在應用自己的目錄下了。可是用戶對文件,沒有寫和執行的權限(這裏有說明http://www.2cto.com/kf/201112/112876.html) java

這裏就要經過shell指令對該文件附加權限 shell

private void exec(String filePath){
		String[] command = {"chmod","777",filePath};
		ProcessBuilder builder = new ProcessBuilder(command);
		try {
			builder.start();
		} catch (IOException e) {
			AppException.httpIoError(e);
		}
	}
這樣就大功告成了啊
相關文章
相關標籤/搜索