システムプリインアプリの判定

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) {
	// システムプリインアプリでユーザ領域にアップデートされたアプリが存在
}