Skip to content

Instantly share code, notes, and snippets.

@tinrab
Last active September 18, 2015 01:49
Show Gist options
  • Save tinrab/2ee62648ba19f1101219 to your computer and use it in GitHub Desktop.
Save tinrab/2ee62648ba19f1101219 to your computer and use it in GitHub Desktop.
Unity android is package installed
bool IsPackageInstalled(string packageName)
{
#if UNITY_ANDROID
var pluginClass = new AndroidJavaClass("android.content.pm.PackageManager");
var jc = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
var currentActivity = jc.GetStatic<AndroidJavaObject>("currentActivity");
var packageManager = currentActivity.Call<AndroidJavaObject>("getPackageManager");
int flag = pluginClass.GetStatic<int>("GET_META_DATA");
var packages = packageManager.Call<AndroidJavaObject>("getInstalledApplications", flag);
int count = packages.Call<int>("size");
for (int i = 0; i < count; i++) {
var pkg = packages.Call<AndroidJavaObject>("get", i);
var pkgName = pkg.Get<string>("packageName");
if (pkgName == packageName) {
return true;
}
}
#endif
return false;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment