Loading src/com/android/settings/applications/appinfo/AppDataUsagePreferenceController.java +7 −16 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.settings.applications.appinfo; import android.content.Context; import android.net.NetworkStats; import android.net.NetworkTemplate; import android.os.Bundle; import android.os.Process; Loading @@ -34,8 +33,8 @@ import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; import com.android.settings.datausage.AppDataUsage; import com.android.settings.datausage.DataUsageUtils; import com.android.settings.network.SubscriptionUtil; import com.android.settings.datausage.lib.NetworkTemplates; import com.android.settings.spa.app.appinfo.AppDataUsagePreferenceKt; import com.android.settingslib.AppItem; import com.android.settingslib.applications.AppUtils; import com.android.settingslib.core.lifecycle.LifecycleObserver; Loading @@ -46,6 +45,10 @@ import com.android.settingslib.net.NetworkCycleDataForUidLoader; import java.util.List; /** * @deprecated Will be removed, use {@link AppDataUsagePreferenceKt} instead. */ @Deprecated(forRemoval = true) public class AppDataUsagePreferenceController extends AppInfoPreferenceControllerBase implements LoaderManager.LoaderCallbacks<List<NetworkCycleDataForUid>>, LifecycleObserver, OnResume, OnPause { Loading Loading @@ -92,7 +95,7 @@ public class AppDataUsagePreferenceController extends AppInfoPreferenceControlle @Override public Loader<List<NetworkCycleDataForUid>> onCreateLoader(int id, Bundle args) { final NetworkTemplate template = getTemplate(mContext); final NetworkTemplate template = NetworkTemplates.INSTANCE.getDefaultTemplate(mContext); final int uid = mParent.getAppEntry().info.uid; final NetworkCycleDataForUidLoader.Builder builder = Loading Loading @@ -147,18 +150,6 @@ public class AppDataUsagePreferenceController extends AppInfoPreferenceControlle return mContext.getString(R.string.computing_size); } private static NetworkTemplate getTemplate(Context context) { if (SubscriptionUtil.isSimHardwareVisible(context) && DataUsageUtils.hasReadyMobileRadio(context)) { return new NetworkTemplate.Builder(NetworkTemplate.MATCH_MOBILE).setMeteredness( NetworkStats.METERED_YES).build(); } if (DataUsageUtils.hasWifiRadio(context)) { return new NetworkTemplate.Builder(NetworkTemplate.MATCH_WIFI).build(); } return new NetworkTemplate.Builder(NetworkTemplate.MATCH_ETHERNET).build(); } @VisibleForTesting boolean isBandwidthControlEnabled() { return Utils.isBandwidthControlEnabled(); Loading src/com/android/settings/datausage/AppDataUsage.java +5 −4 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ import android.net.NetworkTemplate; import android.os.Bundle; import android.os.Process; import android.os.UserHandle; import android.telephony.SubscriptionManager; import android.util.ArraySet; import android.util.IconDrawableFactory; import android.util.Log; Loading @@ -44,6 +43,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.settings.R; import com.android.settings.applications.AppInfoBase; import com.android.settings.datausage.lib.AppDataUsageDetailsRepository; import com.android.settings.datausage.lib.NetworkTemplates; import com.android.settings.datausage.lib.NetworkUsageDetailsData; import com.android.settings.network.SubscriptionUtil; import com.android.settings.widget.EntityHeaderController; Loading Loading @@ -118,15 +118,16 @@ public class AppDataUsage extends DataUsageBaseFragment implements OnPreferenceC mSelectedCycle = (args != null) ? args.getLong(ARG_SELECTED_CYCLE) : 0L; if (mTemplate == null) { mTemplate = DataUsageUtils.getDefaultTemplate(mContext, SubscriptionManager.getDefaultDataSubscriptionId()); mTemplate = NetworkTemplates.INSTANCE.getDefaultTemplate(mContext); } final Activity activity = requireActivity(); activity.setTitle(NetworkTemplates.getTitleResId(mTemplate)); if (mAppItem == null) { int uid = (args != null) ? args.getInt(AppInfoBase.ARG_PACKAGE_UID, -1) : getActivity().getIntent().getIntExtra(AppInfoBase.ARG_PACKAGE_UID, -1); if (uid == -1) { // TODO: Log error. getActivity().finish(); activity.finish(); } else { addUid(uid); mAppItem = new AppItem(uid); Loading src/com/android/settings/datausage/AppDataUsageActivity.java +2 −4 Original line number Diff line number Diff line Loading @@ -17,9 +17,9 @@ package com.android.settings.datausage; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; import android.provider.Settings; import android.util.Log; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settingslib.AppItem; Loading Loading @@ -61,14 +61,12 @@ public class AppDataUsageActivity extends SettingsActivity { args.putParcelable(AppDataUsage.ARG_APP_ITEM, appItem); intent.putExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS, args); intent.putExtra(EXTRA_SHOW_FRAGMENT, AppDataUsage.class.getName()); intent.putExtra(EXTRA_SHOW_FRAGMENT_TITLE_RESID, R.string.data_usage_app_summary_title); super.onCreate(savedInstanceState); } @Override protected boolean isValidFragment(String fragmentName) { return super.isValidFragment(fragmentName) || AppDataUsage.class.getName().equals(fragmentName); return AppDataUsage.class.getName().equals(fragmentName); } } src/com/android/settings/datausage/BillingCycleSettings.java +2 −2 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import androidx.preference.SwitchPreference; import com.android.settings.R; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settings.datausage.lib.NetworkTemplates; import com.android.settings.network.SubscriptionUtil; import com.android.settings.network.telephony.MobileNetworkUtils; import com.android.settings.search.BaseSearchIndexProvider; Loading Loading @@ -128,8 +129,7 @@ public class BillingCycleSettings extends DataUsageBaseFragment implements } if (mNetworkTemplate == null) { mNetworkTemplate = DataUsageUtils.getDefaultTemplate(context, DataUsageUtils.getDefaultSubscriptionId(context)); mNetworkTemplate = NetworkTemplates.INSTANCE.getDefaultTemplate(context); } mBillingCycle = findPreference(KEY_BILLING_CYCLE); Loading src/com/android/settings/datausage/DataUsageUtils.java +0 −40 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.settings.datausage; import static android.content.pm.PackageManager.FEATURE_ETHERNET; import static android.content.pm.PackageManager.FEATURE_USB_HOST; import static android.content.pm.PackageManager.FEATURE_WIFI; import static android.telephony.TelephonyManager.SIM_STATE_READY; import android.app.usage.NetworkStats.Bucket; import android.app.usage.NetworkStatsManager; Loading Loading @@ -49,7 +48,6 @@ import java.util.Optional; public final class DataUsageUtils { static final boolean TEST_RADIOS = false; static final String TEST_RADIOS_PROP = "test.radios"; private static final boolean LOGD = false; private static final String ETHERNET = "ethernet"; private static final String TAG = "DataUsageUtils"; Loading Loading @@ -106,44 +104,6 @@ public final class DataUsageUtils { return tele.isDataCapable(); } /** * Test if device has a mobile data radio with SIM in ready state. */ public static boolean hasReadyMobileRadio(Context context) { if (DataUsageUtils.TEST_RADIOS) { return SystemProperties.get(DataUsageUtils.TEST_RADIOS_PROP).contains("mobile"); } final List<SubscriptionInfo> subInfoList = ProxySubscriptionManager.getInstance(context) .getActiveSubscriptionsInfo(); // No activated Subscriptions if (subInfoList == null) { if (LOGD) { Log.d(TAG, "hasReadyMobileRadio: subInfoList=null"); } return false; } final TelephonyManager tele = context.getSystemService(TelephonyManager.class); // require both supported network and ready SIM boolean isReady = true; for (SubscriptionInfo subInfo : subInfoList) { isReady = isReady & tele.getSimState(subInfo.getSimSlotIndex()) == SIM_STATE_READY; if (LOGD) { Log.d(TAG, "hasReadyMobileRadio: subInfo=" + subInfo); } } final boolean isDataCapable = tele.isDataCapable(); final boolean retVal = isDataCapable && isReady; if (LOGD) { Log.d(TAG, "hasReadyMobileRadio:" + " telephonManager.isDataCapable()=" + isDataCapable + " isReady=" + isReady); } return retVal; } /** * Whether device has a Wi-Fi data radio. */ Loading Loading
src/com/android/settings/applications/appinfo/AppDataUsagePreferenceController.java +7 −16 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.settings.applications.appinfo; import android.content.Context; import android.net.NetworkStats; import android.net.NetworkTemplate; import android.os.Bundle; import android.os.Process; Loading @@ -34,8 +33,8 @@ import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; import com.android.settings.datausage.AppDataUsage; import com.android.settings.datausage.DataUsageUtils; import com.android.settings.network.SubscriptionUtil; import com.android.settings.datausage.lib.NetworkTemplates; import com.android.settings.spa.app.appinfo.AppDataUsagePreferenceKt; import com.android.settingslib.AppItem; import com.android.settingslib.applications.AppUtils; import com.android.settingslib.core.lifecycle.LifecycleObserver; Loading @@ -46,6 +45,10 @@ import com.android.settingslib.net.NetworkCycleDataForUidLoader; import java.util.List; /** * @deprecated Will be removed, use {@link AppDataUsagePreferenceKt} instead. */ @Deprecated(forRemoval = true) public class AppDataUsagePreferenceController extends AppInfoPreferenceControllerBase implements LoaderManager.LoaderCallbacks<List<NetworkCycleDataForUid>>, LifecycleObserver, OnResume, OnPause { Loading Loading @@ -92,7 +95,7 @@ public class AppDataUsagePreferenceController extends AppInfoPreferenceControlle @Override public Loader<List<NetworkCycleDataForUid>> onCreateLoader(int id, Bundle args) { final NetworkTemplate template = getTemplate(mContext); final NetworkTemplate template = NetworkTemplates.INSTANCE.getDefaultTemplate(mContext); final int uid = mParent.getAppEntry().info.uid; final NetworkCycleDataForUidLoader.Builder builder = Loading Loading @@ -147,18 +150,6 @@ public class AppDataUsagePreferenceController extends AppInfoPreferenceControlle return mContext.getString(R.string.computing_size); } private static NetworkTemplate getTemplate(Context context) { if (SubscriptionUtil.isSimHardwareVisible(context) && DataUsageUtils.hasReadyMobileRadio(context)) { return new NetworkTemplate.Builder(NetworkTemplate.MATCH_MOBILE).setMeteredness( NetworkStats.METERED_YES).build(); } if (DataUsageUtils.hasWifiRadio(context)) { return new NetworkTemplate.Builder(NetworkTemplate.MATCH_WIFI).build(); } return new NetworkTemplate.Builder(NetworkTemplate.MATCH_ETHERNET).build(); } @VisibleForTesting boolean isBandwidthControlEnabled() { return Utils.isBandwidthControlEnabled(); Loading
src/com/android/settings/datausage/AppDataUsage.java +5 −4 Original line number Diff line number Diff line Loading @@ -29,7 +29,6 @@ import android.net.NetworkTemplate; import android.os.Bundle; import android.os.Process; import android.os.UserHandle; import android.telephony.SubscriptionManager; import android.util.ArraySet; import android.util.IconDrawableFactory; import android.util.Log; Loading @@ -44,6 +43,7 @@ import androidx.recyclerview.widget.RecyclerView; import com.android.settings.R; import com.android.settings.applications.AppInfoBase; import com.android.settings.datausage.lib.AppDataUsageDetailsRepository; import com.android.settings.datausage.lib.NetworkTemplates; import com.android.settings.datausage.lib.NetworkUsageDetailsData; import com.android.settings.network.SubscriptionUtil; import com.android.settings.widget.EntityHeaderController; Loading Loading @@ -118,15 +118,16 @@ public class AppDataUsage extends DataUsageBaseFragment implements OnPreferenceC mSelectedCycle = (args != null) ? args.getLong(ARG_SELECTED_CYCLE) : 0L; if (mTemplate == null) { mTemplate = DataUsageUtils.getDefaultTemplate(mContext, SubscriptionManager.getDefaultDataSubscriptionId()); mTemplate = NetworkTemplates.INSTANCE.getDefaultTemplate(mContext); } final Activity activity = requireActivity(); activity.setTitle(NetworkTemplates.getTitleResId(mTemplate)); if (mAppItem == null) { int uid = (args != null) ? args.getInt(AppInfoBase.ARG_PACKAGE_UID, -1) : getActivity().getIntent().getIntExtra(AppInfoBase.ARG_PACKAGE_UID, -1); if (uid == -1) { // TODO: Log error. getActivity().finish(); activity.finish(); } else { addUid(uid); mAppItem = new AppItem(uid); Loading
src/com/android/settings/datausage/AppDataUsageActivity.java +2 −4 Original line number Diff line number Diff line Loading @@ -17,9 +17,9 @@ package com.android.settings.datausage; import android.content.Intent; import android.content.pm.PackageManager; import android.os.Bundle; import android.provider.Settings; import android.util.Log; import com.android.settings.R; import com.android.settings.SettingsActivity; import com.android.settingslib.AppItem; Loading Loading @@ -61,14 +61,12 @@ public class AppDataUsageActivity extends SettingsActivity { args.putParcelable(AppDataUsage.ARG_APP_ITEM, appItem); intent.putExtra(EXTRA_SHOW_FRAGMENT_ARGUMENTS, args); intent.putExtra(EXTRA_SHOW_FRAGMENT, AppDataUsage.class.getName()); intent.putExtra(EXTRA_SHOW_FRAGMENT_TITLE_RESID, R.string.data_usage_app_summary_title); super.onCreate(savedInstanceState); } @Override protected boolean isValidFragment(String fragmentName) { return super.isValidFragment(fragmentName) || AppDataUsage.class.getName().equals(fragmentName); return AppDataUsage.class.getName().equals(fragmentName); } }
src/com/android/settings/datausage/BillingCycleSettings.java +2 −2 Original line number Diff line number Diff line Loading @@ -44,6 +44,7 @@ import androidx.preference.SwitchPreference; import com.android.settings.R; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settings.datausage.lib.NetworkTemplates; import com.android.settings.network.SubscriptionUtil; import com.android.settings.network.telephony.MobileNetworkUtils; import com.android.settings.search.BaseSearchIndexProvider; Loading Loading @@ -128,8 +129,7 @@ public class BillingCycleSettings extends DataUsageBaseFragment implements } if (mNetworkTemplate == null) { mNetworkTemplate = DataUsageUtils.getDefaultTemplate(context, DataUsageUtils.getDefaultSubscriptionId(context)); mNetworkTemplate = NetworkTemplates.INSTANCE.getDefaultTemplate(context); } mBillingCycle = findPreference(KEY_BILLING_CYCLE); Loading
src/com/android/settings/datausage/DataUsageUtils.java +0 −40 Original line number Diff line number Diff line Loading @@ -17,7 +17,6 @@ package com.android.settings.datausage; import static android.content.pm.PackageManager.FEATURE_ETHERNET; import static android.content.pm.PackageManager.FEATURE_USB_HOST; import static android.content.pm.PackageManager.FEATURE_WIFI; import static android.telephony.TelephonyManager.SIM_STATE_READY; import android.app.usage.NetworkStats.Bucket; import android.app.usage.NetworkStatsManager; Loading Loading @@ -49,7 +48,6 @@ import java.util.Optional; public final class DataUsageUtils { static final boolean TEST_RADIOS = false; static final String TEST_RADIOS_PROP = "test.radios"; private static final boolean LOGD = false; private static final String ETHERNET = "ethernet"; private static final String TAG = "DataUsageUtils"; Loading Loading @@ -106,44 +104,6 @@ public final class DataUsageUtils { return tele.isDataCapable(); } /** * Test if device has a mobile data radio with SIM in ready state. */ public static boolean hasReadyMobileRadio(Context context) { if (DataUsageUtils.TEST_RADIOS) { return SystemProperties.get(DataUsageUtils.TEST_RADIOS_PROP).contains("mobile"); } final List<SubscriptionInfo> subInfoList = ProxySubscriptionManager.getInstance(context) .getActiveSubscriptionsInfo(); // No activated Subscriptions if (subInfoList == null) { if (LOGD) { Log.d(TAG, "hasReadyMobileRadio: subInfoList=null"); } return false; } final TelephonyManager tele = context.getSystemService(TelephonyManager.class); // require both supported network and ready SIM boolean isReady = true; for (SubscriptionInfo subInfo : subInfoList) { isReady = isReady & tele.getSimState(subInfo.getSimSlotIndex()) == SIM_STATE_READY; if (LOGD) { Log.d(TAG, "hasReadyMobileRadio: subInfo=" + subInfo); } } final boolean isDataCapable = tele.isDataCapable(); final boolean retVal = isDataCapable && isReady; if (LOGD) { Log.d(TAG, "hasReadyMobileRadio:" + " telephonManager.isDataCapable()=" + isDataCapable + " isReady=" + isReady); } return retVal; } /** * Whether device has a Wi-Fi data radio. */ Loading