ApplicationInfo.flagsのフラグの立ち方で判定できる。
システムプリインアプリ
→ApplicationInfo.FLAG_SYSTEM
アップデートされたシステムプリインアプリ
→ApplicationInfo.FLAG_SYSTEM
→ApplicationInfo.FLAG_UPDATED_SYSTEM_APP
ユーザ領域にプリインされたアプリの場合、どちらのフラグも立たない
ApplicationInfo appInfo; appInfo = getPackageManager().getApplicationInfo(packageName, 0); if ((appInfo.flags & ApplicationInfo.FLAG_SYSTEM) != 0) { // システムプリインアプリ } if ((appInfo.flags & ApplicationInfo.FLAG_UPDATED_SYSTEM_APP) != 0) { // システムプリインアプリでユーザ領域にアップデートされたアプリが存在 }