blob: 7e3d1eb1cf02301493d92b4be57c7dff6f08469c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
package org.robolectric.shadows;
import android.content.pm.PackageManager;
import android.os.Build.VERSION_CODES;
import com.google.common.collect.ImmutableMap;
import java.util.HashMap;
import java.util.Map;
import org.robolectric.RuntimeEnvironment;
final class SystemFeatureListInitializer {
public static ImmutableMap<String, Boolean> getSystemFeatures() {
int apiLevel = RuntimeEnvironment.getApiLevel();
Map<String, Boolean> features = new HashMap<>();
if (apiLevel >= VERSION_CODES.N_MR1) {
features.put(PackageManager.FEATURE_WIFI, true);
}
if (apiLevel >= VERSION_CODES.O) {
features.put(PackageManager.FEATURE_WIFI_AWARE, true);
features.put(PackageManager.FEATURE_COMPANION_DEVICE_SETUP, true);
}
if (apiLevel >= VERSION_CODES.P) {
features.put(PackageManager.FEATURE_WIFI_DIRECT, true);
features.put(PackageManager.FEATURE_WIFI_RTT, true);
}
if (apiLevel >= VERSION_CODES.UPSIDE_DOWN_CAKE) {
// Starting in V, FEATURE_TELEPHONY_SUBSCRIPTION is required for some system services,
// such as VcnManager.
features.put(PackageManager.FEATURE_TELEPHONY_SUBSCRIPTION, true);
}
return ImmutableMap.copyOf(features);
}
}
|