シナリオは、私のアプリケーションがインストールされているすべてのアプリケーションを検索して、それらのアプリケーションのバージョンを判別することです。次に、アプリケーションの名前とそのバージョンを同じファイルに保存します。アプリケーションの新しいバージョンが利用可能になった場合は、ユーザーに通知します。問題は、「自分のアプリケーションから他のアプリケーションのバージョンを知るにはどうすればよいか」です。
ご助力いただきありがとうございます
シナリオは、私のアプリケーションがインストールされているすべてのアプリケーションを検索して、それらのアプリケーションのバージョンを判別することです。次に、アプリケーションの名前とそのバージョンを同じファイルに保存します。アプリケーションの新しいバージョンが利用可能になった場合は、ユーザーに通知します。問題は、「自分のアプリケーションから他のアプリケーションのバージョンを知るにはどうすればよいか」です。
ご助力いただきありがとうございます
現在のバージョンを取得するには、次のようなものが機能するはずです。
List<PackageInfo> packages = getPackageManager().getInstalledPackages();
for(int i=0;i<packages.size();i++)
{
int version = packages.get(i).versionCode;
// do whatever with it here
}
ただし、Play ストアで最新バージョンを入手しても、実際には機能しません。A--Cが言ったようversionName
に、代わりにチェックして、2つがまったく同じでない場合は更新済みとして通知することができます(より高い/より低い、単に不平等について心配しないでください)。
以下を実行できます(アクティビティまたはその他のコンテキスト内)
getPackageManager().getPackageInfo(getPackageName(), 0).versionName
getPackageManager().getPackageInfo(getPackageName(), 0).versionCode