「アプリケーションのヴァージョン情報を設定する」の記事ではアプリケーションのバージョンを取得する方法の説明がありました。
PackageInfoクラスからバージョンを取得していました。PackageInfoクラスにはバージョン以外にも情報を取得することは可能ですが、2.3からは新たに以下の情報が取得できるようになりました。
- インストール日時:firstInstallTime
- 更新日時:lastUpdateTime
以下はサンプルコードです。
PackageInfoクラスに追加されたメンバ
上記にもありますようにSDK2.3(API9)からPackageInfoクラスに新たにfirstInstallTime、lastUpdateTimeが追加されました。
共にPublicのフィールドで、long型になります。値はUTC(1970年1月1日午前0時からの経過時間)です。
getPackageManagerメソッドでPackageManagerを取得し、さらにPackageManagerクラスのgetPackageInfoメソッドでPackageInfoクラスを取得します。
そして追加されたフィールドにアクセスしてインストール日時、更新日時を得てDateクラスを生成しています。
public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView textFirstInstallTime = (TextView)findViewById(R.id.TextFirstInstallTime); TextView textLastUpdateTime = (TextView)findViewById(R.id.TextLastUpdateTime); PackageInfo packageInfo = null; try { packageInfo = getPackageManager().getPackageInfo("org.jpn.techbooster.packageinfosample", PackageManager.GET_META_DATA); } catch (NameNotFoundException e) { e.printStackTrace(); } // 1970年1月1日午前0時からの経過時間からDateクラスを作成する Date dateFirstInstallTime = new Date(packageInfo.firstInstallTime); Date dateLastUpdateTime = new Date(packageInfo.lastUpdateTime); //作成したDateクラス(=インストール日時、更新日時)を表示する textFirstInstallTime.setText("FirstInstallTime : "+ dateFirstInstallTime); textLastUpdateTime.setText("LastUpdateTime : "+ dateLastUpdateTime); }