しょうもないソースでお茶を濁す

今日はちょっと朝から集中しすぎて、集中力の切れた今では
もう何も考えることが出来ず……。 簡単なソースでお茶に濁します。


以前書いた「assetsの内容を全てローカルにコピーする」ですが、そのままに
しておくと毎回ローカルコピーが発生して手間なので、取り合えずは
こんな感じでバージョン判定することにしました。
まぁ、「内容に差異があった場合」とかの方が格好いいソースになるんですけどね。

PackageManager pm = getPackageManager();
PackageInfo pi = null;
try {
	// getPackageInfo
	pi =  pm.getPackageInfo("jp.game.sample", 0);
} catch (NameNotFoundException e) {
	// TODO Auto-generated catch block
	e.printStackTrace();
}
 
if(pi== null || getPref(PREF_VERSION) != pi.versionCode){     
	// ローカルファイルのコピー
	try {
       		copy2Local();
	} catch (IOException e) {
		// TODO Auto-generated catch block
		e.printStackTrace();
		return;
	}
        setPref(PREF_VERSION, pi.versionCode);
}

ちなみに、getPrefとかsetPrefってのはPreferencesから
値を取得したり、値を設定したりする処理です。
最後にローカルコピーを行ったバージョンコードを保存しておき、
バージョンコードに差異があればコピーを開始するようにしてあります。