am 5c2a4684
: Merge "Supercalifragilisticexpialidocious." into gingerbread
Merge commit '5c2a46848133c0ad6b2197aa1d6f5ae2ba9c8119' into gingerbread-plus-aosp * commit '5c2a46848133c0ad6b2197aa1d6f5ae2ba9c8119': Supercalifragilisticexpialidocious.
This commit is contained in:
@@ -69,6 +69,7 @@ import android.widget.TextView;
|
||||
public class InstalledAppDetails extends Activity
|
||||
implements View.OnClickListener, ApplicationsState.Callbacks {
|
||||
private static final String TAG="InstalledAppDetails";
|
||||
static final boolean SUPPORT_DISABLE_APPS = false;
|
||||
|
||||
private PackageManager mPm;
|
||||
private ApplicationsState mState;
|
||||
@@ -259,30 +260,32 @@ public class InstalledAppDetails extends Activity
|
||||
} else {
|
||||
if ((mAppEntry.info.flags & ApplicationInfo.FLAG_SYSTEM) != 0) {
|
||||
enabled = false;
|
||||
try {
|
||||
// Try to prevent the user from bricking their phone
|
||||
// by not allowing disabling of apps signed with the
|
||||
// system cert and any launcher app in the system.
|
||||
PackageInfo sys = mPm.getPackageInfo("android",
|
||||
PackageManager.GET_SIGNATURES);
|
||||
Intent intent = new Intent(Intent.ACTION_MAIN);
|
||||
intent.addCategory(Intent.CATEGORY_HOME);
|
||||
intent.setPackage(mAppEntry.info.packageName);
|
||||
List<ResolveInfo> homes = mPm.queryIntentActivities(intent, 0);
|
||||
if ((homes != null && homes.size() > 0) ||
|
||||
(mPackageInfo != null &&
|
||||
sys.signatures[0].equals(mPackageInfo.signatures[0]))) {
|
||||
// Disable button for core system applications.
|
||||
mUninstallButton.setText(R.string.disable_text);
|
||||
} else if (mAppEntry.info.enabled) {
|
||||
mUninstallButton.setText(R.string.disable_text);
|
||||
enabled = true;
|
||||
} else {
|
||||
mUninstallButton.setText(R.string.enable_text);
|
||||
enabled = true;
|
||||
if (SUPPORT_DISABLE_APPS) {
|
||||
try {
|
||||
// Try to prevent the user from bricking their phone
|
||||
// by not allowing disabling of apps signed with the
|
||||
// system cert and any launcher app in the system.
|
||||
PackageInfo sys = mPm.getPackageInfo("android",
|
||||
PackageManager.GET_SIGNATURES);
|
||||
Intent intent = new Intent(Intent.ACTION_MAIN);
|
||||
intent.addCategory(Intent.CATEGORY_HOME);
|
||||
intent.setPackage(mAppEntry.info.packageName);
|
||||
List<ResolveInfo> homes = mPm.queryIntentActivities(intent, 0);
|
||||
if ((homes != null && homes.size() > 0) ||
|
||||
(mPackageInfo != null &&
|
||||
sys.signatures[0].equals(mPackageInfo.signatures[0]))) {
|
||||
// Disable button for core system applications.
|
||||
mUninstallButton.setText(R.string.disable_text);
|
||||
} else if (mAppEntry.info.enabled) {
|
||||
mUninstallButton.setText(R.string.disable_text);
|
||||
enabled = true;
|
||||
} else {
|
||||
mUninstallButton.setText(R.string.enable_text);
|
||||
enabled = true;
|
||||
}
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
Log.w(TAG, "Unable to get package info", e);
|
||||
}
|
||||
} catch (PackageManager.NameNotFoundException e) {
|
||||
Log.w(TAG, "Unable to get package info", e);
|
||||
}
|
||||
} else {
|
||||
mUninstallButton.setText(R.string.uninstall_text);
|
||||
|
@@ -354,7 +354,11 @@ public class ManageApplications extends TabActivity implements
|
||||
holder.appIcon.setImageDrawable(entry.icon);
|
||||
}
|
||||
holder.updateSizeText(ManageApplications.this);
|
||||
holder.disabled.setVisibility(entry.info.enabled ? View.GONE : View.VISIBLE);
|
||||
if (InstalledAppDetails.SUPPORT_DISABLE_APPS) {
|
||||
holder.disabled.setVisibility(entry.info.enabled ? View.GONE : View.VISIBLE);
|
||||
} else {
|
||||
holder.disabled.setVisibility(View.GONE);
|
||||
}
|
||||
}
|
||||
mActive.remove(convertView);
|
||||
mActive.add(convertView);
|
||||
|
Reference in New Issue
Block a user