Tron metrics for special permissions
Added tron metrics for the following special permissions: Battery optimisation - APP_SPECIAL_PERMISSION_BATTERY_ALLOW - APP_SPECIAL_PERMISSION_BATTERY_DENY Device administrators - APP_SPECIAL_PERMISSION_ADMIN_ALLOW (when checked) - APP_SPECIAL_PERMISSION_ADMIN_DENY (when unchecked) Do not disturb access - APP_SPECIAL_PERMISSION_DND_ALLOW - APP_SPECIAL_PERMISSION_DND_DENY Daw over other apps - APP_SPECIAL_PERMISSION_APPDRAW_ALLOW - APP_SPECIAL_PERMISSION_APPDRAW_DENY VR helper services - APP_SPECIAL_PERMISSION_VRHELPER_ALLOW - APP_SPECIAL_PERMISSION_VRHELPER_DENY Modify system settings - APP_SPECIAL_PERMISSION_SETTINGS_CHANGE_ALLOW - APP_SPECIAL_PERMISSION_SETTINGS_CHANGE_DENY Notification access - APP_SPECIAL_PERMISSION_NOTIVIEW_ALLOW - APP_SPECIAL_PERMISSION_NOTIVIEW_DENY Premium SMS access - APP_SPECIAL_PERMISSION_PREMIUM_SMS_ALWAYS_ALLOW - APP_SPECIAL_PERMISSION_PREMIUM_SMS_ASK - APP_SPECIAL_PERMISSION_PREMIUM_SMS_DENY Unrestricted data access - APP_SPECIAL_PERMISSION_UNL_DATA_ALLOW - APP_SPECIAL_PERMISSION_UNL_DATA_DENY Usage access - APP_SPECIAL_PERMISSION_USAGE_VIEW_ALLOW - APP_SPECIAL_PERMISSION_USAGE_VIEW_DENY Test: Manual + make RunSettingsRoboTests Bug: 31008660 Change-Id: Id977e2c9f5aa811a2b0af036372b72c684621435
This commit is contained in:
@@ -58,6 +58,9 @@ import android.widget.Button;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TextView;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto;
|
||||
import com.android.settings.core.instrumentation.MetricsFeatureProvider;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settings.users.UserDialogs;
|
||||
|
||||
import org.xmlpull.v1.XmlPullParserException;
|
||||
@@ -395,6 +398,7 @@ public class DeviceAdminAdd extends Activity {
|
||||
|
||||
void addAndFinish() {
|
||||
try {
|
||||
logSpecialPermissionChange(true, mDeviceAdmin.getComponent().getPackageName());
|
||||
mDPM.setActiveAdmin(mDeviceAdmin.getComponent(), mRefreshing);
|
||||
EventLog.writeEvent(EventLogTags.EXP_DET_DEVICE_ADMIN_ACTIVATED_BY_USER,
|
||||
mDeviceAdmin.getActivityInfo().applicationInfo.uid);
|
||||
@@ -429,6 +433,7 @@ public class DeviceAdminAdd extends Activity {
|
||||
ActivityManager.getService().resumeAppSwitches();
|
||||
} catch (RemoteException e) {
|
||||
}
|
||||
logSpecialPermissionChange(false, mDeviceAdmin.getComponent().getPackageName());
|
||||
mDPM.removeActiveAdmin(mDeviceAdmin.getComponent());
|
||||
finish();
|
||||
} else {
|
||||
@@ -444,6 +449,12 @@ public class DeviceAdminAdd extends Activity {
|
||||
}
|
||||
}
|
||||
|
||||
void logSpecialPermissionChange(boolean allow, String packageName) {
|
||||
int logCategory = allow ? MetricsProto.MetricsEvent.APP_SPECIAL_PERMISSION_ADMIN_ALLOW :
|
||||
MetricsProto.MetricsEvent.APP_SPECIAL_PERMISSION_ADMIN_DENY;
|
||||
FeatureFactory.getFactory(this).getMetricsFeatureProvider().action(this, logCategory, packageName);
|
||||
}
|
||||
|
||||
@Override
|
||||
protected void onResume() {
|
||||
super.onResume();
|
||||
|
Reference in New Issue
Block a user