This commit is contained in:
Aaron Veil 2025-12-09 12:08:48 +03:00
parent 2fb13f06e8
commit 2790767543
195 changed files with 5578 additions and 8286 deletions

View file

@ -38,21 +38,15 @@ dependencies {
compileOnly(libs.preference)
implementation(libs.collections4)
implementation(libs.disklrucache)
implementation(libs.gson)
implementation(libs.kotlinx.coroutines.core)
implementation(libs.lang3)
implementation(libs.nanojson)
implementation(libs.okhttp3)
implementation(libs.protobuf.javalite)
implementation(libs.regex)
implementation(libs.retrofit)
implementation(libs.rxjava2)
implementation(libs.rxjava2.android)
implementation(project(":extensions:shared:j2v8"))
implementation(libs.okhttp)
implementation(project(":extensions:shared:gplayapi"))
implementation(libs.nanohttpd)
implementation(libs.protobuf.javalite)

23
extensions/shared/gplayapi/.gitignore vendored Normal file
View file

@ -0,0 +1,23 @@
### https://raw.github.com/github/gitignore/14b7566ce157ce95b07006466bacee160f242284/maven.gitignore
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
site-content
/.classpath
/.project
/.settings/
### Ignore IntelliJ files
/.idea/
*.iml
/bin/
/build
### Ignore Visual Studio code files
/.vscode/

View file

@ -0,0 +1,210 @@
Eclipse Public License - v 1.0
THE ACCOMPANYING PROGRAM IS PROVIDED UNDER THE TERMS OF THIS ECLIPSE PUBLIC
LICENSE ("AGREEMENT"). ANY USE, REPRODUCTION OR DISTRIBUTION OF THE PROGRAM
CONSTITUTES RECIPIENT'S ACCEPTANCE OF THIS AGREEMENT.
1. DEFINITIONS
"Contribution" means:
a) in the case of the initial Contributor, the initial code and documentation
distributed under this Agreement, and
b) in the case of each subsequent Contributor:
i) changes to the Program, and
ii) additions to the Program;
where such changes and/or additions to the Program originate from and are
distributed by that particular Contributor. A Contribution 'originates' from
a Contributor if it was added to the Program by such Contributor itself or
anyone acting on such Contributor's behalf. Contributions do not include additions
to the Program which: (i) are separate modules of software distributed in
conjunction with the Program under their own license agreement, and (ii) are
not derivative works of the Program.
"Contributor" means any person or entity that distributes the Program.
"Licensed Patents" mean patent claims licensable by a Contributor which are
necessarily infringed by the use or sale of its Contribution alone or when
combined with the Program.
"Program" means the Contributions distributed in accordance with this Agreement.
"Recipient" means anyone who receives the Program under this Agreement, including
all Contributors.
2. GRANT OF RIGHTS
a) Subject to the terms of this Agreement, each Contributor hereby grants
Recipient a non-exclusive, worldwide, royalty-free copyright license to reproduce,
prepare derivative works of, publicly display, publicly perform, distribute
and sublicense the Contribution of such Contributor, if any, and such derivative
works, in source code and object code form.
b) Subject to the terms of this Agreement, each Contributor hereby grants
Recipient a non-exclusive, worldwide, royalty-free patent license under Licensed
Patents to make, use, sell, offer to sell, import and otherwise transfer the
Contribution of such Contributor, if any, in source code and object code form.
This patent license shall apply to the combination of the Contribution and
the Program if, at the time the Contribution is added by the Contributor,
such addition of the Contribution causes such combination to be covered by
the Licensed Patents. The patent license shall not apply to any other combinations
which include the Contribution. No hardware per se is licensed hereunder.
c) Recipient understands that although each Contributor grants the licenses
to its Contributions set forth herein, no assurances are provided by any Contributor
that the Program does not infringe the patent or other intellectual property
rights of any other entity. Each Contributor disclaims any liability to Recipient
for claims brought by any other entity based on infringement of intellectual
property rights or otherwise. As a condition to exercising the rights and
licenses granted hereunder, each Recipient hereby assumes sole responsibility
to secure any other intellectual property rights needed, if any. For example,
if a third party patent license is required to allow Recipient to distribute
the Program, it is Recipient's responsibility to acquire that license before
distributing the Program.
d) Each Contributor represents that to its knowledge it has sufficient copyright
rights in its Contribution, if any, to grant the copyright license set forth
in this Agreement.
3. REQUIREMENTS
A Contributor may choose to distribute the Program in object code form under
its own license agreement, provided that:
a) it complies with the terms and conditions of this Agreement; and
b) its license agreement:
i) effectively disclaims on behalf of all Contributors all warranties and
conditions, express and implied, including warranties or conditions of title
and non-infringement, and implied warranties or conditions of merchantability
and fitness for a particular purpose;
ii) effectively excludes on behalf of all Contributors all liability for damages,
including direct, indirect, special, incidental and consequential damages,
such as lost profits;
iii) states that any provisions which differ from this Agreement are offered
by that Contributor alone and not by any other party; and
iv) states that source code for the Program is available from such Contributor,
and informs licensees how to obtain it in a reasonable manner on or through
a medium customarily used for software exchange.
When the Program is made available in source code form:
a) it must be made available under this Agreement; and
b) a copy of this Agreement must be included with each copy of the Program.
Contributors may not remove or alter any copyright notices contained within
the Program.
Each Contributor must identify itself as the originator of its Contribution,
if any, in a manner that reasonably allows subsequent Recipients to identify
the originator of the Contribution.
4. COMMERCIAL DISTRIBUTION
Commercial distributors of software may accept certain responsibilities with
respect to end users, business partners and the like. While this license is
intended to facilitate the commercial use of the Program, the Contributor
who includes the Program in a commercial product offering should do so in
a manner which does not create potential liability for other Contributors.
Therefore, if a Contributor includes the Program in a commercial product offering,
such Contributor ("Commercial Contributor") hereby agrees to defend and indemnify
every other Contributor ("Indemnified Contributor") against any losses, damages
and costs (collectively "Losses") arising from claims, lawsuits and other
legal actions brought by a third party against the Indemnified Contributor
to the extent caused by the acts or omissions of such Commercial Contributor
in connection with its distribution of the Program in a commercial product
offering. The obligations in this section do not apply to any claims or Losses
relating to any actual or alleged intellectual property infringement. In order
to qualify, an Indemnified Contributor must: a) promptly notify the Commercial
Contributor in writing of such claim, and b) allow the Commercial Contributor
to control, and cooperate with the Commercial Contributor in, the defense
and any related settlement negotiations. The Indemnified Contributor may participate
in any such claim at its own expense.
For example, a Contributor might include the Program in a commercial product
offering, Product X. That Contributor is then a Commercial Contributor. If
that Commercial Contributor then makes performance claims, or offers warranties
related to Product X, those performance claims and warranties are such Commercial
Contributor's responsibility alone. Under this section, the Commercial Contributor
would have to defend claims against the other Contributors related to those
performance claims and warranties, and if a court requires any other Contributor
to pay any damages as a result, the Commercial Contributor must pay those
damages.
5. NO WARRANTY
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, THE PROGRAM IS PROVIDED ON
AN "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS
OR IMPLIED INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF
TITLE, NON-INFRINGEMENT, MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Each Recipient is solely responsible for determining the appropriateness of
using and distributing the Program and assumes all risks associated with its
exercise of rights under this Agreement, including but not limited to the
risks and costs of program errors, compliance with applicable laws, damage
to or loss of data, programs or equipment, and unavailability or interruption
of operations.
6. DISCLAIMER OF LIABILITY
EXCEPT AS EXPRESSLY SET FORTH IN THIS AGREEMENT, NEITHER RECIPIENT NOR ANY
CONTRIBUTORS SHALL HAVE ANY LIABILITY FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING WITHOUT LIMITATION
LOST PROFITS), HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY
WAY OUT OF THE USE OR DISTRIBUTION OF THE PROGRAM OR THE EXERCISE OF ANY RIGHTS
GRANTED HEREUNDER, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
7. GENERAL
If any provision of this Agreement is invalid or unenforceable under applicable
law, it shall not affect the validity or enforceability of the remainder of
the terms of this Agreement, and without further action by the parties hereto,
such provision shall be reformed to the minimum extent necessary to make such
provision valid and enforceable.
If Recipient institutes patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Program itself
(excluding combinations of the Program with other software or hardware) infringes
such Recipient's patent(s), then such Recipient's rights granted under Section
2(b) shall terminate as of the date such litigation is filed.
All Recipient's rights under this Agreement shall terminate if it fails to
comply with any of the material terms or conditions of this Agreement and
does not cure such failure in a reasonable period of time after becoming aware
of such noncompliance. If all Recipient's rights under this Agreement terminate,
Recipient agrees to cease use and distribution of the Program as soon as reasonably
practicable. However, Recipient's obligations under this Agreement and any
licenses granted by Recipient relating to the Program shall continue and survive.
Everyone is permitted to copy and distribute copies of this Agreement, but
in order to avoid inconsistency the Agreement is copyrighted and may only
be modified in the following manner. The Agreement Steward reserves the right
to publish new versions (including revisions) of this Agreement from time
to time. No one other than the Agreement Steward has the right to modify this
Agreement. The Eclipse Foundation is the initial Agreement Steward. The Eclipse
Foundation may assign the responsibility to serve as the Agreement Steward
to a suitable separate entity. Each new version of the Agreement will be given
a distinguishing version number. The Program (including Contributions) may
always be distributed subject to the version of the Agreement under which
it was received. In addition, after a new version of the Agreement is published,
Contributor may elect to distribute the Program (including its Contributions)
under the new version. Except as expressly stated in Sections 2(a) and 2(b)
above, Recipient receives no rights or licenses to the intellectual property
of any Contributor under this Agreement, whether expressly, by implication,
estoppel or otherwise. All rights in the Program not expressly granted under
this Agreement are reserved.
This Agreement is governed by the laws of the State of New York and the intellectual
property laws of the United States of America. No party to this Agreement
will bring a legal action under this Agreement more than one year after the
cause of action arose. Each party waives its rights to a jury trial in any
resulting litigation.

View file

@ -0,0 +1,88 @@
# playstore-api-v2 (DEPRECATED)
Checkout Kotlin implementaion of the same [here](https://gitlab.com/AuroraOSS/gplayapi)
Google Play Store protobuf API wrapper in java
## Build separately
git clone https://github.com/yeriomin/play-store-api
gradlew :assemble
gradlew :build
Protobuf classes generation happens on `assemble` step, tests a run on `build` step.
## Usage
### First login
```java
// A device definition is required to log in
// See resources for a list of available devices
Properties properties = new Properties();
try {
properties.load(getClass().getClassLoader().getSystemResourceAsStream("device-honami.properties"));
} catch (IOException e) {
System.out.println("device-honami.properties not found");
return null;
}
PropertiesDeviceInfoProvider deviceInfoProvider = new PropertiesDeviceInfoProvider();
deviceInfoProvider.setProperties(properties);
deviceInfoProvider.setLocaleString(Locale.ENGLISH.toString());
// Provide valid google account info
PlayStoreApiBuilder builder = new PlayStoreApiBuilder()
// Extend HttpClientAdapter using a http library of your choice
.setHttpClient(new HttpClientAdapterImplementation())
.setDeviceInfoProvider(deviceInfoProvider)
.setEmail(email)
.setPassword(password)
;
GooglePlayAPI api = builder.build();
// We are logged in now
// Save and reuse the generated auth token and gsf id,
// unless you want to get banned for frequent relogins
api.getToken();
api.getGsfId();
// API wrapper instance is ready
DetailsResponse response = api.details("com.cpuid.cpu_z");
```
### Further logins
```java
// A device definition is required for routine requests too
// See resources for a list of available devices
Properties properties = new Properties();
try {
properties.load(getClass().getClassLoader().getSystemResourceAsStream("device-honami.properties"));
} catch (IOException e) {
System.out.println("device-honami.properties not found");
return null;
}
PropertiesDeviceInfoProvider deviceInfoProvider = new PropertiesDeviceInfoProvider();
deviceInfoProvider.setProperties(properties);
deviceInfoProvider.setLocaleString(Locale.ENGLISH.toString());
// Provide auth token and gsf id you previously saved
PlayStoreApiBuilder builder = new PlayStoreApiBuilder()
// Extend HttpClientAdapter using a http library of your choice
.setHttpClient(new HttpClientAdapterImplementation())
.setDeviceInfoProvider(deviceInfoProvider)
.setToken(token)
.setGsfId(gsfId)
;
GooglePlayAPI api = builder.build();
// API wrapper instance is ready
DetailsResponse response = api.details("com.cpuid.cpu_z");
```
## License
playstore-api-v2 is Free Software: You can use, study share and improve it at your will. Specifically you can redistribute and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
## Credits
playstore-api-v2 is a fork of https://github.com/yeriomin/play-store-api

View file

@ -0,0 +1,45 @@
import java.lang.Boolean.FALSE
plugins {
id(libs.plugins.android.library.get().pluginId)
alias(libs.plugins.protobuf)
}
android {
namespace = "com.dragons.aurora"
compileSdk = 34
defaultConfig {
minSdk = 24
}
buildTypes {
release {
isMinifyEnabled = FALSE
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
}
dependencies {
implementation(libs.protobuf.javalite)
}
protobuf {
protoc {
artifact = libs.protobuf.protoc.get().toString()
}
generateProtoTasks {
all().forEach { task ->
task.builtins {
create("java") {
option("lite")
}
}
}
}
}

View file

@ -0,0 +1,21 @@
# Add project specific ProGuard rules here.
# You can control the set of applied configuration files using the
# proguardFiles setting in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
#}
# Uncomment this to preserve the line number information for
# debugging stack traces.
#-keepattributes SourceFile,LineNumberTable
# If you keep the line number information, uncomment this to
# hide the original source file name.
#-renamesourcefileattribute SourceFile

View file

@ -0,0 +1,23 @@
package com.dragons.aurora.playstoreapiv2;
public class AuthException extends GooglePlayException {
private String twoFactorUrl;
public AuthException(String message) {
super(message);
}
public AuthException(String message, int code) {
super(message);
setCode(code);
}
public String getTwoFactorUrl() {
return twoFactorUrl;
}
public void setTwoFactorUrl(String twoFactorUrl) {
this.twoFactorUrl = twoFactorUrl;
}
}

View file

@ -0,0 +1,8 @@
package com.dragons.aurora.playstoreapiv2;
public interface DeviceInfoProvider {
String getAuthUserAgentString();
int getSdkVersion();
int getPlayServicesVersion();
}

View file

@ -0,0 +1,163 @@
package com.dragons.aurora.playstoreapiv2;
import java.io.IOException;
import java.util.*;
/**
* @author akdeniz, yeriomin, whyorean
*/
public class GooglePlayAPI {
private static final String URL = "https://android.clients.google.com/auth";
private HttpClientAdapter client;
private Locale locale;
private DeviceInfoProvider deviceInfoProvider;
/**
* Some methods instead of a protobuf return key-value pairs on each string
*/
public static Map<String, String> parseResponse(String response) {
Map<String, String> keyValueMap = new HashMap<>();
StringTokenizer st = new StringTokenizer(response, "\n\r");
while (st.hasMoreTokens()) {
String[] keyValue = st.nextToken().split("=", 2);
if (keyValue.length >= 2) {
keyValueMap.put(keyValue[0], keyValue[1]);
}
}
return keyValueMap;
}
public HttpClientAdapter getClient() {
return client;
}
public void setClient(HttpClientAdapter httpClient) {
this.client = httpClient;
}
public void setLocale(Locale locale) {
this.locale = locale;
}
public void setDeviceInfoProvider(DeviceInfoProvider deviceInfoProvider) {
this.deviceInfoProvider = deviceInfoProvider;
}
public String generatePlayStoreToken(String email, String aasToken) throws IOException {
return generateToken(
email,
aasToken,
"com.android.vending",
"38918a453d07199354f8b19af05ec6562ced5788",
"oauth2:https://www.googleapis.com/auth/googleplay"
);
}
public String generateYouTubeToken(String email, String aasToken) throws IOException {
return generateToken(
email,
aasToken,
"com.google.android.youtube",
"24bb24c05e47e0aefa68a58a766179d9b613a600",
"oauth2:https://www.googleapis.com/auth/youtube"
);
}
public String generateYouTubeMusicToken(String email, String aasToken) throws IOException {
return generateToken(
email,
aasToken,
"com.google.android.apps.youtube.music",
"afb0fed5eeaebdd86f56a97742f4b6b33ef59875",
"oauth2:https://www.googleapis.com/auth/youtube"
);
}
public String generateYouTubeUnpluggedToken(String email, String aasToken) throws IOException {
return generateToken(
email,
aasToken,
"com.google.android.apps.youtube.unplugged",
"3a82b5ee26bc46bf68113d920e610cd090198d4a",
"oauth2:https://www.googleapis.com/auth/youtube"
);
}
/**
* Authenticates on server with given email and password and sets
* authentication token. This token can be used to login instead of using
* email and password every time.
*/
public String generateToken(String email, String aasToken,
String packageName, String signature,
String scopes) throws IOException {
Map<String, String> params = getDefaultLoginParams(email);
params.put("service", scopes);
params.put("app", packageName);
params.put("oauth2_foreground", "1");
params.put("token_request_options", "CAA4AVAB");
params.put("check_email", "1");
params.put("Token", aasToken);
params.put("client_sig", signature);
params.put("callerPkg", "com.google.android.gms");
params.put("system_partition", "1");
params.put("_opt_is_called_from_account_manager", "1");
params.put("is_called_from_account_manager", "1");
Map<String, String> headers = getAuthHeaders();
headers.put("app", packageName);
byte[] responseBytes = client.post(URL, params, headers);
Map<String, String> response = parseResponse(new String(responseBytes));
if (response.containsKey("Auth")) {
return response.get("Auth");
} else {
throw new AuthException("Authentication failed! (login)");
}
}
public String generateAASToken(String email, String oauthToken) throws IOException {
Map<String, String> params = getDefaultLoginParams(email);
params.put("service", "ac2dm");
params.put("add_account", "1");
params.put("get_accountid", "1");
params.put("ACCESS_TOKEN", "1");
params.put("callerPkg", "com.google.android.gms");
params.put("Token", oauthToken);
//params.put("droidguard_results", "...");
Map<String, String> headers = getAuthHeaders();
headers.put("app", "com.google.android.gms");
byte[] responseBytes = client.post(URL, params, headers);
Map<String, String> response = parseResponse(new String(responseBytes));
if (response.containsKey("Token")) {
return response.get("Token");
} else {
throw new AuthException("Authentication failed! (login aas)");
}
}
/**
* login methods use this
* Most likely not all of these are required, but the Market app sends them, so we will too
* <p>
* client_sig is SHA1 digest of encoded certificate on
* GoogleLoginService(package name : com.google.android.gsf) system APK.
* But google doesn't seem to care of value of this parameter.
*/
protected Map<String, String> getDefaultLoginParams(String email) {
Map<String, String> params = new HashMap<>();
params.put("sdk_version", String.valueOf(this.deviceInfoProvider.getSdkVersion()));
params.put("Email", email);
params.put("google_play_services_version", String.valueOf(this.deviceInfoProvider.getPlayServicesVersion()));
params.put("device_country", this.locale.getCountry().toLowerCase());
params.put("lang", this.locale.getLanguage().toLowerCase());
params.put("callerSig", "38918a453d07199354f8b19af05ec6562ced5788");
return params;
}
private Map<String, String> getAuthHeaders() {
Map<String, String> headers = new HashMap<>();
headers.put("User-Agent", this.deviceInfoProvider.getAuthUserAgentString());
return headers;
}
}

View file

@ -0,0 +1,20 @@
package com.dragons.aurora.playstoreapiv2;
import java.io.IOException;
public class GooglePlayException extends IOException {
protected int code;
public GooglePlayException(String message) {
super(message);
}
public void setCode(int code) {
this.code = code;
}
public int getCode() {
return this.code;
}
}

View file

@ -0,0 +1,31 @@
package com.dragons.aurora.playstoreapiv2;
import java.io.IOException;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public abstract class HttpClientAdapter {
abstract public byte[] get(String url, Map<String, String> params, Map<String, String> headers) throws IOException;
abstract public byte[] post(String url, Map<String, String> params, Map<String, String> headers) throws IOException;
abstract public byte[] post(String url, byte[] body, Map<String, String> headers) throws IOException;
abstract public String buildUrl(String url, Map<String, String> params);
public byte[] get(String url, Map<String, String> params) throws IOException {
return get(url, params, new HashMap<>());
}
public byte[] get(String url) throws IOException {
return get(url, new HashMap<>());
}
static public Map<String, List<String>> expand(Map<String, String> params) {
Map<String, List<String>> result = new HashMap<String, List<String>>();
for (String name: params.keySet()) {
result.put(name, Collections.singletonList(params.get(name)));
}
return result;
}
}

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,36 @@
UserReadableName = Sony Bravia 4K GB (api24)
Build.HARDWARE = mt5891
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = Sony/BRAVIA_ATV2_EU/BRAVIA_ATV2:7.0/NRD91N.S90/1.6.0.26.71.1.00:user/release-keys
Build.BRAND = Sony
Build.DEVICE = BRAVIA_ATV2
Build.VERSION.SDK_INT = 24
Build.MODEL = BRAVIA 4K GB
Build.MANUFACTURER = Sony
Build.PRODUCT = BRAVIA_ATV2_EU
Build.ID = NRD91N.S90
Build.VERSION.RELEASE = 7.0
TouchScreen = 1
Keyboard = 1
Navigation = 2
ScreenLayout = 3
HasHardKeyboard = false
HasFiveWayNavigation = true
GL.Version = 196610
Screen.Density = 320
Screen.Width = 1920
Screen.Height = 1080
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.location.provider,com.android.media.remotedisplay,com.android.media.tv.remoteprovider,com.android.mediadrm.signer,com.extra.eventflow,com.google.android.gms,com.google.widevine.software.drm,com.mediatek.MtkBitmapFactory,com.mediatek.common.PhotoPlayer,com.mediatek.common.audiocapture,com.mediatek.common.capture,com.mediatek.common.powercontrol,com.mediatek.dlna,com.mediatek.dm,com.mediatek.eventflow,com.mediatek.mmp,com.mediatek.record,com.mediatek.twoworlds.tv,com.mediatek.wfdsink,com.neulion.nlplayer,com.sony.csx.enclave.enclave_java_common,com.sony.csx.enclave.enclave_service_interfaces,com.sony.csx.enclave.enclave_wrapper_client,com.sony.device,com.sony.dtv.interactivetvplatform.discovery.interfaces.client,com.sony.dtv.interactivetvplatform.discovery.interfaces.event,com.sony.dtv.interactivetvplatform.discovery.interfaces.platform,com.sony.dtv.interactivetvutil.client,com.sony.dtv.ledcontrol,com.sony.dtv.photorenderlib,com.sony.dtv.quicksetup.logcollector,com.sony.dtv.recutil,com.sony.dtv.remotetouchpad.gesture,com.sony.dtv.scrums.action.libtvdotactionextension,com.sony.dtv.tvinput.provider.util,com.sony.dtv.tvinputrestrictionmanager,com.sony.dtv.tvworldutils,com.sony.eventflow,com.sony.snei.amsharedlib3,com.sonyericsson.colorextraction,com.sonyericsson.dlna.api,com.sonyericsson.dlna.api_2,com.sonyericsson.dlna.api_3,com.sonyericsson.dlna.api_4,com.sonyericsson.dlna.api_5,com.sonyericsson.dlna.api_6,com.sonymobile.drmstream.api,com.sonymobile.media.dashboard.extension.api,com.sonymobile.mediacontent_1,com.sonymobile.mediacontent_2,com.sonymobile.mediacontent_3,huey,javax.obex,jcifs,org.apache.http.legacy
Features = android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.ethernet,android.hardware.hdmi.cec,android.hardware.location,android.hardware.location.network,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.type.television,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.backup,android.software.input_methods,android.software.leanback,android.software.leanback_only,android.software.live_tv,android.software.picture_in_picture,android.software.verified_boot,android.software.voice_recognizers,android.software.webview,com.google.android.tv.installed,com.sony.devices,com.sony.dtv,com.sony.dtv.hardware.hdr,com.sony.dtv.hardware.hdr.a,com.sony.dtv.hardware.panel.qfhd,nrdp.modelgroup
Locales = ar,ast,bg,bg_BG,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_GB,es,es_ES,et_EE,eu,fi,fi_FI,fr,fr_BE,fr_FR,hr,hr_HR,hu,hu_HU,it,it_IT,iw,iw_IL,ja,kk_KZ,lt,lt_LT,lv,lv_LV,mk_MK,nb,nb_NO,nl,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,sk,sk_SK,sl,sl_SI,sr,sr_Latn,sr_RS,sv,sv_SE,tr,tr_TR,uk,uk_UA,zh
GSF.version = 11951836
Vending.version = 80793468
Vending.versionString = 7.9.34.Q-xhdpi [8] [PR] 159126641
CellOperator =
SimOperator =
Roaming = mobile-notroaming
Client = android-google
TimeZone = Europe/Rome
GL.Extensions = GL_ANDROID_extension_pack_es31a,GL_ARM_mali_program_binary,GL_ARM_mali_shader_binary,GL_ARM_rgba8,GL_ARM_shader_framebuffer_fetch,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blend_minmax,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_draw_elements_base_vertex,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_occlusion_query_boolean,GL_EXT_primitive_bounding_box,GL_EXT_read_format_bgra,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_io_blocks,GL_EXT_shader_pixel_local_storage,GL_EXT_shadow_samplers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_rg,GL_EXT_texture_sRGB_decode,GL_EXT_texture_storage,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_robust_buffer_access_behavior,GL_KHR_robustness,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_KHR_texture_compression_astc_sliced_3d,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_byte_coordinates,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_copy_image,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_buffers_indexed,GL_OES_draw_elements_base_vertex,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_extended_matrix_palette,GL_OES_fbo_render_mipmap,GL_OES_fixed_point,GL_OES_framebuffer_object,GL_OES_geometry_shader,GL_OES_get_program_binary,GL_OES_gpu_shader5,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_primitive_bounding_box,GL_OES_query_matrix,GL_OES_read_format,GL_OES_required_internalformat,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_io_blocks,GL_OES_shader_multisample_interpolation,GL_OES_single_precision,GL_OES_standard_derivatives,GL_OES_stencil8,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_tessellation_shader,GL_OES_texture_3D,GL_OES_texture_border_clamp,GL_OES_texture_buffer,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_cube_map_array,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture

View file

@ -0,0 +1,35 @@
UserReadableName = Jolla C (api19)
Build.HARDWARE = unknown
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = Jolla/alien_jolla_l500d/alien_jolla_l500d:4.4.4/KTU84Q/eng.admin.20170314.161935:user/dev-keys
Build.BRAND = Jolla
Build.DEVICE = JP-1601
Build.VERSION.SDK_INT = 19
Build.MODEL = Jolla C
Build.MANUFACTURER = Jolla
Build.PRODUCT = Jolla C
TouchScreen = 3
Keyboard = 2
Navigation = 2
ScreenLayout = 2
HasHardKeyboard = true
HasFiveWayNavigation = true
Screen.Density = 320
Screen.Width = 720
Screen.Height = 1184
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.test.runner,com.android.location.provider,com.android.media.remotedisplay,javax.obex
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CM,en_DM,en_FJ,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MP,en_MT,en_MU,en_MW,en_NA,en_NG,en_NZ,en_PG,en_PH,en_PK,en_PR,en_PW,en_SB,en_SC,en_SG,en_SL,en_SS,en_SZ,en_TC,en_TO,en_TT,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_GB,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,lag,lg,lg_UG,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_NG,zh,zu,zu_ZA
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
CellOperator = 310260
GSF.version = 10548448
Vending.version = 80798000
SimOperator = 310260
Client = android-google

View file

@ -0,0 +1,35 @@
UserReadableName = ASUS MeMO Pad 7 x86 (api25)
Build.HARDWARE = me176c
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = asus/lineage_me176c/K013:7.1.2/NJH47F/4f334cf0f7:userdebug/release-keys
Build.BRAND = asus
Build.DEVICE = K013
Build.VERSION.SDK_INT = 25
Build.MODEL = ASUS MeMO Pad 7 (ME176C)
Build.MANUFACTURER = ASUS
Build.PRODUCT = lineage_me176c
Build.ID = NJH47F
Build.VERSION.RELEASE = 7.1.2
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 3
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196609
Screen.Density = 190
Screen.Width = 800
Screen.Height = 1223
Platforms = x86,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,javax.obex,org.apache.http.legacy,org.cyanogenmod.hardware,org.cyanogenmod.platform
Features = android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.faketouch,android.hardware.location,android.hardware.location.network,android.hardware.microphone,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.software.app_widgets,android.software.backup,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.cyanogenmod.android,org.cyanogenmod.audio,org.cyanogenmod.hardware,org.cyanogenmod.livedisplay,org.cyanogenmod.performance,org.cyanogenmod.profiles,org.cyanogenmod.statusbar,org.cyanogenmod.telephony,org.cyanogenmod.weather,projekt.substratum.theme
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,ast_ES,az_AZ,be_BY,bg,bg_BG,bn_BD,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ku,ky_KG,lb,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 10548448
Vending.version = 80798000
CellOperator =
SimOperator =
Roaming = mobile-notroaming
Client = android-google
TimeZone = Asia/Yekaterinburg
GL.Extensions = GL_ANGLE_texture_compression_dxt3,GL_ANGLE_texture_compression_dxt5,GL_APPLE_texture_max_level,GL_EXT_blend_func_extended,GL_EXT_blend_minmax,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_compressed_ETC1_RGB8_sub_texture,GL_EXT_copy_image,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_draw_buffers,GL_EXT_draw_buffers_indexed,GL_EXT_draw_elements_base_vertex,GL_EXT_frag_depth,GL_EXT_map_buffer_range,GL_EXT_multi_draw_arrays,GL_EXT_polygon_offset_clamp,GL_EXT_read_format_bgra,GL_EXT_robustness,GL_EXT_separate_shader_objects,GL_EXT_shader_integer_mix,GL_EXT_texture_border_clamp,GL_EXT_texture_compression_dxt1,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_lod_bias,GL_EXT_texture_rg,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_EXT_unpack_subimage,GL_INTEL_performance_query,GL_KHR_blend_equation_advanced,GL_KHR_context_flush_control,GL_KHR_debug,GL_KHR_no_error,GL_KHR_robust_buffer_access_behavior,GL_KHR_robustness,GL_MESA_shader_integer_functions,GL_NV_draw_buffers,GL_NV_fbo_color_attachments,GL_NV_read_buffer,GL_NV_read_depth,GL_NV_read_depth_stencil,GL_NV_read_stencil,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_byte_coordinates,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_copy_image,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_buffers_indexed,GL_OES_draw_elements_base_vertex,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fixed_point,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_mapbuffer,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_query_matrix,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_multisample_interpolation,GL_OES_single_precision,GL_OES_standard_derivatives,GL_OES_stencil8,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_border_clamp,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float

View file

@ -0,0 +1,33 @@
UserReadableName = Samsung SPH-M930 hwkb (api10)
Build.FINGERPRINT = samsung/SPH-M930/SPH-M930:2.3.6/GINGERBREAD/FG11:user/release-keys
Build.HARDWARE = SPH-M930
Build.BRAND = samsung
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = SPH-M930
Build.VERSION.SDK_INT = 10
Build.MODEL = SPH-M930
Build.MANUFACTURER = samsung
Build.PRODUCT = SPH-M930
TouchScreen = 3
Keyboard = 2
Navigation = 2
ScreenLayout = 2
HasHardKeyboard = true
HasFiveWayNavigation = true
Screen.Density = 160
Screen.Width = 320
Screen.Height = 480
Platforms = armeabi-v7a,armeabi
SharedLibraries = javax.obex,com.qualcomm.location.vzw_library,android.test.runner,touchwiz,com.google.android.maps,com.android.location.provider,com.samsung.device,sec_feature
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = en,en_AU,en_BE,en_BW,en_BZ,en_CA,en_GB,en_HK,en_IE,en_IN,en_JM,en_MH,en_MT,en_NA,en_NZ,en_PH,en_PK,en_SG,en_TT,en_US,en_VI,en_ZA,en_ZW,es,es_US
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Intel 3G i80 x86 tablet (api19)
Build.FINGERPRINT = intel/anzhen4_mrd7_64/anzhen4_mrd7:4.4.4/KTU84P/eng.root.20150617.094743:user/dev-keys
Build.HARDWARE = anzhen4_mrd7
Build.BRAND = Tab_8_4C
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = Tab_8_4C
Build.VERSION.SDK_INT = 19
Build.MODEL = 3G i80
Build.MANUFACTURER = intel
Build.PRODUCT = Tab_8_4C
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 4
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 800
Screen.Height = 1232
Platforms = x86,armeabi-v7a
SharedLibraries = javax.obex,com.android.future.usb.accessory,android.test.runner,com.intel.asf,com.android.media.remotedisplay,com.intel.config,com.intel.camera.extensions,com.google.android.media.effects,com.intel.widi.sink,com.intel.security.service.sepmanager,com.google.android.maps,com.android.location.provider,com.google.android.gms,com.intel.security.lib.sepdrmjni,com.intel.multidisplay
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CM,en_DM,en_FJ,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MP,en_MT,en_MU,en_MW,en_NA,en_NG,en_NZ,en_PG,en_PH,en_PK,en_PR,en_PW,en_SB,en_SC,en_SG,en_SL,en_SS,en_SZ,en_TC,en_TO,en_TT,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_GB,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,lag,lg,lg_UG,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_NG,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = Jolla Alien Dalvik (api16)
Build.HARDWARE = unknown
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = Jolla/alien_jolla_bionic/alien_jolla_bionic:4.1.2/JZO54K/eng.erin.20151105.144423:user/dev-keys
Build.BRAND = Jolla
Build.DEVICE = alien_jolla_bionic
Build.VERSION.SDK_INT = 16
Build.MODEL = Jolla
Build.MANUFACTURER = unknown
Build.PRODUCT = alien_jolla_bionic
Build.ID = JZO54K
Build.VERSION.RELEASE = 4.1.2
TouchScreen = 3
Keyboard = 2
Navigation = 2
ScreenLayout = 2
HasHardKeyboard = true
HasFiveWayNavigation = true
GL.Version = 131072
Screen.Density = 240
Screen.Width = 540
Screen.Height = 888
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.test.runner,com.android.location.provider,com.google.android.maps,javax.btobex,javax.obex
Features = android.hardware.camera,android.hardware.camera.autofocus,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.telephony,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.wifi,com.myriadgroup.alien
Locales = af,af_NA,af_ZA,agq,agq_CM,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DZ,ar_EG,ar_IQ,ar_JO,ar_KW,ar_LB,ar_LY,ar_MA,ar_OM,ar_QA,ar_SA,ar_SD,ar_SY,ar_TN,ar_YE,as,as_IN,asa,asa_TZ,az,az_CYRL,az_CYRL_AZ,az_LATN,az_LATN_AZ,bas,bas_CM,be,be_BY,bem,bem_ZM,bez,bez_TZ,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,brx_IN,bs,bs_BA,ca,ca_ES,cgg,cgg_UG,chr,chr_US,cs,cs_CZ,cy,cy_GB,da,da_DK,dav,dav_KE,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dje_NE,dua,dua_CM,dyo,dyo_SN,ebu,ebu_KE,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AS,en_AU,en_BB,en_BE,en_BM,en_BW,en_BZ,en_CA,en_GB,en_GU,en_GY,en_HK,en_IE,en_IN,en_JM,en_MH,en_MP,en_MT,en_MU,en_NA,en_NZ,en_PH,en_PK,en_SG,en_TT,en_UM,en_US,en_US_POSIX,en_VI,en_ZA,en_ZW,eo,es,es_419,es_AR,es_BO,es_CL,es_CO,es_CR,es_DO,es_EC,es_ES,es_GQ,es_GT,es_HN,es_MX,es_NI,es_PA,es_PE,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,ewo_CM,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fil_PH,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_KM,fr_LU,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_NE,fr_RE,fr_RW,fr_SN,fr_TD,fr_TG,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gsw_CH,gu,gu_IN,guz,guz_KE,gv,gv_GB,ha,ha_LATN,ha_LATN_GH,ha_LATN_NE,ha_LATN_NG,haw,haw_US,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy,hy_AM,ig,ig_NG,ii,ii_CN,in,in_ID,is,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,jmc,jmc_TZ,ka,ka_GE,kab,kab_DZ,kam,kam_KE,kde,kde_TZ,kea,kea_CV,khq,khq_ML,ki,ki_KE,kk,kk_CYRL,kk_CYRL_KZ,kl,kl_GL,kln,kln_KE,km,km_KH,kn,kn_IN,ko,ko_KR,kok,kok_IN,ksb,ksb_TZ,ksf,ksf_CM,kw,kw_GB,lag,lag_TZ,lg,lg_UG,ln,ln_CD,ln_CG,lt,lt_LT,lu,lu_CD,luo,luo_KE,luy,luy_KE,lv,lv_LV,mas,mas_KE,mas_TZ,mer,mer_KE,mfe,mfe_MU,mg,mg_MG,mgh,mgh_MZ,mk,mk_MK,ml,ml_IN,mr,mr_IN,ms,ms_BN,ms_MY,mt,mt_MT,mua,mua_CM,my,my_MM,naq,naq_NA,nb,nb_NO,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_NL,nmg,nmg_CM,nn,nn_NO,nus,nus_SD,nyn,nyn_UG,om,om_ET,om_KE,or,or_IN,pa,pa_ARAB,pa_ARAB_PK,pa_GURU,pa_GURU_IN,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_GW,pt_MZ,pt_PT,pt_ST,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,rof_TZ,ru,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,rwk_TZ,saq,saq_KE,sbp,sbp_TZ,seh,seh_MZ,ses,ses_ML,sg,sg_CF,shi,shi_LATN,shi_LATN_MA,shi_TFNG,shi_TFNG_MA,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sr,sr_CYRL,sr_CYRL_BA,sr_CYRL_ME,sr_CYRL_RS,sr_LATN,sr_LATN_BA,sr_LATN_ME,sr_LATN_RS,sv,sv_FI,sv_SE,sw,sw_KE,sw_TZ,swc,swc_CD,ta,ta_IN,ta_LK,te,te_IN,teo,teo_KE,teo_UG,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_TR,twq,twq_NE,tzm,tzm_LATN,tzm_LATN_MA,uk,uk_UA,ur,ur_IN,ur_PK,uz,uz_ARAB,uz_ARAB_AF,uz_CYRL,uz_CYRL_UZ,uz_LATN,uz_LATN_UZ,vai,vai_LATN,vai_LATN_LR,vai_VAII,vai_VAII_LR,vi,vi_VN,vun,vun_TZ,xog,xog_UG,yav,yav_CM,yo,yo_NG,zh,zh_HANS,zh_HANS_CN,zh_HANS_HK,zh_HANS_MO,zh_HANS_SG,zh_HANT,zh_HANT_HK,zh_HANT_MO,zh_HANT_TW,zu,zu_ZA
GSF.version = 0
Vending.version = 0
Vending.versionString =
CellOperator = 26201
SimOperator = 26201
Client = android-google
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_debug_marker,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_alpha_test,GL_QCOM_binning_control,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering
TimeZone = Europe/Berlin
Roaming = mobile-notroaming

View file

@ -0,0 +1,36 @@
UserReadableName = Nexus 6P (api27)
Build.HARDWARE = angler
Build.RADIO = unknown
Build.BOOTLOADER = angler-03.78
Build.FINGERPRINT = google/angler/angler:8.1.0/OPP6.171019.012/4453975:user/release-keys
Build.BRAND = google
Build.DEVICE = angler
Build.VERSION.SDK_INT = 27
Build.MODEL = Nexus 6P
Build.MANUFACTURER = Huawei
Build.PRODUCT = angler
Build.ID = OPP6.171019.012
Build.VERSION.RELEASE = 8.1.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 560
Screen.Width = 1440
Screen.Height = 2392
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.mock,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.camera.experimental2016,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.qualcomm.qcrilhook,com.quicinc.cneapiclient,javax.obex,org.apache.http.legacy
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.audio.pro,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.ethernet,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.ram.normal,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.hifi_sensors,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.hardware.wifi.passpoint,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.sip,android.software.sip.voip,android.software.verified_boot,android.software.voice_recognizers,android.software.webview,com.google.android.apps.dialer.SUPPORTED,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,com.nxp.mifare
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,az,bg,bg_BG,bn,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_US,en_XA,es,es_ES,es_US,et,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_FR,gl,gu,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy,in,in_ID,is,it,it_IT,iw,iw_IL,ja,ja_JP,ka,kk,km,kn,ko,ko_KR,ky,lo,lt,lt_LT,lv,lv_LV,mk,ml,mn,mr,ms,ms_MY,my,nb,nb_NO,ne,nl,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si,sk,sk_SK,sl,sl_SI,sq,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta,te,th,th_TH,tr,tr_TR,uk,uk_UA,ur,uz,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951448
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 22210
SimOperator = 22210
TimeZone = Europe/Rome
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_EGL_image_array,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_external_buffer,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_multisampled_render_to_texture2,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_ldr,GL_NV_shader_noperspective_interpolation,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_shader_framebuffer_fetch_noncoherent,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,33 @@
UserReadableName = Sony Xperia Z3 Compact (api25)
Build.FINGERPRINT = Sony/carbon_aries/aries:7.1.1/NMF26V/3a70f5295e:userdebug/test-keys
Build.HARDWARE = aries
Build.BRAND = Sony
Build.RADIO = unknown
Build.BOOTLOADER = s1
Build.DEVICE = aries
Build.VERSION.SDK_INT = 25
Build.MODEL = Xperia Z3 Compact
Build.MANUFACTURER = Sony
Build.PRODUCT = carbon_aries
Client = android-google
TouchScreen = 3
Keyboard = 1
Navigation = 2
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = true
Screen.Density = 272
Screen.Width = 720
Screen.Height = 1198
Platforms = armeabi-v7a,armeabi
SharedLibraries = com.android.location.provider,com.android.future.usb.accessory,android.ext.shared,javax.obex,android.ext.services,android.test.runner,com.google.android.maps,org.apache.http.legacy,com.android.nfc_extras,com.android.media.remotedisplay,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = hi,so_ET,ro_MD,in,sn_ZW,sw_UG,es_BO,dyo,ru_KZ,en_JE,zu,en_JM,pt_BR,en_MS,ar_SD,en_ZM,es_PA,en_GG,es_SV,en_SE,es,rof,fr_SC,fr_GA,en_CM,ta,en_SX,fr_MC,fy,to,fr_RW,en_SD,qu,en_KE,rw_RW,gv_IM,sv_FI,cgg,pt_GW,fr_CF,sv_SE,dje,en_SS,ar_DZ,si,es_UY,ar_SA,tr_TR,dua,fr_BL,nb_SJ,fr_CA,ff,es_PE,om,en_FK,cs_CZ,zu_ZA,sl_SI,es_NI,en_GY,fr_ML,fr_MF,nmg,fo_DK,en_LR,el_CY,nus,mt,en_NU,en_UG,ta_MY,pt_ST,ha_NE,ca_FR,ru,es_IC,ar_KW,it_IT,en_GI,ji,hr,ka_GE,pt_PT,nl,en_TV,ru_RU,pa,mgh,es_ES,km,ee_TG,ca_AD,twq,ar_YE,eo,ne,as_IN,es_GT,vi_VN,de_CH,ig_NG,or_IN,mua,pl_PL,lv,fr_DZ,lb,hr_HR,haw,sw_KE,shi,mn,om_ET,fr_LU,es_PR,lo_LA,es_HN,kl_GL,bo_IN,et_EE,en_ZA,fr_TG,br_FR,yo_NG,tr_CY,sr,bem,fr_PF,ti_ET,hu,mk,de_LI,so_SO,nb_NO,luo,en_ZW,sk_SK,ksh,sk,nyn,fa,zgh,fr_HT,en_CY,uz,rm,en_MH,sn,to_TO,te,sq_MK,ha_GH,ta_IN,en_MW,da,en_BS,ms_SG,ps_AF,lt_LT,br,it_CH,fr_NE,en_LC,bm_ML,kk_KZ,qu_BO,tr,nl_SR,ln,sw,luy,en,fo,en_GD,asa,lag,fr_GQ,fr,fr_GN,dz,ar_SO,dz_BT,ca,es_CL,rn_BI,sq_XK,en_CC,en_SI,el_GR,yo_BJ,vi,my,de_LU,mk_MK,ak_GH,fr_GF,en_PK,my_MM,fr_CG,cy,es_PH,en_IN,ksf,en_LS,fy_NL,ce,ff_MR,af_ZA,fa_IR,bn_BD,vun,ks,bg,sq_AL,fr_BF,rw,af_NA,dsb,qu_PE,en_DM,ar_TN,nd,en_UM,en_FM,en_NR,ro,uk,se_SE,ln_CF,pt_MZ,am_ET,kl,pt,ta_SG,th,se_NO,ff_GN,ky,en_NG,ur_PK,af,en_DE,so,sah,fr_SN,ar_EH,vai,gu_IN,en_WS,es_EA,ms,fr_MG,th_TH,fr_RE,ru_BY,nl_SX,lv_LV,ki_KE,fr_CI,en_BB,ja,kde,am,nl_BQ,bo_CN,ga_IE,sl,bn_IN,mer,en_SZ,fr_CM,dav,ti_ER,da_GL,kw_GB,ga,mfe,it,it_SM,fo_FO,en_BW,en_SG,en_KN,cs,chr,km_KH,en_SC,mr_IN,el,en_PN,mg_MG,ru_KG,en_PW,en_SB,fur,en_BZ,ka,bm,de_DE,te_IN,ml_IN,hy,sw_TZ,kw,kn,ru_UA,ln_CD,et,fr_CH,en_DG,bn,ps,qu_EC,lt,ii_CN,en_FJ,eu,en_TC,ksb,pt_CV,gl_ES,en_VU,en_MP,ee,ar_PS,wae,nl_BE,xog,is,fr_PM,saq,iw_IL,om_KE,en_FI,nn_NO,pt_MO,mgo,en_US,fr_BE,ar,gd,kok,de,kln,kam,mt_MT,be,ce_RU,en_BE,fr_SY,es_MX,sv_AX,agq,sq,hr_BA,tzm,de_AT,os_RU,es_DO,en_BI,mg,ar_SY,yav,ks_IN,ro_RO,lu_CD,en_PG,jgo,is_IS,es_CU,ff_CM,en_VG,az,en_GU,fr_MR,ug_CN,in_ID,en_AU,nl_CW,ru_MD,naq,gd_GB,en_CK,ml,ja_JP,sw_CD,uk_UA,ta_LK,pl,es_VE,da_DK,be_BY,fa_AF,pt_AO,fr_MQ,bs,mas,ar_QA,en_IO,en_SH,en_NL,es_GQ,lg,hu_HU,fr_BJ,en_MO,brx,fr_WF,ar_OM,ca_ES,en_GB,ug,ha,en_NA,en_NF,sv,as,ig,en_KI,en_CX,en_TO,sbp,bo,ne_NP,bg_BG,jmc,en_GM,ar_JO,en_HK,ar_IQ,fr_DJ,fr_GP,lkt,kn_IN,ha_NG,en_IL,en_KY,en_TT,fil,fr_BI,sg,hsb,ca_IT,teo,fr_TN,en_AS,kk,guz,fr_VU,mr,es_EC,en_TZ,ko_KR,ar_MA,ar_LB,fr_CD,en_DK,es_CO,ur_IN,rwk,es_PY,ms_MY,cy_GB,en_PH,seh,ar_BH,en_TK,en_RW,eu_ES,ki,fr_TD,smn,ses,so_KE,es_CR,en_MY,en_AI,lo,en_MG,en_PR,gsw,en_VI,en_BM,se,en_IE,en_SL,khq,en_CH,ee_GH,ko,lb_LU,en_AT,nn,ar_ER,lrc,ar_TD,ar_MR,fr_YT,en_GH,en_MU,si_LK,gv,ky_KG,nl_NL,rm_CH,ar_IL,ti,iw,hy_AM,se_FI,pt_TL,en_AG,or,bez,ff_SN,en_IM,fr_MA,en_MT,nd_ZW,fi_FI,en_NZ,de_BE,fr_KM,bas,ak,nl_AW,ar_AE,kab,ar_EG,ur,es_AR,ar_DJ,ar_KM,kkj,fi,lu,fr_FR,ebu,os,ne_IN,ln_AO,gu,zh,os_GE,sg_CF,mn_MN,gl,lg_UG,ko_KP,rn,mzn,es_US,hi_IN,ar_LY,ms_BN,fr_NC,so_DJ,ii,en_ER,ar_SS,kea,ln_CG,fr_MU,nb,yo,nnh,en_VC,ewo,en_CAClient = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = OnePlus One (api25)
Build.HARDWARE = bacon
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = oneplus/bacon/A0001:6.0.1/MHC19Q/ZNH2KAS1KN:user/release-keys
Build.BRAND = oneplus
Build.DEVICE = A0001
Build.VERSION.SDK_INT = 25
Build.MODEL = A0001
Build.MANUFACTURER = OnePlus
Build.PRODUCT = bacon
Build.ID = NJH47F
Build.VERSION.RELEASE = 7.1.2
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196608
Screen.Density = 480
Screen.Width = 1080
Screen.Height = 1776
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.android.nfc_extras,com.dsi.ant.antradio_library,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.qualcomm.qcnvitems,com.qualcomm.qcrilhook,javax.obex,org.apache.http.legacy,org.cyanogenmod.hardware,org.cyanogenmod.platform
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.ethernet,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.hce,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.cyanogenmod.android,com.google.android.apps.dialer.SUPPORTED,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,org.cyanogenmod.audio,org.cyanogenmod.hardware,org.cyanogenmod.livedisplay,org.cyanogenmod.performance,org.cyanogenmod.profiles,org.cyanogenmod.statusbar,org.cyanogenmod.telephony,org.cyanogenmod.weather
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,ast_ES,az_AZ,be_BY,bg,bg_BG,bn,bn_BD,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn,kn_IN,ko,ko_KR,ku,ky_KG,lb,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml,ml_IN,mn_MN,mr,mr_IN,ms,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta,ta_IN,te,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951438
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 22201
SimOperator = 22201
Roaming = mobile-notroaming
Client = android-google
TimeZone = Europe/Rome
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_multisampled_render_to_texture,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_alpha_test,GL_QCOM_binning_control,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering

View file

@ -0,0 +1,36 @@
UserReadableName = BlackBerry KEYone (api25)
Build.HARDWARE = qcom
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = blackberry/bbb100usa/bbb100:7.1.1/NMF26F/AAR108:user/release-keys
Build.BRAND = blackberry
Build.DEVICE = bbb100
Build.VERSION.SDK_INT = 25
Build.MODEL = BBB100-3
Build.MANUFACTURER = BlackBerry
Build.PRODUCT = bbb100usa
Build.ID = NMF26F
Build.VERSION.RELEASE = 7.1.1
TouchScreen = 3
Keyboard = 2
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = true
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 420
Screen.Width = 1080
Screen.Height = 1620
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = ConnectivityExt,android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.blackberry.cellular.bbryrilhook,com.blackberry.cellular.config,com.blackberry.cellular.ims.libbbryims_config,com.blackberry.cellular.ims.libbbryims_frameworks,com.blackberry.nfc,com.blackberry.only,com.blackberry.openmobileapi,com.blackberry.security,com.blackberry.security.smartcard,com.blackberry.telephony.dataconnection,com.fingerprints.extension,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.gsma.services.nfc,com.qti.dpmapi,com.qti.dpmframework,com.qti.ims.connectionmanager.imscmlibrary,com.qti.location.sdk,com.qti.snapdragon.sdk.display,com.qti.vzw.ims.internal,com.qualcomm.embmslibrary,com.qualcomm.location.vzw_library,com.qualcomm.qcrilhook,com.qualcomm.qti.QtiTelephonyServicelibrary,com.qualcomm.qti.lpa.uimlpalibrary,com.qualcomm.qti.rcsimssettings,com.qualcomm.qti.rcsservice,com.qualcomm.qti.smartsearch,com.quicinc.cne,com.quicinc.cneapiclient,com.quicinc.wbc,com.quicinc.wbcservice,com.suntek.mway.rcs.client.aidl,com.suntek.mway.rcs.client.api,izat.xt.srv,javax.obex,org.apache.http.legacy,org.codeaurora.btmultisimlibrary,org.codeaurora.rcscommon,org.simalliance.openmobileapi
Features = android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,blackberry.software.nfc,com.nxp.mifare
Locales = af,af_ZA,am,am_ET,ar,ar_AE,ar_BH,ar_DZ,ar_EG,ar_QA,ar_SA,ar_XB,ast,az_AZ,be_BY,bg,bg_BG,bn_BD,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IE,en_IN,en_NZ,en_SG,en_US,en_XA,en_ZA,es,es_ES,es_MX,es_US,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ky_KG,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,or_IN,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951440
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 311480
SimOperator = 311480
Roaming = mobile-notroaming
Client = android-google
TimeZone = America/Los_Angeles
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering

View file

@ -0,0 +1,33 @@
UserReadableName = HTC Desire (api10)
Build.HARDWARE = bravo
Build.RADIO = unknown
Build.BOOTLOADER = 0.93.0001
Build.FINGERPRINT = htc_wwe/htc_bravo/bravo:2.3.3/GRI40/96875.1:user/release-keys
Build.BRAND = htc_wwe
Build.DEVICE = bravo
Build.VERSION.SDK_INT = 10
Build.MODEL = HTC Desire
Build.MANUFACTURER = HTC
Build.PRODUCT = htc_bravo
TouchScreen = 3
Keyboard = 1
Navigation = 3
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 131072
GSF.version = 10548448
Vending.version = 80798000
Screen.Density = 240
Screen.Width = 480
Screen.Height = 800
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.test.runner,com.android.future.usb.accessory,com.android.location.provider,javax.obex
Features = android.hardware.bluetooth,android.hardware.camera,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.telephony,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.usb.accessory,android.hardware.wifi,android.software.live_wallpaper,android.software.sip,android.software.sip.voip,com.tmobile.software.themes
Locales = ar,ar_EG,ar_IL,bg,bg_BG,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IE,en_IN,en_NZ,en_SG,en_US,en_ZA,es,es_ES,fa,fa_IR,fi,fi_FI,fr,fr_BE,fr_CA,fr_CH,fr_FR,he_IL,hi_IN,hr,hr_HR,hu,hu_HU,id_ID,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka,ka_GE,ko,ko_KR,lt,lt_LT,lv,lv_LV,nb,nb_NO,nl,nl_BE,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,sk,sk_SK,sl,sl_SI,sr,sr_RS,sv,sv_SE,th,th_TH,tl,tl_PH,tr,tr_TR,uk,uk_UA,ur_PK,vi,vi_VN,zh,zh_CN,zh_TW
CellOperator = 25001
SimOperator = 25001
Client = android-google
GL.Extensions = GL_AMD_compressed_3DC_texture,GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_memory_monitor,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering
TimeZone = Europe/Kaliningrad
Roaming = mobile-notroaming

View file

@ -0,0 +1,36 @@
UserReadableName = Nexus 5X (api26)
Build.HARDWARE = bullhead
Build.RADIO = unknown
Build.BOOTLOADER = BHZ21d
Build.FINGERPRINT = google/bullhead/bullhead:8.0.0/OPR6.170623.023/4409485:user/release-keys
Build.BRAND = google
Build.DEVICE = bullhead
Build.VERSION.SDK_INT = 26
Build.MODEL = Nexus 5X
Build.MANUFACTURER = LGE
Build.PRODUCT = bullhead
Build.ID = OPR6.170623.023
Build.VERSION.RELEASE = 8.0.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 420
Screen.Width = 1080
Screen.Height = 1794
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.camera.experimental2016,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.qualcomm.qcrilhook,com.qualcomm.qti.rcsservice,com.quicinc.cneapiclient,javax.obex,org.apache.http.legacy
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.audio.pro,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.ethernet,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.hifi_sensors,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.sip,android.software.sip.voip,android.software.verified_boot,android.software.voice_recognizers,android.software.webview,com.google.android.apps.dialer.SUPPORTED,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,com.nxp.mifare
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,az,bg,bg_BG,bn,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_AU,en_GB,en_IN,en_US,en_XA,es,es_ES,es_US,et,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_FR,gl,gu,hi,hi_IN,hr,hu,hu_HU,hy,in,in_ID,is,it,it_IT,iw,iw_IL,ja,ja_JP,ka,kk,km,kn,ko,ko_KR,ky,lo,lt,lt_LT,lv,lv_LV,mk,ml,mn,mr,ms,ms_MY,my,nb,nb_NO,ne,nl,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si,sk,sk_SK,sl,sl_SI,sq,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta,te,th,th_TH,tr,tr_TR,uk,uk_UA,ur,uz,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951440
Vending.version = 80844000
Vending.versionString = 8.4.40.V-all [0] [PR] 176415973
CellOperator = 310260
SimOperator = 310260
TimeZone = America/New_York
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_texture_barrier,GL_ARB_vertex_buffer_object,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_multisampled_render_to_texture2,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_shader_framebuffer_fetch_noncoherent,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,33 @@
UserReadableName = Acer Aspire One Cloudbook x86_64 (api23)
Build.FINGERPRINT = Android-x86/android_x86_64/x86_64:6.0.1/MOB30M/cwhuang06080007:userdebug/test-keys
Build.HARDWARE = android_x86_64
Build.BRAND = Android-x86
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = x86_64
Build.VERSION.SDK_INT = 23
Build.MODEL = Aspire one 1-431
Build.MANUFACTURER = Acer
Build.PRODUCT = android_x86_64
TouchScreen = 1
Keyboard = 1
Navigation = 1
ScreenLayout = 4
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 1366
Screen.Height = 720
Platforms = x86_64,x86,arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = com.google.android.media.effects,com.android.location.provider,com.android.future.usb.accessory,javax.obex,com.google.android.gms,android.test.runner,org.apache.http.legacy,com.android.media.remotedisplay,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SS,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,ca_FR,ca_IT,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,da_GL,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dsb,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AI,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CC,en_CK,en_CM,en_CX,en_DG,en_DM,en_ER,en_FJ,en_FK,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_IO,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MO,en_MP,en_MS,en_MT,en_MU,en_MW,en_MY,en_NA,en_NF,en_NG,en_NR,en_NU,en_NZ,en_PG,en_PH,en_PK,en_PN,en_PR,en_PW,en_RW,en_SB,en_SC,en_SD,en_SG,en_SH,en_SL,en_SS,en_SX,en_SZ,en_TC,en_TK,en_TO,en_TT,en_TV,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_CM,ff_GN,ff_MR,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_PM,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_WF,fr_YT,fur,fy,fy_NL,ga,ga_IE,gd,gd_GB,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_IM,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hsb,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kkj,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,ksh,kw,kw_GB,ky,lag,lb,lb_LU,lg,lg_UG,lkt,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nb_SJ,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_BQ,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nnh,nus,nyn,om,om_ET,om_KE,or,or_IN,os,os_GE,os_RU,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,qu,qu_BO,qu_EC,qu_PE,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,sah,saq,sbp,se,se_FI,se_NO,se_SE,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,smn,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sq_XK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_CD,sw_KE,sw_TZ,sw_UG,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,ug,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,wae,xog,yav,ji,yo,yo_BJ,yo_NG,zgh,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Wileyfox Swift (api25)
Build.HARDWARE = qcom
Build.RADIO = unknown
Build.BOOTLOADER = crackling-13-ge86e772
Build.FINGERPRINT = Wileyfox/Swift/crackling:7.1.1/N6F26Y/5506d7d322:user/release-keys
Build.BRAND = Wileyfox
Build.DEVICE = crackling
Build.VERSION.SDK_INT = 25
Build.MODEL = Wileyfox Swift
Build.MANUFACTURER = Wileyfox
Build.PRODUCT = Swift
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196608
GSF.version = 11055446
Vending.version = 80798000
Screen.Density = 256
Screen.Width = 720
Screen.Height = 1203
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.dsi.ant.antradio_library,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.qualcomm.qcnvitems,com.qualcomm.qcrilhook,javax.obex,org.apache.http.legacy,org.cyanogenmod.hardware,org.cyanogenmod.platform
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.cyanogenmod.android,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,org.cyanogenmod.appsuggest,org.cyanogenmod.audio,org.cyanogenmod.hardware,org.cyanogenmod.livedisplay,org.cyanogenmod.livelockscreen,org.cyanogenmod.partner,org.cyanogenmod.performance,org.cyanogenmod.profiles,org.cyanogenmod.statusbar,org.cyanogenmod.telephony,org.cyanogenmod.theme,org.cyanogenmod.theme.v1,org.cyanogenmod.weather
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast_ES,az_AZ,be,be_BY,bg,bg_BG,bn_BD,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et_EE,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ku,ky_KG,lb,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
CellOperator = 23420
SimOperator = 23420
Roaming = mobile-notroaming
Client = android-google
TimeZone = Europe/London
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_multisampled_render_to_texture,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_alpha_test,GL_QCOM_binning_control,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering

View file

@ -0,0 +1,33 @@
UserReadableName = ChuWi V88S (api19)
Build.FINGERPRINT = rockchip/rk3188/rk3188:4.4.2/KOT49H/eng.bob.20140416.174825:eng/test-keys
Build.HARDWARE = rk30board
Build.BRAND = ChuWi
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = rk3188
Build.VERSION.SDK_INT = 19
Build.MODEL = CW-V88S
Build.MANUFACTURER = rockchip
Build.PRODUCT = rk3188
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 4
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 1024
Screen.Height = 720
Platforms = armeabi-v7a,armeabi
SharedLibraries = javax.obex,com.android.future.usb.accessory,com.google.android.media.effects,android.test.runner,com.google.widevine.software.drm,com.google.android.maps,com.android.location.provider,com.android.media.remotedisplay
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CM,en_DM,en_FJ,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MP,en_MT,en_MU,en_MW,en_NA,en_NG,en_NZ,en_PG,en_PH,en_PK,en_PR,en_PW,en_SB,en_SC,en_SG,en_SL,en_SS,en_SZ,en_TC,en_TO,en_TT,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_GB,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,lag,lg,lg_UG,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_NG,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Asus EeePad hwkb (api18)
Build.HARDWARE = cardhu
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = asus/WW_epad/EeePad:4.1.1/JRO03C/WW_epad-10.4.2.18-20121122:user/release-keys
Build.BRAND = Asus
Build.DEVICE = tf300t
Build.VERSION.SDK_INT = 18
Build.MODEL = TF300T
Build.MANUFACTURER = Asus
Build.PRODUCT = EeePad
TouchScreen = 3
Keyboard = 2
Navigation = 1
ScreenLayout = 4
HasHardKeyboard = true
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 1280
Screen.Height = 752
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.test.runner,javax.obex,com.android.future.usb.accessory,com.android.location.provider,com.cyanogenmod.asusdec,org.cyanogenmod.hardware
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,am,am_ET,ar,ar_AE,ar_BH,ar_DZ,ar_EG,ar_IQ,ar_JO,ar_KW,ar_LB,ar_LY,ar_MA,ar_OM,ar_QA,ar_SA,ar_SD,ar_SY,ar_TN,ar_YE,be,be_BY,bg,bg_BG,bn,bn_BD,bn_IN,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,el,el_GR,en,en_AG,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CM,en_DM,en_FJ,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MP,en_MT,en_MU,en_MW,en_NA,en_NG,en_NH,en_NZ,en_PG,en_PH,en_PK,en_PR,en_PW,en_RH,en_SB,en_SC,en_SG,en_SL,en_SS,en_SZ,en_TC,en_TO,en_TT,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EC,es_ES,es_GT,es_HN,es_MX,es_NI,es_PA,es_PE,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,fa,fa_AF,fa_IR,fi,fi_FI,fil,fr,fr_BE,fr_CA,fr_CH,fr_FR,fr_LU,fr_MC,iw,iw_IL,hi,hi_IN,hr,hr_HR,hu,hu_HU,in,in_ID,is,is_IS,it,it_CH,it_IT,ja,ja_JP,ko,ko_KP,ko_KR,lt,lt_LT,lv,lv_LV,mr,mr_IN,ms,ms_BN,ms_MY,nb,nb_NO,nl,nl_BE,nl_NL,pl,pl_PL,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,ro,ro_RO,ru,ru_RU,ru_UA,sk,sk_SK,sl,sl_SI,sr,sr_BA,sr_CS,sr_ME,sr_RS,sr_YU,sv,sv_FI,sv_SE,sw,sw_KE,sw_TZ,ta,ta_IN,ta_LK,ta_MY,ta_SG,th,th_TH,tl,tl_PH,tr,tr_TR,uk,uk_UA,vi,vi_VN,zh,zh_CN,zh_HK,zh_MO,zh_SG,zh_TW,zu,zu_ZA
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
CellOperator = 310260
GSF.version = 10548448
Vending.version = 80798000
SimOperator = 310260
Client = android-google

View file

@ -0,0 +1,35 @@
UserReadableName = Nvidia Shield TV Pro 2015 (api24)
Build.HARDWARE = foster_e_hdd
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = NVIDIA/foster_e_hdd/foster:7.0/NRD90M/1915764_910.7870:user/release-keys
Build.BRAND = NVIDIA
Build.DEVICE = foster
Build.VERSION.SDK_INT = 24
Build.MODEL = SHIELD Android TV
Build.MANUFACTURER = NVIDIA
Build.PRODUCT = foster_e_hdd
TouchScreen = 1
Keyboard = 2
Navigation = 2
ScreenLayout = 3
HasHardKeyboard = true
HasFiveWayNavigation = true
GL.Version = 196610
Screen.Density = 320
Screen.Width = 1920
Screen.Height = 1080
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.media.tv.remoteprovider,com.android.mediadrm.signer,com.google.android.gms,com.google.widevine.software.drm,com.nvidia.graphics,javax.obex,org.apache.http.legacy
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.ethernet,android.hardware.hdmi.cec,android.hardware.location,android.hardware.location.network,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.type.television,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.backup,android.software.leanback,android.software.leanback_only,android.software.live_tv,android.software.midi,android.software.picture_in_picture,android.software.voice_recognizers,android.software.webview,com.google.android.tv.installed,com.nvidia.feature.app.plex.mediaserver,com.nvidia.feature.app.plex.smbserver,com.nvidia.feature.app.vudu,com.nvidia.feature.built_in_controller,com.nvidia.feature.opengl4,com.nvidia.feature.shield,com.nvidia.feature.usb.tvtuners,com.nvidia.nvsi.gpu.class_001,com.nvidia.nvsi.gpu.class_002,com.nvidia.nvsi.gpu.class_003,com.nvidia.nvsi.gpu.class_004,com.nvidia.nvsi.gpu.class_005,com.nvidia.nvsi.gpu.class_006,com.nvidia.nvsi.gpu.class_007,com.nvidia.nvsi.gpu.class_008,com.nvidia.nvsi.gpu.class_009,com.nvidia.nvsi.gpu.family_001,com.nvidia.nvsi.gpu.family_002,com.nvidia.nvsi.gpu.family_003,com.nvidia.nvsi.product.tablet,com.nvidia.nvsi.version.v2,nrdp.modelgroup,nvidia.feature.controller_settings_ui,nvidia.feature.miracast_settings_ui
Locales = ar,ar_EG,bg,bg_BG,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_GB,en_US,es,es_ES,es_US,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_FR,hr,hr_HR,hu,hu_HU,in,in_ID,it,it_IT,iw,iw_IL,ja,ja_JP,ko,ko_KR,lt,lt_LT,lv,lv_LV,nb,nb_NO,nl,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,sk,sk_SK,sl,sl_SI,sr,sr_Latn,sr_RS,sv,sv_SE,th,th_TH,tr,tr_TR,uk,uk_UA,vi,vi_VN,zh,zh_CN,zh_TW
GSF.version = 11509846
Vending.version = 80802868
CellOperator =
SimOperator =
Roaming = mobile-notroaming
Client = android-google
TimeZone = Asia/Bangkok
GL.Extensions = GL_ANDROID_extension_pack_es31a,GL_EXT_base_instance,GL_EXT_blend_func_extended,GL_EXT_blend_minmax,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_draw_elements_base_vertex,GL_EXT_draw_transform_feedback,GL_EXT_float_blend,GL_EXT_frag_depth,GL_EXT_geometry_point_size,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_map_buffer_range,GL_EXT_multi_draw_indirect,GL_EXT_multisample_compatibility,GL_EXT_occlusion_query_boolean,GL_EXT_polygon_offset_clamp,GL_EXT_post_depth_coverage,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_raster_multisample,GL_EXT_render_snorm,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_separate_shader_objects,GL_EXT_shader_group_vote,GL_EXT_shader_implicit_conversions,GL_EXT_shader_integer_mix,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_shader_texture_lod,GL_EXT_shadow_samplers,GL_EXT_sparse_texture,GL_EXT_sparse_texture2,GL_EXT_tessellation_point_size,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_compression_dxt1,GL_EXT_texture_compression_s3tc,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_filter_minmax,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_rg,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_storage,GL_EXT_texture_view,GL_EXT_unpack_subimage,GL_EXT_window_rectangles,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_context_flush_control,GL_KHR_debug,GL_KHR_no_error,GL_KHR_robust_buffer_access_behavior,GL_KHR_robustness,GL_KHR_texture_compression_astc_ldr,GL_KHR_texture_compression_astc_sliced_3d,GL_NV_EGL_stream_consumer_external,GL_NV_bgr,GL_NV_bindless_texture,GL_NV_blend_equation_advanced,GL_NV_blend_equation_advanced_coherent,GL_NV_conditional_render,GL_NV_conservative_raster,GL_NV_copy_buffer,GL_NV_copy_image,GL_NV_draw_buffers,GL_NV_draw_instanced,GL_NV_draw_texture,GL_NV_draw_vulkan_image,GL_NV_explicit_attrib_location,GL_NV_fbo_color_attachments,GL_NV_fill_rectangle,GL_NV_fragment_coverage_to_color,GL_NV_fragment_shader_interlock,GL_NV_framebuffer_blit,GL_NV_framebuffer_mixed_samples,GL_NV_framebuffer_multisample,GL_NV_generate_mipmap_sRGB,GL_NV_geometry_shader_passthrough,GL_NV_gpu_shader5,GL_NV_image_formats,GL_NV_instanced_arrays,GL_NV_internalformat_sample_query,GL_NV_non_square_matrices,GL_NV_occlusion_query_samples,GL_NV_pack_subimage,GL_NV_packed_float,GL_NV_packed_float_linear,GL_NV_path_rendering,GL_NV_path_rendering_shared_edge,GL_NV_pixel_buffer_object,GL_NV_polygon_mode,GL_NV_read_buffer,GL_NV_read_depth,GL_NV_read_depth_stencil,GL_NV_read_stencil,GL_NV_sRGB_formats,GL_NV_sample_locations,GL_NV_sample_mask_override_coverage,GL_NV_secure_context,GL_NV_shader_atomic_fp16_vector,GL_NV_shader_noperspective_interpolation,GL_NV_shadow_samplers_array,GL_NV_shadow_samplers_cube,GL_NV_texture_array,GL_NV_texture_barrier,GL_NV_texture_border_clamp,GL_NV_texture_compression_latc,GL_NV_texture_compression_s3tc,GL_NV_texture_compression_s3tc_update,GL_NV_timer_query,GL_NV_viewport_array,GL_NV_viewport_array2,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_copy_image,GL_OES_depth24,GL_OES_depth32,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_buffers_indexed,GL_OES_draw_elements_base_vertex,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_extended_matrix_palette,GL_OES_fbo_render_mipmap,GL_OES_framebuffer_object,GL_OES_geometry_point_size,GL_OES_geometry_shader,GL_OES_get_program_binary,GL_OES_gpu_shader5,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_primitive_bounding_box,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_io_blocks,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil8,GL_OES_surfaceless_context,GL_OES_tessellation_point_size,GL_OES_tessellation_shader,GL_OES_texture_border_clamp,GL_OES_texture_buffer,GL_OES_texture_cube_map,GL_OES_texture_cube_map_array,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_texture_view,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_viewport_array

View file

@ -0,0 +1,36 @@
UserReadableName = Fairphone FP2 (api23)
Build.HARDWARE = qcom
Build.RADIO = 4437.1-FP2-0-07
Build.BOOTLOADER = unknown
Build.FINGERPRINT = Fairphone/FP2/FP2:6.0.1/FP2-gms-17.12.1/FP2-gms-17.12.1:user/release-keys
Build.BRAND = Fairphone
Build.DEVICE = FP2
Build.VERSION.SDK_INT = 23
Build.MODEL = FP2
Build.MANUFACTURER = Fairphone
Build.PRODUCT = FP2
Build.ID = FP2-gms-17.12.1
Build.VERSION.RELEASE = 6.0.1
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196608
Screen.Density = 480
Screen.Width = 1080
Screen.Height = 1776
Platforms = armeabi-v7a,armeabi
SharedLibraries = ConnectivityExt,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.fairphone.hiccup,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.qti.dpmapi,com.qti.dpmframework,com.qti.ims.connectionmanager.imscmlibrary,com.qti.location.sdk,com.qualcomm.qcnvitems,com.qualcomm.qcrilhook,com.quicinc.cne,com.quicinc.cneapiclient,javax.obex,org.apache.http.legacy,org.codeaurora.btmultisimlibrary
Features = android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,az_AZ,bg,bg_BG,bn_BD,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,es,es_ES,es_US,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ky_KG,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,rm,rm_CH,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951438
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 26201
SimOperator = 26201
Client = android-google
TimeZone = Europe/Berlin
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_multisampled_render_to_texture,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_alpha_test,GL_QCOM_binning_control,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering
Roaming = mobile-notroaming

View file

@ -0,0 +1,33 @@
UserReadableName = Explay Fresh (api19)
Build.FINGERPRINT = Explay/Fresh/Fresh:4.4.2/KOT49H/1417662691:user/release-keys
Build.HARDWARE = mt6582
Build.BRAND = Explay
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = Fresh
Build.VERSION.SDK_INT = 19
Build.MODEL = Fresh
Build.MANUFACTURER = Explay
Build.PRODUCT = Fresh
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 320
Screen.Width = 720
Screen.Height = 1280
Platforms = armeabi-v7a,armeabi
SharedLibraries = javax.obex,com.google.android.media.effects,com.android.future.usb.accessory,android.test.runner,com.google.widevine.software.drm,com.google.android.maps,com.android.location.provider,com.google.android.gms,com.android.media.remotedisplay,com.mediatek.effect
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CM,en_DM,en_FJ,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MP,en_MT,en_MU,en_MW,en_NA,en_NG,en_NZ,en_PG,en_PH,en_PK,en_PR,en_PW,en_SB,en_SC,en_SG,en_SL,en_SS,en_SZ,en_TC,en_TO,en_TT,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_GB,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,lag,lg,lg_UG,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_NG,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Fly FS454 Nimbus 8 (api23)
Build.FINGERPRINT = DOOGEE/cm_x5/x5:6.0.1/MOB30Z/dc78d46298:userdebug/test-keys
Build.HARDWARE = mt6580
Build.BRAND = Fly
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = FS_454
Build.VERSION.SDK_INT = 23
Build.MODEL = FS_454
Build.MANUFACTURER = Blackview
Build.PRODUCT = cm_A5
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 240
Screen.Width = 480
Screen.Height = 854
Platforms = armeabi-v7a,armeabi
SharedLibraries = org.cyanogenmod.platform,com.android.location.provider,com.android.future.usb.accessory,javax.obex,org.cyanogenmod.hardware,javax.btobex,android.test.runner,com.android.nfc_extras,com.android.media.remotedisplay,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SS,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,ast,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,ca_FR,ca_IT,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,da_GL,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dsb,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AI,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CC,en_CK,en_CM,en_CX,en_DG,en_DM,en_ER,en_FJ,en_FK,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_IO,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MO,en_MP,en_MS,en_MT,en_MU,en_MW,en_MY,en_NA,en_NF,en_NG,en_NR,en_NU,en_NZ,en_PG,en_PH,en_PK,en_PN,en_PR,en_PW,en_RW,en_SB,en_SC,en_SD,en_SG,en_SH,en_SL,en_SS,en_SX,en_SZ,en_TC,en_TK,en_TO,en_TT,en_TV,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_CM,ff_GN,ff_MR,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_PM,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_WF,fr_YT,fur,fy,fy_NL,ga,ga_IE,gd,gd_GB,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_IM,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hsb,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kkj,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,ksh,kw,kw_GB,ky,lag,lb,lb_LU,lg,lg_UG,lkt,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nb_SJ,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_BQ,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nnh,nus,nyn,om,om_ET,om_KE,or,or_IN,os,os_GE,os_RU,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,qu,qu_BO,qu_EC,qu_PE,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,sah,saq,sbp,se,se_FI,se_NO,se_SE,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,smn,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sq_XK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_CD,sw_KE,sw_TZ,sw_UG,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,ug,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,wae,xog,yav,ji,yo,yo_BJ,yo_NG,zgh,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Xiaomi Mi5 (api23)
Build.HARDWARE = qcom
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = Xiaomi/gemini/gemini:6.0.1/MXB48T/6.9.29:user/release-keys
Build.BRAND = Xiaomi
Build.DEVICE = gemini
Build.VERSION.SDK_INT = 23
Build.MODEL = MI 5
Build.MANUFACTURER = Xiaomi
Build.PRODUCT = gemini
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196609
GSF.version = 11055448
Vending.version = 80798000
Screen.Density = 480
Screen.Width = 1080
Screen.Height = 1920
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = org.cyanogenmod.platform,com.qualcomm.qcnvitems,com.google.widevine.software.drm,com.qti.dpmapi,com.google.android.media.effects,com.qti.location.sdk,com.android.location.provider,com.qualcomm.qti.QtiTelephonyServicelibrary,com.quicinc.cneapiclient,com.nxp.nfc.nq,com.android.future.usb.accessory,com.qti.dpmframework,javax.obex,com.google.android.gms,org.cyanogenmod.hardware,com.dsi.ant.antradio_library,com.qualcomm.qcrilhook,android.test.runner,com.google.android.dialer.support,com.google.android.maps,ConnectivityExt,org.apache.http.legacy,com.android.nfc_extras,com.android.media.remotedisplay,com.quicinc.cne,com.android.mediadrm.signer,com.qti.snapdragon.sdk.display,com.qualcomm.embmslibrary
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast_ES,az_AZ,bg,bg_BG,bn_BD,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et_EE,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ku,ku_IQ,ky_KG,lb,lb_LU,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,rm,rm_CH,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
CellOperator = 25020
SimOperator = 25020
Client = android-google
TimeZone = Europe/Moscow
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming

View file

@ -0,0 +1,33 @@
UserReadableName = Samsung Galaxy Tab 10.1 (api25)
Build.FINGERPRINT = samsung/GT-P7510/GT-P7510:4.0.4/IMM76D/UELPL:user/release-keys
Build.HARDWARE = p3
Build.BRAND = Samsung
Build.RADIO = unknown
Build.BOOTLOADER = P7500XXLA1
Build.DEVICE = p4wifi
Build.VERSION.SDK_INT = 25
Build.MODEL = GT-P7510
Build.MANUFACTURER = Samsung
Build.PRODUCT = GT-P7510
TouchScreen = 3
Keyboard = 2
Navigation = 1
ScreenLayout = 4
HasHardKeyboard = true
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 800
Screen.Height = 1232
Platforms = armeabi-v7a,armeabi
SharedLibraries = com.android.location.provider,com.android.future.usb.accessory,android.ext.shared,javax.obex,android.ext.services,android.test.runner,org.apache.http.legacy,com.android.media.remotedisplay,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = hi,so_ET,ro_MD,in,sn_ZW,sw_UG,es_BO,dyo,ru_KZ,en_JE,zu,en_JM,pt_BR,en_MS,ar_SD,en_ZM,es_PA,en_GG,es_SV,en_SE,es,rof,fr_SC,fr_GA,en_CM,ta,en_SX,fr_MC,fy,to,fr_RW,en_SD,qu,en_KE,rw_RW,gv_IM,sv_FI,cgg,pt_GW,fr_CF,sv_SE,dje,en_SS,ar_DZ,si,es_UY,ar_SA,tr_TR,dua,fr_BL,nb_SJ,fr_CA,ff,es_PE,om,en_FK,cs_CZ,zu_ZA,sl_SI,es_NI,en_GY,fr_ML,fr_MF,nmg,fo_DK,en_LR,el_CY,nus,mt,en_NU,en_UG,ta_MY,pt_ST,ha_NE,ca_FR,ru,es_IC,ar_KW,it_IT,en_GI,ji,hr,ka_GE,pt_PT,nl,en_TV,ru_RU,pa,mgh,es_ES,km,ee_TG,ca_AD,twq,ar_YE,eo,ne,as_IN,es_GT,vi_VN,de_CH,ig_NG,or_IN,mua,pl_PL,lv,fr_DZ,lb,hr_HR,haw,sw_KE,shi,mn,om_ET,fr_LU,es_PR,lo_LA,es_HN,kl_GL,bo_IN,et_EE,en_ZA,fr_TG,br_FR,yo_NG,tr_CY,sr,bem,fr_PF,ti_ET,hu,mk,de_LI,so_SO,nb_NO,luo,en_ZW,sk_SK,ksh,sk,nyn,fa,zgh,fr_HT,en_CY,uz,rm,en_MH,sn,to_TO,te,sq_MK,ha_GH,ta_IN,en_MW,da,en_BS,ms_SG,ps_AF,lt_LT,br,it_CH,fr_NE,en_LC,bm_ML,kk_KZ,qu_BO,tr,nl_SR,ln,sw,luy,en,fo,en_GD,asa,lag,fr_GQ,fr,fr_GN,dz,ar_SO,dz_BT,ca,es_CL,rn_BI,sq_XK,en_CC,en_SI,el_GR,yo_BJ,vi,my,de_LU,mk_MK,ak_GH,fr_GF,en_PK,my_MM,fr_CG,cy,es_PH,en_IN,ksf,en_LS,fy_NL,ce,ff_MR,af_ZA,fa_IR,bn_BD,vun,ks,bg,sq_AL,fr_BF,rw,af_NA,dsb,qu_PE,en_DM,ar_TN,nd,en_UM,en_FM,en_NR,ro,uk,se_SE,ln_CF,pt_MZ,am_ET,kl,pt,ta_SG,th,se_NO,ff_GN,ky,en_NG,ur_PK,af,en_DE,so,sah,fr_SN,ar_EH,vai,gu_IN,en_WS,es_EA,ms,fr_MG,th_TH,fr_RE,ru_BY,nl_SX,lv_LV,ki_KE,fr_CI,en_BB,ja,kde,am,nl_BQ,bo_CN,ga_IE,sl,bn_IN,mer,en_SZ,fr_CM,dav,ti_ER,da_GL,kw_GB,ga,mfe,it,it_SM,fo_FO,en_BW,en_SG,en_KN,cs,chr,km_KH,en_SC,mr_IN,el,en_PN,mg_MG,ru_KG,en_PW,en_SB,fur,en_BZ,ka,bm,de_DE,te_IN,ml_IN,hy,sw_TZ,kw,kn,ru_UA,ln_CD,et,fr_CH,en_DG,bn,ps,qu_EC,lt,ii_CN,en_FJ,eu,en_TC,ksb,pt_CV,gl_ES,en_VU,en_MP,ee,ar_PS,wae,nl_BE,xog,is,fr_PM,saq,iw_IL,om_KE,en_FI,nn_NO,pt_MO,mgo,en_US,fr_BE,ar,gd,kok,de,kln,kam,mt_MT,be,ce_RU,en_BE,fr_SY,es_MX,sv_AX,agq,sq,hr_BA,tzm,de_AT,os_RU,es_DO,en_BI,mg,ar_SY,yav,ks_IN,ro_RO,lu_CD,en_PG,jgo,is_IS,es_CU,ff_CM,en_VG,az,en_GU,fr_MR,ug_CN,in_ID,en_AU,nl_CW,ru_MD,naq,gd_GB,en_CK,ml,ja_JP,sw_CD,uk_UA,ta_LK,pl,es_VE,da_DK,be_BY,fa_AF,pt_AO,fr_MQ,bs,mas,ar_QA,en_IO,en_SH,en_NL,es_GQ,lg,hu_HU,fr_BJ,en_MO,brx,fr_WF,ar_OM,ca_ES,en_GB,ug,ha,en_NA,en_NF,sv,as,ig,en_KI,en_CX,en_TO,sbp,bo,ne_NP,bg_BG,jmc,en_GM,ar_JO,en_HK,ar_IQ,fr_DJ,fr_GP,lkt,kn_IN,ha_NG,en_IL,en_KY,en_TT,fil,fr_BI,sg,hsb,ca_IT,teo,fr_TN,en_AS,kk,guz,fr_VU,mr,es_EC,en_TZ,ko_KR,ar_MA,ar_LB,fr_CD,en_DK,es_CO,ur_IN,rwk,es_PY,ms_MY,cy_GB,en_PH,seh,ar_BH,en_TK,en_RW,eu_ES,ki,fr_TD,smn,ses,so_KE,es_CR,en_MY,en_AI,lo,en_MG,en_PR,gsw,en_VI,en_BM,se,en_IE,en_SL,khq,en_CH,ee_GH,ko,lb_LU,en_AT,nn,ar_ER,lrc,ar_TD,ar_MR,fr_YT,en_GH,en_MU,si_LK,gv,ky_KG,nl_NL,rm_CH,ar_IL,ti,iw,hy_AM,se_FI,pt_TL,en_AG,or,bez,ff_SN,en_IM,fr_MA,en_MT,nd_ZW,fi_FI,en_NZ,de_BE,fr_KM,bas,ak,nl_AW,ar_AE,kab,ar_EG,ur,es_AR,ar_DJ,ar_KM,kkj,fi,lu,fr_FR,ebu,os,ne_IN,ln_AO,gu,zh,os_GE,sg_CF,mn_MN,gl,lg_UG,ko_KP,rn,mzn,es_US,hi_IN,ar_LY,ms_BN,fr_NC,so_DJ,ii,en_ER,ar_SS,kea,ln_CG,fr_MU,nb,yo,nnh,en_VC,ewo,en_CA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Samsung Galaxy Ace (api10)
Build.FINGERPRINT = samsung/GT-S5830i/GT-S5830i:2.3.6/GINGERBREAD/XXKL1:user/release-keys
Build.HARDWARE = bcm21553
Build.BRAND = samsung
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = GT-S5830i
Build.VERSION.SDK_INT = 10
Build.MODEL = GT-S5830i
Build.MANUFACTURER = samsung
Build.PRODUCT = GT-S5830i
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 320
Screen.Height = 480
Platforms = armeabi,unknown
SharedLibraries = javax.obex,com.samsung.android.sec_platform_library,android.test.runner,touchwiz,seccamera,com.google.android.maps,com.android.location.provider,sec_feature,com.samsung.device
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = bg,bg_BG,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,el,el_GR,en,en_AU,en_BE,en_BW,en_BZ,en_CA,en_GB,en_HK,en_IE,en_IN,en_JM,en_MH,en_MT,en_NA,en_NZ,en_PH,en_PK,en_SG,en_TT,en_US,en_VI,en_ZA,en_ZW,es,es_ES,es_US,et,fi,fil,fr,fr_BE,fr_CA,fr_CH,fr_FR,fr_LU,fr_MC,ga,hi,hi_IN,hr,hu,in,is,it,it_CH,it_IT,ja,ja_JP,kk,ko,ko_KR,lt,lt_LT,lv,lv_LV,ms,nb,nb_NO,nl,nl_BE,nl_NL,no,pl,pl_PL,pt,pt_BR,pt_PT,ro,ru,ru_RU,sk,sl,sl_SI,sr,sv,sv_SE,th,tr,tr_TR,uk,vi,vi_VN,zh,zh_CN,zh_TW
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = Nexus 5 (api26)
Build.HARDWARE = hammerhead
Build.RADIO = unknown
Build.BOOTLOADER = HHZ20h
Build.FINGERPRINT = google/hammerhead/hammerhead:6.0.1/M4B30Z/3437181:user/release-keys
Build.BRAND = google
Build.DEVICE = hammerhead
Build.VERSION.SDK_INT = 26
Build.MODEL = Nexus 5
Build.MANUFACTURER = LGE
Build.PRODUCT = hammerhead
Build.ID = OPR3.170623.013
Build.VERSION.RELEASE = 8.0.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196608
Screen.Density = 480
Screen.Width = 1080
Screen.Height = 1776
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.lge.lgsvcitems,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.qualcomm.qcrilhook,javax.obex,org.apache.http.legacy,org.lineageos.hardware,org.lineageos.platform
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.wifi,android.hardware.wifi.direct,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.google.android.apps.dialer.SUPPORTED,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,org.lineageos.android,org.lineageos.audio,org.lineageos.hardware,org.lineageos.livedisplay,org.lineageos.performance,org.lineageos.profiles,org.lineageos.statusbar,org.lineageos.telephony,org.lineageos.weather
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,az,az_AZ,be,be_BY,bg,bg_BG,bn,bs,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl,gl_ES,gu,gu_IN,hi,hi_IN,hr,hu,hu_HU,hy,in,in_ID,is,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka,kk,km,kn,kn_IN,ko,ko_KR,ky,lo,lt,lt_LT,lv,lv_LV,mk,ml,ml_IN,mn,mr,mr_IN,ms,ms_MY,my,nb,nb_NO,ne,nl,nl_BE,nl_NL,pa,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si,sk,sk_SK,sl,sl_SI,sq,sq_AL,sr,sr_Latn,sr_RS,sv,sv_SE,sw,sw_TZ,ta,ta_IN,te,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur,uz,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951438
Vending.version = 80853900
Vending.versionString = 8.5.39.W-all [0] [PR] 178322352
CellOperator = 22003
SimOperator = 22003
TimeZone = Europe/Belgrade
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_multisampled_render_to_texture,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_alpha_test,GL_QCOM_binning_control,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,33 @@
UserReadableName = Samsung Galaxy S7 Edge (api24)
Build.FINGERPRINT = samsung/hero2ltexx/hero2lte:7.0/NRD90M/G935FXXU1DQAS:user/release-keys
Build.HARDWARE = samsungexynos8890
Build.BRAND = samsung
Build.RADIO = unknown
Build.BOOTLOADER = G935FXXU1DQAS
Build.DEVICE = hero2lte
Build.VERSION.SDK_INT = 24
Build.MODEL = SM-G935F
Build.MANUFACTURER = samsung
Build.PRODUCT = hero2ltexx
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 560
Screen.Width = 1440
Screen.Height = 2560
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = smatlib,sec_platform_library,com.samsung.device,SemAudioThumbnail,com.sec.esecomm,stayrotation,com.sec.android.mdm.gearpolicymanager,vsimmanager,sechardware,com.google.android.media.effects,com.samsung.android.knox.knoxsdk,com.sec.android.app.multiwindow,seccamera,com.sec.dcm,com.gsma.services.nfc,semcamera,com.samsung.bbc,touchwiz,com.android.location.provider,secimaging,secvision,semextendedformat,sec_feature,com.sec.android.mdm,com.samsung.android.nfc.mpos,com.android.future.usb.accessory,sws,saiv,android.ext.shared,javax.obex,secmediarecorder,com.google.android.gms,android.ext.services,simageis,seclvbmanager,com.sec.android.app.minimode,device_api,imsmanager,scamera_sdk_util,com.publicnfc,com.dsi.ant.antradio_library,svemanager,org.simalliance.openmobileapi,EpdgManager,android.test.runner,sercsapi,com.google.android.maps,com.sec.android.visualeffect,com.broadcom.nfc,org.apache.http.legacy,com.android.nfc_extras,com.android.media.remotedisplay,allshare,com.sec.smartcard.auth,secimshttpclient,com.android.mediadrm.signer,libvtmanagerjar,videoeditor_sdk,scrollpause,rcsopenapi
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = hi,so_ET,ro_MD,in,sn_ZW,sw_UG,es_BO,dyo,ru_KZ,en_JE,zu,en_JM,pt_BR,en_MS,ar_SD,en_ZM,es_PA,en_GG,es_SV,en_SE,es,rof,fr_SC,fr_GA,en_CM,ta,en_SX,fr_MC,fy,to,fr_RW,en_SD,qu,en_KE,rw_RW,gv_IM,sv_FI,cgg,pt_GW,fr_CF,sv_SE,dje,en_SS,ar_DZ,si,es_UY,ar_SA,tr_TR,dua,fr_BL,nb_SJ,fr_CA,ff,es_PE,om,en_FK,cs_CZ,zu_ZA,sl_SI,es_NI,en_GY,fr_ML,fr_MF,pl_SP,nmg,fo_DK,en_LR,el_CY,nus,mt,en_NU,en_UG,ta_MY,pt_ST,ha_NE,ca_FR,ru,es_IC,ar_KW,it_IT,en_GI,ji,hr,ka_GE,pt_PT,nl,en_TV,ru_RU,pa,mgh,es_ES,km,ee_TG,ca_AD,twq,ar_YE,eo,ne,as_IN,es_GT,vi_VN,de_CH,ig_NG,or_IN,mua,pl_PL,lv,fr_DZ,lb,hr_HR,haw,sw_KE,shi,mn,om_ET,fr_LU,es_PR,lo_LA,es_HN,kl_GL,bo_IN,et_EE,en_ZA,en_ZG,fr_TG,br_FR,yo_NG,tr_CY,sr,bem,fr_PF,ti_ET,hu,mk,de_LI,so_SO,nb_NO,luo,en_ZW,sk_SK,ksh,sk,nyn,fa,zgh,fr_HT,en_CY,uz,rm,en_MH,sn,to_TO,te,sq_MK,ha_GH,ta_IN,en_MW,da,en_BS,ms_SG,ps_AF,lt_LT,br,it_CH,fr_NE,en_LC,bm_ML,kk_KZ,qu_BO,tr,nl_SR,ln,sw,luy,en,fo,en_GD,asa,lag,fr_GQ,fr,fr_GN,dz,ar_SO,dz_BT,ca,es_CL,rn_BI,sq_XK,en_CC,en_SI,el_GR,yo_BJ,vi,my,de_LU,mk_MK,ak_GH,fr_GF,en_PK,my_MM,fr_CG,cy,es_PH,en_IN,ksf,en_LS,fy_NL,ce,ff_MR,af_ZA,fa_IR,bn_BD,vun,ks,bg,sq_AL,fr_BF,rw,af_NA,dsb,qu_PE,en_DM,ar_TN,nd,en_UM,en_FM,en_NR,ro,uk,se_SE,ln_CF,pt_MZ,am_ET,kl,pt,ta_SG,th,se_NO,ff_GN,ky,en_NG,ur_PK,af,en_DE,so,sah,fr_SN,ar_EH,vai,gu_IN,en_WS,es_EA,ms,fr_MG,th_TH,fr_RE,ru_BY,nl_SX,lv_LV,ki_KE,fr_CI,en_BB,ja,kde,am,nl_BQ,bo_CN,ga_IE,sl,bn_IN,mer,en_SZ,fr_CM,dav,ti_ER,da_GL,kw_GB,ga,mfe,it,it_SM,fo_FO,en_BW,en_SG,tk,en_KN,cs,chr,km_KH,en_SC,mr_IN,el,en_PN,mg_MG,ru_KG,en_PW,en_SB,fur,en_BZ,ka,bm,de_DE,te_IN,ml_IN,hy,sw_TZ,kw,kn,ru_UA,ln_CD,et,fr_CH,en_DG,bn,ps,qu_EC,lt,ii_CN,en_FJ,eu,en_TC,ksb,pt_CV,gl_ES,en_VU,en_MP,ee,ar_PS,wae,nl_BE,xog,is,fr_PM,saq,iw_IL,om_KE,en_FI,nn_NO,pt_MO,mgo,en_US,fr_BE,ar,gd,kok,de,kln,kam,mt_MT,be,ce_RU,en_BE,fr_SY,es_MX,sv_AX,agq,sq,hr_BA,tzm,de_AT,os_RU,es_DO,en_BI,mg,ar_SY,yav,ks_IN,ro_RO,lu_CD,en_PG,jgo,is_IS,es_CU,ff_CM,en_VG,az,en_GU,fr_MR,ug_CN,in_ID,en_AU,nl_CW,ru_MD,naq,gd_GB,en_CK,ml,ja_JP,sw_CD,uk_UA,ta_LK,pl,es_VE,da_DK,be_BY,fa_AF,pt_AO,fr_MQ,bs,mas,tg,ar_QA,en_IO,en_SH,en_NL,es_GQ,lg,hu_HU,fr_BJ,en_MO,brx,fr_WF,ar_OM,ca_ES,en_GB,ug,ha,en_NA,en_NF,sv,as,ig,en_KI,en_CX,en_TO,sbp,bo,ne_NP,bg_BG,jmc,en_GM,ar_JO,en_HK,ar_IQ,fr_DJ,fr_GP,lkt,kn_IN,ha_NG,en_IL,en_KY,en_TT,fil,fr_BI,sg,hsb,ca_IT,teo,fr_TN,en_AS,kk,guz,fr_VU,mr,es_EC,en_TZ,ko_KR,ar_MA,ar_LB,my_ZG,fr_CD,en_DK,es_CO,ur_IN,rwk,es_PY,ms_MY,cy_GB,en_PH,seh,ar_BH,en_TK,en_RW,eu_ES,ki,fr_TD,smn,ses,so_KE,es_CR,en_MY,en_AI,lo,en_MG,en_PR,gsw,en_VI,en_BM,se,en_IE,en_SL,khq,en_CH,ee_GH,ko,lb_LU,en_AT,nn,ar_ER,lrc,ar_TD,ar_MR,fr_YT,en_GH,en_MU,si_LK,gv,ky_KG,nl_NL,rm_CH,ar_IL,ti,iw,hy_AM,se_FI,pt_TL,en_AG,or,bez,ff_SN,en_IM,fr_MA,en_MT,nd_ZW,fi_FI,en_NZ,de_BE,fr_KM,bas,ak,nl_AW,ar_AE,kab,ar_EG,ur,es_AR,ar_DJ,ar_KM,kkj,fi,lu,fr_FR,ebu,os,ne_IN,ln_AO,gu,zh,os_GE,sg_CF,mn_MN,gl,lg_UG,ko_KP,rn,mzn,es_US,hi_IN,ar_LY,ms_BN,fr_NC,so_DJ,ii,en_ER,ar_SS,kea,ln_CG,fr_MU,nb,yo,nnh,en_VC,ewo,en_CA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Sony Xperia Z1 (api22)
Build.FINGERPRINT = Sony/C6902/C6902:5.1.1/14.6.A.1.236/2031203603:user/release-keys
Build.HARDWARE = qcom
Build.BRAND = Sony
Build.RADIO = unknown
Build.BOOTLOADER = s1
Build.DEVICE = C6902
Build.VERSION.SDK_INT = 22
Build.MODEL = C6902
Build.MANUFACTURER = Sony
Build.PRODUCT = C6902
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 480
Screen.Width = 1080
Screen.Height = 1776
Platforms = armeabi-v7a,armeabi
SharedLibraries = ConnectivityExt,activation.jar,android-support-v13.jar,android-support-v4.jar,android-support-v7-recyclerview.jar,cloud-common.jar,com.android.media.remotedisplay,com.android.mediadrm.signer,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.nfc_extras,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,javax.obex
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,android.hardware.usb.accessory,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.ethernet,android.software.voice_recognizers,android.hardware.sensor.gyroscope,android.hardware.bluetooth,android.hardware.camera.autofocus,android.hardware.telephony.gsm,android.software.sip.voip,android.hardware.usb.host,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,android.software.home_screen,android.hardware.microphone,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,android.hardware.screen.landscape,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.any,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.wifi.direct,android.software.live_wallpaper,android.hardware.location.gps,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,agq_CM,ak,ak_GH,am,am_ET,ar,ar_001,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SS,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,asa_TZ,az,az__#Cyrl,az_AZ_#Cyrl,az__#Latn,az_AZ_#Latn,bas,bas_CM,be,be_BY,bem,bem_ZM,bez,bez_TZ,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,brx_IN,bs,bs__#Cyrl,bs_BA_#Cyrl,bs__#Latn,bs_BA_#Latn,ca,ca_AD,ca_ES,ca_FR,ca_IT,cgg,cgg_UG,chr,chr_US,cs,cs_CZ,cy,cy_GB,da,da_DK,da_GL,dav,dav_KE,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dje_NE,dua,dua_CM,dyo,dyo_SN,dz,dz_BT,ebu,ebu_KE,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_001,en_150,en_AG,en_AI,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CC,en_CK,en_CM,en_CX,en_DG,en_DM,en_ER,en_FJ,en_FK,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_IO,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MO,en_MP,en_MS,en_MT,en_MU,en_MW,en_NA,en_NF,en_NG,en_NR,en_NU,en_NZ,en_PG,en_PH,en_PK,en_PN,en_PR,en_PW,en_RW,en_SB,en_SC,en_SD,en_SG,en_SH,en_SL,en_SS,en_SX,en_SZ,en_TC,en_TK,en_TO,en_TT,en_TV,en_TZ,en_UG,en_UM,en_US,en_US_POSIX,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_419,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,ewo_CM,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fil_PH,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_PM,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_WF,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gsw_CH,gsw_LI,gu,gu_IN,guz,guz_KE,gv,gv_IM,ha,ha__#Latn,ha_GH_#Latn,ha_NE_#Latn,ha_NG_#Latn,haw,haw_US,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jgo_CM,jmc,jmc_TZ,jv,jv_ID,ka,ka_GE,kab,kab_DZ,kam,kam_KE,kde,kde_TZ,kea,kea_CV,khq,khq_ML,ki,ki_KE,kk,kk__#Cyrl,kk_KZ_#Cyrl,kkj,kkj_CM,kl,kl_GL,kln,kln_KE,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,kok_IN,ks,ks__#Arab,ks_IN_#Arab,ksb,ksb_TZ,ksf,ksf_CM,kw,kw_GB,ky,ky__#Cyrl,ky_KG_#Cyrl,lag,lag_TZ,lg,lg_UG,lkt,lkt_US,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luo_KE,luy,luy_KE,lv,lv_LV,mas,mas_KE,mas_TZ,mer,mer_KE,mfe,mfe_MU,mg,mg_MG,mgh,mgh_MZ,mgo,mgo_CM,mk,mk_MK,ml,ml_IN,mn,mn__#Cyrl,mn_MN_#Cyrl,mr,mr_IN,ms,ms__#Latn,ms_BN_#Latn,ms_MY_#Latn,ms_SG_#Latn,mt,mt_MT,mua,mua_CM,my,my_MM,naq,naq_NA,nb,nb_NO,nb_SJ,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_BQ,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nmg_CM,nn,nn_NO,nnh,nnh_CM,nus,nus_SD,nyn,nyn_UG,om,om_ET,om_KE,or,or_IN,pa,pa__#Arab,pa_PK_#Arab,pa__#Guru,pa_IN_#Guru,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,rof_TZ,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,rwk_TZ,saq,saq_KE,sbp,sbp_TZ,seh,seh_MZ,ses,ses_ML,sg,sg_CF,shi,shi__#Latn,shi_MA_#Latn,shi__#Tfng,shi_MA_#Tfng,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sq_XK,sr,sr__#Cyrl,sr_BA_#Cyrl,sr_ME_#Cyrl,sr_RS_#Cyrl,sr_XK_#Cyrl,sr__#Latn,sr_BA_#Latn,sr_ME_#Latn,sr_RS_#Latn,sr_XK_#Latn,su,su_ID,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,swc_CD,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,teo_KE,teo_UG,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = Xiaomi Redmi Note 3 (api25)
Build.HARDWARE = qcom
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = Xiaomi/kenzo/kenzo:6.0.1/MMB29M/V8.2.1.0.MHOCNDL:user/release-keys
Build.BRAND = Xiaomi
Build.DEVICE = kenzo
Build.VERSION.SDK_INT = 25
Build.MODEL = Redmi Note 3
Build.MANUFACTURER = Xiaomi
Build.PRODUCT = lineage_kenzo
Build.ID = NJH47F
Build.VERSION.RELEASE = 7.1.2
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 430
Screen.Width = 1080
Screen.Height = 1920
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = ConnectivityExt,android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.dsi.ant.antradio_library,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.qti.dpmapi,com.qti.dpmframework,com.qti.ims.connectionmanager.imscmlibrary,com.qti.location.sdk,com.qti.snapdragon.sdk.display,com.qualcomm.qcnvitems,com.qualcomm.qcrilhook,com.quicinc.cne,com.quicinc.cneapiclient,izat.xt.srv,javax.obex,org.apache.http.legacy,org.cyanogenmod.hardware,org.cyanogenmod.platform
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.consumerir,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.cyanogenmod.android,com.google.android.apps.dialer.SUPPORTED,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,org.cyanogenmod.appsuggest,org.cyanogenmod.audio,org.cyanogenmod.hardware,org.cyanogenmod.livedisplay,org.cyanogenmod.livelockscreen,org.cyanogenmod.partner,org.cyanogenmod.performance,org.cyanogenmod.profiles,org.cyanogenmod.statusbar,org.cyanogenmod.telephony,org.cyanogenmod.weather,projekt.substratum.theme
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,ast_ES,az_AZ,be,be_BY,bg,bg_BG,bn_BD,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ku,ky_KG,lb,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951448
Vending.version = 80853900
Vending.versionString = 8.5.39.W-all [0] [PR] 178322352
CellOperator = 40428
SimOperator = 40428
Roaming = mobile-notroaming
Client = android-google
TimeZone = Asia/Calcutta
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering

View file

@ -0,0 +1,33 @@
UserReadableName = MBX m201 Smart TV (api19)
Build.HARDWARE = amlogic
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = MBX/m201/m201:4.4.2/KOT49H/20160225:user/test-keys
Build.BRAND = MBX
Build.DEVICE = m201
Build.VERSION.SDK_INT = 19
Build.MODEL = MXQ
Build.MANUFACTURER = MBX
Build.PRODUCT = m201
TouchScreen = 1
Keyboard = 1
Navigation = 2
ScreenLayout = 3
HasHardKeyboard = false
HasFiveWayNavigation = true
Screen.Density = 160
Screen.Width = 1280
Screen.Height = 720
Platforms = armeabi-v7a,armeabi
SharedLibraries = com.google.android.tv.v1,javax.obex,com.google.android.media.effects,com.android.future.usb.accessory,amlogic.libplayer,android.test.runner,AmlogicPPPoE,com.google.widevine.software.drm,com.google.android.maps,com.android.location.provider,com.google.android.gms,com.android.media.remotedisplay
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CM,en_DM,en_FJ,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MP,en_MT,en_MU,en_MW,en_NA,en_NG,en_NZ,en_PG,en_PH,en_PK,en_PR,en_PW,en_SB,en_SC,en_SG,en_SL,en_SS,en_SZ,en_TC,en_TO,en_TT,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_GB,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,lag,lg,lg_UG,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_NG,zh,zu,zu_ZA
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
CellOperator = 310260
GSF.version = 10548448
Vending.version = 80798000
SimOperator = 310260
Client = android-google

View file

@ -0,0 +1,33 @@
UserReadableName = Samsung Galaxy S3 (api25)
Build.FINGERPRINT = samsung/m3xx/m3:4.1.2/JZO54K/I9305XXBMA6:user/release-keys
Build.HARDWARE = smdk4x12
Build.BRAND = samsung
Build.RADIO = I9305XXUFOI1
Build.BOOTLOADER = I9305XXUEML9
Build.DEVICE = m3
Build.VERSION.SDK_INT = 25
Build.MODEL = GT-I9305
Build.MANUFACTURER = samsung
Build.PRODUCT = m3xx
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 320
Screen.Width = 720
Screen.Height = 1280
Platforms = armeabi-v7a,armeabi
SharedLibraries = org.cyanogenmod.platform,com.android.location.provider,com.android.future.usb.accessory,android.ext.shared,javax.obex,android.ext.services,org.cyanogenmod.hardware,android.test.runner,org.apache.http.legacy,com.android.nfc_extras,com.android.media.remotedisplay,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = hi,so_ET,ro_MD,in,sn_ZW,sw_UG,es_BO,dyo,ru_KZ,en_JE,zu,en_JM,pt_BR,en_MS,ar_SD,en_ZM,es_PA,en_GG,es_SV,en_SE,es,rof,fr_SC,fr_GA,en_CM,ta,en_SX,fr_MC,fy,to,fr_RW,en_SD,qu,en_KE,rw_RW,gv_IM,sv_FI,cgg,pt_GW,fr_CF,sv_SE,dje,en_SS,ar_DZ,si,es_UY,ar_SA,tr_TR,dua,fr_BL,nb_SJ,fr_CA,ff,es_PE,om,en_FK,cs_CZ,zu_ZA,sl_SI,es_NI,en_GY,fr_ML,fr_MF,nmg,fo_DK,en_LR,el_CY,nus,mt,en_NU,en_UG,ta_MY,pt_ST,ha_NE,ca_FR,ru,es_IC,ar_KW,it_IT,en_GI,ji,hr,ka_GE,pt_PT,nl,en_TV,ru_RU,pa,mgh,es_ES,km,ee_TG,ca_AD,twq,ar_YE,eo,ne,as_IN,es_GT,vi_VN,de_CH,ig_NG,or_IN,mua,pl_PL,lv,fr_DZ,lb,hr_HR,haw,sw_KE,shi,mn,om_ET,fr_LU,es_PR,lo_LA,es_HN,kl_GL,bo_IN,et_EE,en_ZA,fr_TG,br_FR,yo_NG,tr_CY,sr,bem,fr_PF,ti_ET,hu,mk,de_LI,so_SO,nb_NO,luo,en_ZW,sk_SK,ksh,sk,nyn,fa,zgh,fr_HT,en_CY,uz,rm,en_MH,sn,to_TO,te,sq_MK,ha_GH,ta_IN,en_MW,da,en_BS,ms_SG,ps_AF,lt_LT,br,it_CH,fr_NE,en_LC,bm_ML,kk_KZ,qu_BO,tr,nl_SR,ln,sw,luy,en,fo,en_GD,asa,lag,fr_GQ,fr,fr_GN,dz,ar_SO,dz_BT,ca,es_CL,rn_BI,sq_XK,en_CC,en_SI,el_GR,yo_BJ,vi,my,de_LU,mk_MK,ak_GH,fr_GF,en_PK,my_MM,fr_CG,cy,es_PH,en_IN,ksf,en_LS,fy_NL,ce,ff_MR,af_ZA,fa_IR,bn_BD,vun,ks,bg,sq_AL,fr_BF,rw,af_NA,dsb,qu_PE,en_DM,ar_TN,nd,en_UM,en_FM,en_NR,ro,uk,se_SE,ln_CF,pt_MZ,am_ET,kl,pt,ta_SG,th,se_NO,ff_GN,ky,en_NG,ur_PK,af,en_DE,so,sah,fr_SN,ar_EH,vai,gu_IN,en_WS,es_EA,ms,fr_MG,th_TH,fr_RE,ru_BY,nl_SX,lv_LV,ki_KE,fr_CI,en_BB,ja,kde,am,nl_BQ,bo_CN,ga_IE,sl,bn_IN,mer,en_SZ,fr_CM,dav,ti_ER,da_GL,kw_GB,ga,mfe,it,it_SM,fo_FO,en_BW,en_SG,en_KN,cs,chr,km_KH,en_SC,mr_IN,el,en_PN,mg_MG,ru_KG,en_PW,en_SB,fur,en_BZ,ka,bm,de_DE,te_IN,ml_IN,hy,sw_TZ,kw,kn,ru_UA,ln_CD,et,fr_CH,en_DG,bn,ps,qu_EC,lt,ii_CN,en_FJ,eu,en_TC,ksb,pt_CV,gl_ES,en_VU,en_MP,ee,ar_PS,wae,nl_BE,xog,is,fr_PM,saq,iw_IL,om_KE,en_FI,nn_NO,pt_MO,mgo,en_US,fr_BE,ar,gd,kok,de,kln,kam,mt_MT,be,ce_RU,en_BE,fr_SY,es_MX,sv_AX,agq,sq,hr_BA,tzm,de_AT,os_RU,es_DO,en_BI,mg,ar_SY,yav,ks_IN,ro_RO,lu_CD,en_PG,jgo,is_IS,es_CU,ff_CM,en_VG,az,en_GU,fr_MR,ug_CN,in_ID,en_AU,nl_CW,ru_MD,naq,gd_GB,en_CK,ml,ja_JP,sw_CD,uk_UA,ta_LK,pl,es_VE,da_DK,be_BY,fa_AF,pt_AO,fr_MQ,bs,mas,ar_QA,en_IO,en_SH,en_NL,es_GQ,lg,hu_HU,fr_BJ,en_MO,brx,fr_WF,ar_OM,ca_ES,en_GB,ug,ha,en_NA,en_NF,sv,as,ig,en_KI,en_CX,en_TO,sbp,bo,ne_NP,bg_BG,jmc,en_GM,ar_JO,en_HK,ar_IQ,fr_DJ,fr_GP,lkt,kn_IN,ha_NG,en_IL,en_KY,en_TT,fil,fr_BI,sg,hsb,ca_IT,teo,fr_TN,en_AS,kk,guz,fr_VU,mr,es_EC,en_TZ,ko_KR,ar_MA,ar_LB,fr_CD,en_DK,es_CO,ur_IN,rwk,es_PY,ms_MY,cy_GB,en_PH,seh,ar_BH,en_TK,en_RW,eu_ES,ki,fr_TD,smn,ses,so_KE,es_CR,en_MY,en_AI,lo,en_MG,en_PR,gsw,en_VI,en_BM,se,en_IE,en_SL,khq,en_CH,ee_GH,ko,lb_LU,en_AT,nn,ar_ER,lrc,ar_TD,ar_MR,fr_YT,en_GH,en_MU,si_LK,gv,ky_KG,nl_NL,rm_CH,ar_IL,ti,iw,hy_AM,se_FI,pt_TL,en_AG,or,bez,ff_SN,en_IM,fr_MA,en_MT,nd_ZW,fi_FI,en_NZ,de_BE,fr_KM,bas,ak,nl_AW,ar_AE,kab,ar_EG,ur,es_AR,ar_DJ,ar_KM,kkj,fi,lu,fr_FR,ebu,os,ne_IN,ln_AO,gu,zh,os_GE,sg_CF,mn_MN,gl,lg_UG,ko_KP,rn,mzn,es_US,hi_IN,ar_LY,ms_BN,fr_NC,so_DJ,ii,en_ER,ar_SS,kea,ln_CG,fr_MU,nb,yo,nnh,en_VC,ewo,en_CA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = Samsung Galaxy Nexus (api16)
Build.FINGERPRINT = google/yakju/maguro:4.1.1/JRO03C/398337:user/release-keys
Build.HARDWARE = tuna
Build.BRAND = Google
Build.RADIO = I9250XXLA2
Build.BOOTLOADER = PRIMELA03
Build.DEVICE = maguro
Build.VERSION.SDK_INT = 16
Build.MODEL = Galaxy Nexus
Build.MANUFACTURER = Samsung
Build.PRODUCT = yakju
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 320
Screen.Width = 720
Screen.Height = 1184
Platforms = armeabi-v7a,armeabi
SharedLibraries = ConnectivityExt,activation.jar,android-support-v13.jar,android-support-v4.jar,android-support-v7-recyclerview.jar,cloud-common.jar,com.android.media.remotedisplay,com.android.mediadrm.signer,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.nfc_extras,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,javax.obex
Features = android.hardware.wifi,android.hardware.location.network,android.hardware.telephony,android.hardware.location,android.software.sip,android.hardware.touchscreen.multitouch,android.hardware.sensor.compass,android.hardware.camera,android.hardware.usb.accessory,android.hardware.bluetooth,com.tmobile.software.themes,android.hardware.sensor.proximity,android.software.sip.voip,android.hardware.sensor.light,android.hardware.microphone,android.hardware.location.gps,android.hardware.camera.autofocus,android.hardware.telephony.gsm,android.software.live_wallpaper,android.hardware.touchscreen,android.hardware.sensor.accelerometer,android.hardware.camera.flash
Locales = ar,bg,bg_BG,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,el,el_GR,en,en_AU,en_BE,en_BW,en_BZ,en_CA,en_GB,en_HK,en_IE,en_IN,en_JM,en_MH,en_MT,en_NA,en_NZ,en_PH,en_PK,en_SG,en_TT,en_US,en_US_POSIX,en_VI,en_ZA,en_ZW,es,es_ES,es_US,fa,fa_AF,fa_IR,fi,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,fr_LU,fr_MC,iw,hi,hi_IN,hr,hu,in,it,it_CH,it_IT,ja,ja_JP,ko,ko_KR,lt,lt_LT,lv,lv_LV,nb,nb_NO,nl,nl_BE,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ru,ru_RU,sk,sl,sl_SI,sr,sv,sv_SE,th,tr,tr_TR,uk,vi,vi_VN,zh,zh_CN,zh_HANS,zh_HANS_CN,zh_HANT,zh_HANT_TW,zh_TW
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = Nexus 4 (api25)
Build.HARDWARE = mako
Build.RADIO = unknown
Build.BOOTLOADER = MAKOZ30d
Build.FINGERPRINT = google/occam/mako:5.1.1/LMY48M/2167285:user/release-keys
Build.BRAND = google
Build.DEVICE = mako
Build.VERSION.SDK_INT = 25
Build.MODEL = Nexus 4
Build.MANUFACTURER = LGE
Build.PRODUCT = occam
Build.ID = N2G47O
Build.VERSION.RELEASE = 7.1.2
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196608
Screen.Density = 288
Screen.Width = 768
Screen.Height = 1207
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,javax.obex,org.apache.http.legacy,org.cyanogenmod.hardware,org.cyanogenmod.platform
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.ethernet,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.hce,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.telephony,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.cyanogenmod.android,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,org.cyanogenmod.appsuggest,org.cyanogenmod.audio,org.cyanogenmod.hardware,org.cyanogenmod.livedisplay,org.cyanogenmod.livelockscreen,org.cyanogenmod.partner,org.cyanogenmod.performance,org.cyanogenmod.profiles,org.cyanogenmod.statusbar,org.cyanogenmod.telephony,org.cyanogenmod.weather,projekt.substratum.theme
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,ast_ES,az_AZ,be,be_BY,bg,bg_BG,bn_BD,bs_BA,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ku,ky_KG,lb,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11746436
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 21403
SimOperator = 21403
Roaming = mobile-notroaming
Client = android-google
TimeZone = Europe/Madrid
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_AMD_program_binary_Z400,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_multisampled_render_to_texture,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_NV_fence,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_fbo_render_mipmap,GL_OES_fragment_precision_high,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OES_vertex_type_10_10_10_2,GL_QCOM_alpha_test,GL_QCOM_binning_control,GL_QCOM_driver_control,GL_QCOM_extended_get,GL_QCOM_extended_get2,GL_QCOM_perfmon_global_mode,GL_QCOM_tiled_rendering,GL_QCOM_writeonly_rendering

View file

@ -0,0 +1,35 @@
UserReadableName = Nexus 10 (api23)
Build.HARDWARE = manta
Build.RADIO = unknown
Build.BOOTLOADER = MANTAMF01
Build.FINGERPRINT = google/mantaray/manta:5.1.1/LMY49J/2640980:user/release-keys
Build.BRAND = Google
Build.DEVICE = manta
Build.VERSION.SDK_INT = 23
Build.MODEL = Nexus 10
Build.MANUFACTURER = samsung
Build.PRODUCT = mantaray
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 4
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196609
GSF.version = 10548448
Vending.version = 80798000
Screen.Density = 320
Screen.Width = 2560
Screen.Height = 1504
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,javax.obex,org.apache.http.legacy,org.cyanogenmod.hardware,org.cyanogenmod.platform
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.hce,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.cyanogenmod.android,com.cyanogenmod.nfc.enhanced,org.cyanogenmod.appsuggest,org.cyanogenmod.audio,org.cyanogenmod.hardware,org.cyanogenmod.livedisplay,org.cyanogenmod.livelockscreen,org.cyanogenmod.partner,org.cyanogenmod.performance,org.cyanogenmod.profiles,org.cyanogenmod.statusbar,org.cyanogenmod.telephony,org.cyanogenmod.theme,org.cyanogenmod.theme.v1,org.cyanogenmod.weather
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast_ES,az_AZ,bg,bg_BG,bn_BD,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,en_XA,eo,es,es_ES,es_US,et_EE,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gl_ES,gu_IN,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,kk_KZ,km_KH,kn_IN,ko,ko_KR,ku,ku_IQ,ky_KG,lb,lb_LU,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_BE,nl_NL,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,rm,rm_CH,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sq_AL,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,ur_PK,uz_UZ,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
CellOperator =
SimOperator =
Client = android-google
TimeZone = America/New_York
GL.Extensions = GL_ARM_mali_program_binary,GL_ARM_mali_shader_binary,GL_ARM_rgba8,GL_ARM_shader_framebuffer_fetch,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_blend_minmax,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_multisampled_render_to_texture,GL_EXT_occlusion_query_boolean,GL_EXT_read_format_bgra,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_pixel_local_storage,GL_EXT_shadow_samplers,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_rg,GL_EXT_texture_sRGB_decode,GL_EXT_texture_storage,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_debug,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_byte_coordinates,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_extended_matrix_palette,GL_OES_fbo_render_mipmap,GL_OES_fixed_point,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_query_matrix,GL_OES_read_format,GL_OES_required_internalformat,GL_OES_rgb8_rgba8,GL_OES_shader_image_atomic,GL_OES_single_precision,GL_OES_standard_derivatives,GL_OES_stencil8,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float
Roaming = mobile-notroaming

View file

@ -0,0 +1,33 @@
UserReadableName = Huawei Mate 8 (api23)
Build.FINGERPRINT = HUAWEI/NXT-L09/HWNXT:6.0/HUAWEINXT-L09/C576B193:user/release-keys
Build.HARDWARE = hi3650
Build.BRAND = HUAWEI
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = HWNXT
Build.VERSION.SDK_INT = 23
Build.MODEL = HUAWEI NXT-L09
Build.MANUFACTURER = HUAWEI
Build.PRODUCT = NXT-L09
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 400
Screen.Width = 1080
Screen.Height = 1830
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = com.huawei.hwpostcamera,com.google.widevine.software.drm,com.google.android.media.effects,com.gsma.services.nfc,com.android.location.provider,hwcustframework,com.android.future.usb.accessory,com.android.contacts.separated,javax.obex,com.google.android.gms,com.huawei.audioalgo,hwframework,com.huawei.systemmanager.separated,org.simalliance.openmobileapi,android.test.runner,com.google.android.maps,org.apache.http.legacy,com.android.nfc_extras,com.android.media.remotedisplay,com.android.mediadrm.signer,com.hisi.perfhub
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SS,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,ca_FR,ca_IT,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,da_GL,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dsb,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AI,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CC,en_CK,en_CM,en_CX,en_DG,en_DM,en_ER,en_FJ,en_FK,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_IO,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MO,en_MP,en_MS,en_MT,en_MU,en_MW,en_MY,en_NA,en_NF,en_NG,en_NR,en_NU,en_NZ,en_PG,en_PH,en_PK,en_PN,en_PR,en_PW,en_RW,en_SB,en_SC,en_SD,en_SG,en_SH,en_SL,en_SS,en_SX,en_SZ,en_TC,en_TK,en_TO,en_TT,en_TV,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_CM,ff_GN,ff_MR,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_PM,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_WF,fr_YT,fur,fy,fy_NL,ga,ga_IE,gd,gd_GB,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_IM,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hsb,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kkj,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,ksh,kw,kw_GB,ky,lag,lb,lb_LU,lg,lg_UG,lkt,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,my_ZG,naq,nb,nb_NO,nb_SJ,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_BQ,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nnh,nus,nyn,om,om_ET,om_KE,or,or_IN,os,os_GE,os_RU,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,qu,qu_BO,qu_EC,qu_PE,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,sah,saq,sbp,se,se_FI,se_NO,se_SE,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,smn,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sq_XK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_CD,sw_KE,sw_TZ,sw_UG,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,ug,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,wae,xog,yav,ji,yo,yo_BJ,yo_NG,zgh,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = OnePlus 3 (api26)
Build.HARDWARE = qcom
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = OnePlus/OnePlus3/OnePlus3:8.0.0/OPR6.170623.013/10250816:user/release-keys
Build.BRAND = OnePlus
Build.DEVICE = OnePlus3
Build.VERSION.SDK_INT = 26
Build.MODEL = ONEPLUS A3000
Build.MANUFACTURER = OnePlus
Build.PRODUCT = OnePlus3
Build.ID = OPR6.170623.013
Build.VERSION.RELEASE = 8.0.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 480
Screen.Width = 1080
Screen.Height = 1920
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.hardware.light-V2.0,android.hidl.manager-V1.0-java,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.android.nfc_extras,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.nxp.nfc,com.qti.dpmapi,com.qti.dpmframework,com.qti.location.sdk,com.qti.snapdragon.sdk.display,com.qualcomm.embmslibrary,com.qualcomm.qcnvitems,com.qualcomm.qcrilhook,com.qualcomm.qti.QtiTelephonyServicelibrary,com.qualcomm.qti.audiosphere,com.qualcomm.qti.lpa.uimlpalibrary,com.quicinc.cne,com.quicinc.cneapiclient,com.suntek.mway.rcs.client.aidl,com.suntek.mway.rcs.client.api,com.wapi.wapicertstore,izat.xt.srv,javax.obex,oneplus_sdk_utils,oneplus_sdk_wrapper,org.apache.http.legacy,org.codeaurora.btmultisimlibrary,org.simalliance.openmobileapi
Features = android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.sip,android.software.sip.voip,android.software.verified_boot,android.software.voice_recognizers,android.software.webview,com.nxp.mifare,com.oneplus.software.oos,com.oneplus.software.oos.n_theme_ready,oem.ambient.support,oem.audiotuner.support,oem.authentication_information.support,oem.autobrightctl.animation.support,oem.background.control,oem.blackScreenGesture.support,oem.breathLight.support,oem.button.light.support,oem.direct.support,oem.dualsim.support,oem.finger.print.support,oem.gyroscope.support,oem.hapticsService.support,oem.hw.manufacturer.qualcomm,oem.inexact.alarm,oem.keyDefine.support,oem.lift_up_display.support,oem.op_dark_mode.support,oem.op_intelligent_background_management.support,oem.op_legal_information.support,oem.opcamera_manual_zsl.support,oem.optical.stabilizer.support,oem.otg.positive.negative.plug.support,oem.otgSwitch.support,oem.picture.color.mode.srgb,oem.prox.calibration.support,oem.qcom.fastchager.support,oem.serial_cdev.support,oem.sim_contacts.autosync.support,oem.threeScreenshot.support,oem.threeStageKey.support,oem.timePoweroffWakeup.support,oem.vooc.fastchager.support
Locales = ar,ar_EG,ast,bn,bn_BD,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,es,es_ES,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gu,gu_IN,hi,hi_IN,hr,hu,hu_HU,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,kn,ko,ko_KR,ml,mr,mr_IN,ms,ms_MY,nb,nb_NO,nl,nl_BE,nl_NL,pa,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,sk,sk_SK,sl,sl_SI,sv,sv_SE,ta,ta_IN,te,th,th_TH,tr,tr_TR,uk,uk_UA,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW
GSF.version = 11951440
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 20201
SimOperator = 20201
TimeZone = Europe/Athens
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_EGL_image_array,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_external_buffer,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_multisampled_render_to_texture2,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_NV_shader_noperspective_interpolation,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_framebuffer_foveated,GL_QCOM_shader_framebuffer_fetch_noncoherent,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,36 @@
UserReadableName = OnePlus 3T (api26)
Build.HARDWARE = qcom
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = OnePlus/OnePlus3/OnePlus3T:8.0.0/OPR6.170623.013/10250816:user/release-keys
Build.BRAND = OnePlus
Build.DEVICE = OnePlus3T
Build.VERSION.SDK_INT = 26
Build.MODEL = ONEPLUS A3000
Build.MANUFACTURER = OnePlus
Build.PRODUCT = OnePlus3
Build.ID = OPR6.170623.013
Build.VERSION.RELEASE = 8.0.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 380
Screen.Width = 1080
Screen.Height = 1920
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.hardware.light-V2.0,android.hidl.manager-V1.0-java,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.android.nfc_extras,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.nxp.nfc,com.qti.dpmapi,com.qti.dpmframework,com.qti.location.sdk,com.qti.snapdragon.sdk.display,com.qualcomm.embmslibrary,com.qualcomm.qcnvitems,com.qualcomm.qcrilhook,com.qualcomm.qti.QtiTelephonyServicelibrary,com.qualcomm.qti.audiosphere,com.qualcomm.qti.lpa.uimlpalibrary,com.quicinc.cne,com.quicinc.cneapiclient,com.suntek.mway.rcs.client.aidl,com.suntek.mway.rcs.client.api,com.wapi.wapicertstore,izat.xt.srv,javax.obex,oneplus_sdk_utils,oneplus_sdk_wrapper,org.apache.http.legacy,org.codeaurora.btmultisimlibrary,org.simalliance.openmobileapi
Features = android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.sip,android.software.sip.voip,android.software.verified_boot,android.software.voice_recognizers,android.software.webview,com.google.android.apps.dialer.SUPPORTED,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,com.nxp.mifare,com.oneplus.software.oos,com.oneplus.software.oos.n_theme_ready,oem.ambient.support,oem.audiotuner.support,oem.authentication_information.support,oem.autobrightctl.animation.support,oem.background.control,oem.blackScreenGesture.support,oem.breathLight.support,oem.button.light.support,oem.direct.support,oem.dualsim.support,oem.finger.print.support,oem.gyroscope.support,oem.hapticsService.support,oem.hw.manufacturer.qualcomm,oem.inexact.alarm,oem.keyDefine.support,oem.lift_up_display.support,oem.op_dark_mode.support,oem.op_intelligent_background_management.support,oem.op_legal_information.support,oem.opcamera_manual_zsl.support,oem.optical.stabilizer.support,oem.otg.positive.negative.plug.support,oem.otgSwitch.support,oem.picture.color.mode.srgb,oem.prox.calibration.support,oem.qcom.fastchager.support,oem.serial_cdev.support,oem.sim_contacts.autosync.support,oem.threeScreenshot.support,oem.threeStageKey.support,oem.timePoweroffWakeup.support,oem.vooc.fastchager.support
Locales = ar,ar_EG,ast,bn,bn_BD,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_CH,de_DE,de_LI,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_NZ,en_SG,en_US,es,es_ES,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_CH,fr_FR,gu,gu_IN,hi,hi_IN,hr,hu,hu_HU,it,it_CH,it_IT,iw,iw_IL,ja,ja_JP,kn,ko,ko_KR,ml,mr,mr_IN,ms,ms_MY,nb,nb_NO,nl,nl_BE,nl_NL,pa,pa_IN,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,sk,sk_SK,sl,sl_SI,sv,sv_SE,ta,ta_IN,te,th,th_TH,tr,tr_TR,uk,uk_UA,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW
GSF.version = 11951440
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 310260
SimOperator = 310260
TimeZone = America/New_York
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_EGL_image_array,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_external_buffer,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_multisampled_render_to_texture2,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_NV_shader_noperspective_interpolation,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_framebuffer_foveated,GL_QCOM_shader_framebuffer_fetch_noncoherent,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,33 @@
UserReadableName = OnePlus X (api25)
Build.FINGERPRINT = OnePlus/OnePlus/OnePlus:5.1.1/LMY47V/1441677661:user/release-keys
Build.HARDWARE = qcom
Build.BRAND = OnePlus
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = OnePlus
Build.VERSION.SDK_INT = 25
Build.MODEL = ONE E1003
Build.MANUFACTURER = OnePlus
Build.PRODUCT = onyx
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 432
Screen.Width = 1080
Screen.Height = 1790
Platforms = armeabi-v7a,armeabi
SharedLibraries = org.cyanogenmod.platform,com.qualcomm.qcnvitems,com.google.widevine.software.drm,com.qti.dpmapi,com.google.android.media.effects,com.android.location.provider,com.quicinc.cneapiclient,com.android.future.usb.accessory,com.qti.dpmframework,android.ext.shared,javax.obex,com.google.android.gms,android.ext.services,org.cyanogenmod.hardware,com.dsi.ant.antradio_library,com.qualcomm.qcrilhook,android.test.runner,com.google.android.dialer.support,com.google.android.maps,ConnectivityExt,org.apache.http.legacy,com.android.media.remotedisplay,com.quicinc.cne,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = hi,so_ET,ro_MD,in,sn_ZW,sw_UG,es_BO,dyo,ru_KZ,en_JE,zu,en_JM,pt_BR,en_MS,ar_SD,en_ZM,es_PA,en_GG,es_SV,en_SE,es,rof,fr_SC,fr_GA,en_CM,ta,en_SX,fr_MC,fy,to,fr_RW,en_SD,qu,en_KE,rw_RW,gv_IM,sv_FI,cgg,pt_GW,fr_CF,sv_SE,dje,en_SS,ar_DZ,si,es_UY,ar_SA,tr_TR,dua,fr_BL,nb_SJ,fr_CA,ff,es_PE,om,en_FK,cs_CZ,zu_ZA,sl_SI,es_NI,en_GY,fr_ML,fr_MF,nmg,fo_DK,en_LR,el_CY,nus,mt,en_NU,en_UG,ta_MY,pt_ST,ha_NE,ca_FR,ru,es_IC,ar_KW,it_IT,en_GI,ji,hr,ka_GE,pt_PT,nl,en_TV,ru_RU,pa,mgh,es_ES,km,ee_TG,ca_AD,twq,ar_YE,eo,ne,as_IN,es_GT,vi_VN,de_CH,ig_NG,or_IN,mua,pl_PL,lv,fr_DZ,lb,hr_HR,haw,sw_KE,shi,mn,om_ET,fr_LU,es_PR,lo_LA,es_HN,kl_GL,bo_IN,et_EE,en_ZA,fr_TG,br_FR,yo_NG,tr_CY,sr,bem,fr_PF,ti_ET,hu,mk,de_LI,so_SO,nb_NO,luo,en_ZW,sk_SK,ksh,sk,nyn,fa,zgh,fr_HT,en_CY,uz,rm,en_MH,sn,to_TO,te,sq_MK,ha_GH,ta_IN,en_MW,da,en_BS,ms_SG,ps_AF,lt_LT,br,it_CH,fr_NE,en_LC,bm_ML,kk_KZ,qu_BO,tr,nl_SR,ln,sw,luy,en,fo,en_GD,asa,lag,fr_GQ,fr,fr_GN,dz,ar_SO,dz_BT,ca,es_CL,rn_BI,sq_XK,en_CC,en_SI,el_GR,yo_BJ,vi,my,de_LU,mk_MK,ak_GH,fr_GF,en_PK,my_MM,fr_CG,cy,es_PH,en_IN,ksf,en_LS,fy_NL,ce,ff_MR,af_ZA,fa_IR,bn_BD,vun,ks,bg,sq_AL,fr_BF,rw,af_NA,dsb,qu_PE,en_DM,ar_TN,nd,en_UM,en_FM,en_NR,ro,uk,se_SE,ln_CF,pt_MZ,am_ET,kl,pt,ta_SG,th,se_NO,ff_GN,ky,en_NG,ur_PK,af,en_DE,so,sah,fr_SN,ar_EH,vai,gu_IN,en_WS,es_EA,ms,fr_MG,th_TH,fr_RE,ru_BY,nl_SX,lv_LV,ki_KE,fr_CI,en_BB,ja,kde,am,nl_BQ,bo_CN,ga_IE,sl,bn_IN,mer,en_SZ,fr_CM,dav,ti_ER,da_GL,kw_GB,ga,mfe,it,it_SM,fo_FO,en_BW,en_SG,en_KN,cs,chr,km_KH,en_SC,mr_IN,el,en_PN,mg_MG,ru_KG,en_PW,en_SB,fur,en_BZ,ka,bm,de_DE,te_IN,ml_IN,hy,sw_TZ,kw,kn,ru_UA,ln_CD,et,fr_CH,en_DG,bn,ps,qu_EC,lt,ii_CN,en_FJ,eu,en_TC,ksb,pt_CV,gl_ES,en_VU,en_MP,ee,ar_PS,wae,nl_BE,xog,is,fr_PM,saq,iw_IL,om_KE,en_FI,nn_NO,pt_MO,mgo,en_US,fr_BE,ar,gd,kok,de,kln,kam,mt_MT,be,ce_RU,en_BE,fr_SY,es_MX,sv_AX,agq,sq,hr_BA,tzm,de_AT,os_RU,es_DO,en_BI,mg,ar_SY,yav,ks_IN,ro_RO,lu_CD,en_PG,jgo,is_IS,es_CU,ff_CM,en_VG,az,en_GU,fr_MR,ug_CN,in_ID,en_AU,nl_CW,ru_MD,naq,gd_GB,en_CK,ml,ja_JP,sw_CD,uk_UA,ta_LK,pl,es_VE,da_DK,be_BY,fa_AF,pt_AO,fr_MQ,bs,mas,ar_QA,en_IO,en_SH,en_NL,es_GQ,lg,hu_HU,fr_BJ,en_MO,brx,fr_WF,ar_OM,ca_ES,en_GB,ug,ha,en_NA,en_NF,sv,as,ig,en_KI,en_CX,en_TO,sbp,bo,ne_NP,bg_BG,jmc,en_GM,ar_JO,en_HK,ar_IQ,fr_DJ,fr_GP,lkt,kn_IN,ha_NG,en_IL,en_KY,en_TT,fil,fr_BI,sg,hsb,ca_IT,teo,fr_TN,en_AS,kk,guz,fr_VU,mr,es_EC,en_TZ,ko_KR,ar_MA,ar_LB,fr_CD,en_DK,es_CO,ur_IN,rwk,es_PY,ms_MY,cy_GB,en_PH,seh,ar_BH,en_TK,en_RW,eu_ES,ki,fr_TD,smn,ses,so_KE,es_CR,en_MY,en_AI,lo,en_MG,en_PR,gsw,en_VI,en_BM,se,en_IE,en_SL,khq,en_CH,ee_GH,ko,lb_LU,en_AT,nn,ar_ER,lrc,ar_TD,ar_MR,fr_YT,en_GH,en_MU,si_LK,gv,ky_KG,nl_NL,rm_CH,ar_IL,ti,iw,hy_AM,se_FI,pt_TL,en_AG,or,bez,ff_SN,en_IM,fr_MA,en_MT,nd_ZW,fi_FI,en_NZ,de_BE,fr_KM,bas,ak,nl_AW,ar_AE,kab,ar_EG,ur,es_AR,ar_DJ,ar_KM,kkj,fi,lu,fr_FR,ebu,os,ne_IN,ln_AO,gu,zh,os_GE,sg_CF,mn_MN,gl,lg_UG,ko_KP,rn,mzn,es_US,hi_IN,ar_LY,ms_BN,fr_NC,so_DJ,ii,en_ER,ar_SS,kea,ln_CG,fr_MU,nb,yo,nnh,en_VC,ewo,en_CA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,33 @@
UserReadableName = HTC Explorer A310e (api15)
Build.FINGERPRINT = htc_asia_india/htc_pico/pico:2.3.5/GRJ90/171430.1:user/release-keys
Build.HARDWARE = pico
Build.BRAND = htc_europe
Build.RADIO = unknown
Build.BOOTLOADER = 1.02.0000
Build.DEVICE = pico
Build.VERSION.SDK_INT = 15
Build.MODEL = HTC Explorer A310e
Build.MANUFACTURER = HTC
Build.PRODUCT = pico
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 160
Screen.Width = 320
Screen.Height = 480
Platforms = armeabi-v7a,armeabi
SharedLibraries = com.sonyericsson.privateapis_2,com.sonyericsson.privateapis_1,com.sonymobile.musicslideshow.api,com.android.future.usb.accessory,com.sonyericsson.privateapis_6,com.sony.walkman.fseries,com.sonyericsson.privateapis_5,com.sonyericsson.privateapis_4,com.sonyericsson.privateapis_3,semc_audioeffectif,com.sonyericsson.autopoweroff,com.sonyericsson.renren.proxy,com.sonyericsson.system,SemcGenericUxpRes,semc_cdfinfoaccessorif,com.android.qualcomm.qcnvitems,com.sonyericsson.colorextraction,com.android.location.provider,com.sonyericsson.uxp,com.sonyericsson.musicvisualizer.api,javax.obex,semc_bootinfoif,com.sonyericsson.mimetype,semcrilextension,com.sonyericsson.idd,com.sony.walkman.media.player,com.sonyericsson.facebook.proxy_1,com.sony.walkman,com.sonymobile.audioeffect,com.sonyericsson.android.media.sols,com.sonyericsson.eventstream_3,com.sonyericsson.privateapis_7,com.sony.walkman.f800series,com.sonyericsson.eventstream_1,com.sonyericsson.eventstream_2,com.sonyericsson.nfc.handover,com.sonyericsson.smartslider,miui-framework,com.sonyericsson.dtcpctrl_protected.api,com.sonyericsson.metadatacleanup.api_4,com.sonyericsson.dlna.dtcpplayer.api,com.sonyericsson.music.like_1,com.sonymobile.nfc,com.sony.walkman.media.client,android.test.runner,com.sonyericsson.themeapis_ed6,com.android.qualcomm.qcrilhook,com.sonyericsson.metadatacleanup.api,com.sonyericsson.dtcpctrl_private.api,com.sonyericsson.android.omacp.api,com.sonyericsson.dlna.api,com.sonyericsson.android.snp.video,com.sony.walkman.wm,com.sonyericsson.illumination,com.sonyericsson.media.infinite.extension_1,qcsemcserviceif,com.sonyericsson.appextensions,com.sonyericsson.privateapis_1p,com.sony.walkman.database.media.client,com.sonyericsson.sysmon,com.sonyericsson.uxpres
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = ar,ar_AE,ar_BH,ar_DZ,ar_EG,ar_IQ,ar_JO,ar_KW,ar_LB,ar_LY,ar_MA,ar_OM,ar_QA,ar_SA,ar_SD,ar_SY,ar_TN,ar_YE,bg,bg_BG,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,el,el_GR,en,en_AU,en_BE,en_BW,en_BZ,en_CA,en_GB,en_HK,en_IE,en_IN,en_JM,en_MH,en_MT,en_NA,en_NZ,en_PH,en_PK,en_RH,en_SG,en_TT,en_US,en_VI,en_ZA,en_ZW,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_DO,es_EC,es_ES,es_GT,es_HN,es_MX,es_NI,es_PA,es_PE,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,fa,fa_AF,fa_IR,fi,fi_FI,fil,fr,fr_BE,fr_CA,fr_CH,fr_FR,fr_LU,fr_MC,iw,iw_IL,hi,hi_IN,hr,hr_HR,hu,hu_HU,in,in_ID,it,it_CH,it_IT,ja,ja_JP,ko,ko_KR,lt,lt_LT,lv,lv_LV,nb,nb_NO,nl,nl_BE,nl_NL,pl,pl_PL,ps,pt,pt_BR,pt_PT,rm,ro,ro_RO,ru,ru_RU,ru_UA,sk,sk_SK,sl,sl_SI,sr,sv,sv_FI,sv_SE,th,th_TH,tr,tr_TR,uk,uk_UA,vi,vi_VN,zh,zh_CN,zh_HK,zh_MO,zh_SG,zh_TW
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = Google Pixel (api27)
Build.HARDWARE = sailfish
Build.RADIO = unknown
Build.BOOTLOADER = 8996-012001-1710040120
Build.FINGERPRINT = google/sailfish/sailfish:8.1.0/OPM1.171019.011/4448085:user/release-keys
Build.BRAND = google
Build.DEVICE = sailfish
Build.VERSION.SDK_INT = 27
Build.MODEL = Pixel
Build.MANUFACTURER = Google
Build.PRODUCT = sailfish
Build.ID = OPM1.171019.011
Build.VERSION.RELEASE = 8.1.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 420
Screen.Width = 1080
Screen.Height = 1794
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.mock,android.test.runner,com.android.future.usb.accessory,com.android.ims.rcsmanager,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.camera.experimental2016,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.vr.platform,com.qti.vzw.ims.internal,com.qualcomm.embmslibrary,com.qualcomm.qcrilhook,com.qualcomm.qti.QtiTelephonyServicelibrary,com.qualcomm.qti.rcsservice,com.verizon.embms,com.verizon.provider,com.vzw.apnlib,javax.obex,org.apache.http.legacy
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.audio.pro,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.ram.normal,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.hifi_sensors,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.carrierlock,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vr.headtracking,android.hardware.vr.high_performance,android.hardware.vulkan.compute,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.direct,android.hardware.wifi.passpoint,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.file_based_encryption,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.securely_removes_users,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.vr.mode,android.software.webview,com.google.android.apps.dialer.SUPPORTED,com.google.android.apps.photos.NEXUS_PRELOAD,com.google.android.apps.photos.nexus_preload,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.PIXEL_EXPERIENCE,com.google.android.feature.ZERO_TOUCH,com.nxp.mifare,com.verizon.hardware.telephony.ehrpd,com.verizon.hardware.telephony.lte
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,az,be,bg,bg_BG,bn,bs,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_US,en_XA,es,es_ES,es_US,et,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_FR,gl,gu,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy,in,in_ID,is,it,it_IT,iw,iw_IL,ja,ja_JP,ka,kk,km,kn,ko,ko_KR,ky,lo,lt,lt_LT,lv,lv_LV,mk,ml,mn,mr,ms,ms_MY,my,nb,nb_NO,ne,nl,nl_NL,pa,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si,sk,sk_SK,sl,sl_SI,sq,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta,te,th,th_TH,tr,tr_TR,uk,uk_UA,ur,uz,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951940
Vending.version = 80853900
Vending.versionString = 8.5.39.W-all [0] [PR] 178322352
CellOperator = 311480
SimOperator = 311480
TimeZone = America/Denver
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_EGL_image_array,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_external_buffer,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_multisampled_render_to_texture2,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_NV_shader_noperspective_interpolation,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_framebuffer_foveated,GL_QCOM_shader_framebuffer_fetch_noncoherent,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,36 @@
UserReadableName = Nexus 6 (api25)
Build.HARDWARE = shamu
Build.RADIO = unknown
Build.BOOTLOADER = moto-apq8084-72.04
Build.FINGERPRINT = google/shamu/shamu:7.1.1/N6F27M/4299435:user/release-keys
Build.BRAND = google
Build.DEVICE = shamu
Build.VERSION.SDK_INT = 25
Build.MODEL = Nexus 6
Build.MANUFACTURER = motorola
Build.PRODUCT = shamu
Build.ID = N6F27M
Build.VERSION.RELEASE = 7.1.1
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 560
Screen.Width = 1440
Screen.Height = 2392
Platforms = armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.runner,com.android.future.usb.accessory,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.camera.experimental2016,com.google.android.dialer.support,com.google.android.gms,com.google.android.maps,com.google.android.media.effects,com.google.widevine.software.drm,com.qualcomm.qti.rcsimssettings,com.qualcomm.qti.rcsservice,com.verizon.ims,com.vzw.apnlib,javax.obex,org.apache.http.legacy
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.faketouch,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.cdma,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.wifi,android.hardware.wifi.direct,android.software.app_widgets,android.software.backup,android.software.connectionservice,android.software.device_admin,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.print,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.webview,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,com.motorola.software.DirectedSMSProxy,com.motorola.triggerenroll.ap_v1,com.motorola.triggerenroll.dsp_v1,com.verizon.hardware.telephony.ehrpd,com.verizon.hardware.telephony.lte
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,bg,bg_BG,bn_BD,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_AU,en_GB,en_IN,en_US,en_XA,es,es_ES,es_US,et_EE,eu,eu_ES,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_FR,gl_ES,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy_AM,in,in_ID,is_IS,it,it_IT,iw,iw_IL,ja,ja_JP,ka_GE,km_KH,kn_IN,ko,ko_KR,ky_KG,lo_LA,lt,lt_LT,lv,lv_LV,mk_MK,ml_IN,mn_MN,mr_IN,ms_MY,my_MM,nb,nb_NO,ne_NP,nl,nl_NL,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si_LK,sk,sk_SK,sl,sl_SI,sr,sr_RS,sv,sv_SE,sw,sw_TZ,ta_IN,te_IN,th,th_TH,tr,tr_TR,uk,uk_UA,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951430
Vending.version = 80841900
Vending.versionString = 8.4.19.V-all [0] [FP] 175058788
CellOperator = 26003
SimOperator = 26003
Roaming = mobile-notroaming
Client = android-google
TimeZone = Europe/Warsaw
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering

View file

@ -0,0 +1,33 @@
UserReadableName = Asus Zenfone 4 (api21)
Build.FINGERPRINT = asus/WW_ZenFone/ASUS_T00Q:5.0/LRX21V/WW_ZenFone-V5.4.2-20150922:user/release-keys
Build.HARDWARE = redhookbay
Build.BRAND = asus
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.DEVICE = ASUS_T00Q
Build.VERSION.SDK_INT = 21
Build.MODEL = ASUS_T00Q
Build.MANUFACTURER = asus
Build.PRODUCT = WW_ZenFone
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
Screen.Density = 240
Screen.Width = 480
Screen.Height = 854
Platforms = x86,armeabi-v7a,armeabi
SharedLibraries = com.visionobjects.myscript.shape,com.android.future.usb.accessory,com.intel.security.lib.sepdrmjni,com.android.media.remotedisplay,com.visionobjects.myscript.hwr,com.visionobjects.im,com.google.android.media.effects,com.google.android.maps,com.intel.config,android.test.runner,com.visionobjects.myscript.inksearch,com.broadcom.bt,com.android.location.provider,com.google.widevine.software.drm,javax.obex,com.intel.camera.extensions,com.visionobjects.myscript.engine,com.intel.multidisplay,com.asus.fm,com.intel.security.service.sepmanager,com.android.mediadrm.signer,com.asus.draw
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SS,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,ca_FR,ca_IT,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,da_GL,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AI,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CC,en_CK,en_CM,en_CX,en_DG,en_DM,en_ER,en_FJ,en_FK,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_IO,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MO,en_MP,en_MS,en_MT,en_MU,en_MW,en_NA,en_NF,en_NG,en_NR,en_NU,en_NZ,en_PG,en_PH,en_PK,en_PN,en_PR,en_PW,en_RW,en_SB,en_SC,en_SD,en_SG,en_SH,en_SL,en_SS,en_SX,en_SZ,en_TC,en_TK,en_TO,en_TT,en_TV,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_PM,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_WF,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_IM,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kkj,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,ky,lag,lg,lg_UG,lkt,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nb_SJ,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_BQ,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nnh,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sq_XK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,ug,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_BJ,yo_NG,zgh,zh,zu,zu_ZA
Client = android-google
GSF.version = 10548448
Vending.version = 80798000
CellOperator = 310260
SimOperator = 310260
Roaming = mobile-notroaming
TimeZone = Europe/Moscow
GL.Version = 131072
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8

View file

@ -0,0 +1,36 @@
UserReadableName = Google Pixel 2 (api27)
Build.HARDWARE = walleye
Build.RADIO = unknown
Build.BOOTLOADER = mw8998-002.0066.00
Build.FINGERPRINT = google/walleye/walleye:8.1.0/OPM1.171019.011/4448085:user/release-keys
Build.BRAND = google
Build.DEVICE = walleye
Build.VERSION.SDK_INT = 27
Build.MODEL = Pixel 2
Build.MANUFACTURER = Google
Build.PRODUCT = walleye
Build.ID = OPM1.171019.011
Build.VERSION.RELEASE = 8.1.0
TouchScreen = 3
Keyboard = 1
Navigation = 1
ScreenLayout = 2
HasHardKeyboard = false
HasFiveWayNavigation = false
GL.Version = 196610
Screen.Density = 420
Screen.Width = 1080
Screen.Height = 1794
Platforms = arm64-v8a,armeabi-v7a,armeabi
SharedLibraries = android.ext.services,android.ext.shared,android.test.mock,android.test.runner,com.android.future.usb.accessory,com.android.ims.rcsmanager,com.android.location.provider,com.android.media.remotedisplay,com.android.mediadrm.signer,com.google.android.camera.experimental2017,com.google.android.dialer.support,com.google.android.gms,com.google.android.hardwareinfo,com.google.android.maps,com.google.android.media.effects,com.google.libletango_device,com.google.vr.platform,com.qti.vzw.ims.internal,com.qualcomm.embmslibrary,com.qualcomm.qcrilhook,com.qualcomm.qti.QtiTelephonyServicelibrary,com.quicinc.cne,com.quicinc.cneapiclient,com.verizon.embms,com.verizon.provider,com.vzw.apnlib,javax.obex,org.apache.http.legacy
Features = android.hardware.audio.low_latency,android.hardware.audio.output,android.hardware.audio.pro,android.hardware.bluetooth,android.hardware.bluetooth_le,android.hardware.camera,android.hardware.camera.any,android.hardware.camera.autofocus,android.hardware.camera.capability.manual_post_processing,android.hardware.camera.capability.manual_sensor,android.hardware.camera.capability.raw,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.camera.level.full,android.hardware.faketouch,android.hardware.fingerprint,android.hardware.location,android.hardware.location.gps,android.hardware.location.network,android.hardware.microphone,android.hardware.nfc,android.hardware.nfc.any,android.hardware.nfc.hce,android.hardware.nfc.hcef,android.hardware.opengles.aep,android.hardware.ram.normal,android.hardware.screen.landscape,android.hardware.screen.portrait,android.hardware.sensor.accelerometer,android.hardware.sensor.barometer,android.hardware.sensor.compass,android.hardware.sensor.gyroscope,android.hardware.sensor.hifi_sensors,android.hardware.sensor.light,android.hardware.sensor.proximity,android.hardware.sensor.stepcounter,android.hardware.sensor.stepdetector,android.hardware.telephony,android.hardware.telephony.carrierlock,android.hardware.telephony.cdma,android.hardware.telephony.euicc,android.hardware.telephony.gsm,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.hardware.touchscreen.multitouch.distinct,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.usb.accessory,android.hardware.usb.host,android.hardware.vr.headtracking,android.hardware.vr.high_performance,android.hardware.vulkan.compute,android.hardware.vulkan.level,android.hardware.vulkan.version,android.hardware.wifi,android.hardware.wifi.aware,android.hardware.wifi.direct,android.hardware.wifi.passpoint,android.software.activities_on_secondary_displays,android.software.app_widgets,android.software.autofill,android.software.backup,android.software.companion_device_setup,android.software.connectionservice,android.software.cts,android.software.device_admin,android.software.file_based_encryption,android.software.home_screen,android.software.input_methods,android.software.live_wallpaper,android.software.managed_users,android.software.midi,android.software.picture_in_picture,android.software.print,android.software.securely_removes_users,android.software.sip,android.software.sip.voip,android.software.voice_recognizers,android.software.vr.mode,android.software.webview,com.google.android.apps.dialer.SUPPORTED,com.google.android.apps.photos.NEXUS_PRELOAD,com.google.android.apps.photos.PIXEL_2017_PRELOAD,com.google.android.apps.photos.nexus_preload,com.google.android.feature.EXCHANGE_6_2,com.google.android.feature.GOOGLE_BUILD,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.PIXEL_2017_EXPERIENCE,com.google.android.feature.PIXEL_EXPERIENCE,com.google.android.feature.ZERO_TOUCH,com.google.hardware.camera.easel,com.verizon.hardware.telephony.ehrpd,com.verizon.hardware.telephony.lte
Locales = af,af_ZA,am,am_ET,ar,ar_EG,ar_XB,ast,az,be,bg,bg_BG,bn,bs,ca,ca_ES,cs,cs_CZ,da,da_DK,de,de_DE,el,el_GR,en,en_AU,en_CA,en_GB,en_IN,en_US,en_XA,es,es_ES,es_US,et,eu,fa,fa_IR,fi,fi_FI,fil,fil_PH,fr,fr_BE,fr_CA,fr_FR,gl,gu,hi,hi_IN,hr,hr_HR,hu,hu_HU,hy,in,in_ID,is,it,it_IT,iw,iw_IL,ja,ja_JP,ka,kk,km,kn,ko,ko_KR,ky,lo,lt,lt_LT,lv,lv_LV,mk,ml,mn,mr,ms,ms_MY,my,nb,nb_NO,ne,nl,nl_NL,pa,pl,pl_PL,pt,pt_BR,pt_PT,ro,ro_RO,ru,ru_RU,si,sk,sk_SK,sl,sl_SI,sq,sr,sr_Latn,sr_RS,sv,sv_SE,sw,sw_TZ,ta,te,th,th_TH,tr,tr_TR,uk,uk_UA,ur,uz,vi,vi_VN,zh,zh_CN,zh_HK,zh_TW,zu,zu_ZA
GSF.version = 11951940
Vending.version = 80853900
Vending.versionString = 8.5.39.W-all [0] [PR] 178322352
CellOperator = 310260
SimOperator = 310260
TimeZone = America/New_York
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_EGL_image_array,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_clip_cull_distance,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_external_buffer,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_multisampled_render_to_texture2,GL_EXT_primitive_bounding_box,GL_EXT_protected_textures,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_shader_non_constant_global_initializers,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_NV_shader_noperspective_interpolation,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_image_external_essl3,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_framebuffer_foveated,GL_QCOM_shader_framebuffer_fetch_noncoherent,GL_QCOM_tiled_rendering
Roaming = mobile-notroaming
Client = android-google

View file

@ -0,0 +1,33 @@
UserReadableName = WeTek Play 2 Smart TV (api 22)
Build.HARDWARE = amlogic
Build.RADIO = unknown
Build.BOOTLOADER = unknown
Build.FINGERPRINT = WeTek/wetekplay2/wetekplay2:5.1.1/LMY47V/20170119:user/release-keys
Build.BRAND = WeTek
Build.DEVICE = wetekplay2
Build.VERSION.SDK_INT = 22
Build.MODEL = Play 2
Build.MANUFACTURER = WeTek
Build.PRODUCT = wetekplay2
TouchScreen = 1
Keyboard = 1
Navigation = 2
ScreenLayout = 4
HasHardKeyboard = false
HasFiveWayNavigation = true
Screen.Density = 240
Screen.Width = 1920
Screen.Height = 1080
Platforms = armeabi-v7a,armeabi
SharedLibraries = com.google.widevine.software.drm,com.google.android.media.effects,com.android.location.provider,AmlogicPPPoE,com.android.future.usb.accessory,javax.obex,com.google.android.gms,android.test.runner,com.google.android.maps,com.android.media.remotedisplay,com.android.mediadrm.signer
Features = android.hardware.sensor.proximity,android.hardware.sensor.accelerometer,android.hardware.faketouch,org.cyanogenmod.appsuggest,android.hardware.usb.accessory,android.hardware.telephony.cdma,android.software.backup,android.hardware.touchscreen,android.hardware.touchscreen.multitouch,android.software.print,android.hardware.consumerir,org.cyanogenmod.partner,org.cyanogenmod.telephony,android.software.voice_recognizers,android.hardware.fingerprint,android.hardware.sensor.gyroscope,android.hardware.audio.low_latency,android.hardware.opengles.aep,android.hardware.bluetooth,android.hardware.camera.autofocus,com.google.android.feature.GOOGLE_BUILD,android.hardware.telephony.gsm,android.software.sip.voip,org.cyanogenmod.profiles,android.hardware.usb.host,com.cyanogenmod.android,android.hardware.audio.output,android.hardware.camera.flash,android.hardware.camera.front,android.hardware.sensor.hifi_sensors,android.hardware.screen.portrait,android.hardware.nfc,com.nxp.mifare,android.hardware.sensor.stepdetector,org.cyanogenmod.audio,org.cyanogenmod.theme,android.software.home_screen,android.hardware.microphone,org.cyanogenmod.statusbar,android.hardware.bluetooth_le,android.hardware.sensor.compass,android.hardware.touchscreen.multitouch.jazzhand,android.hardware.sensor.barometer,android.software.app_widgets,android.software.input_methods,android.hardware.sensor.light,android.software.device_admin,android.hardware.camera,org.cyanogenmod.hardware,android.hardware.screen.landscape,org.cyanogenmod.weather,org.cyanogenmod.performance,android.software.managed_users,android.software.webview,android.hardware.sensor.stepcounter,android.hardware.camera.capability.manual_post_processing,org.cyanogenmod.livedisplay,android.hardware.camera.any,android.hardware.camera.capability.raw,android.software.connectionservice,android.hardware.touchscreen.multitouch.distinct,android.hardware.location.network,android.software.sip,android.hardware.camera.capability.manual_sensor,android.hardware.camera.level.full,android.hardware.wifi.direct,android.software.live_wallpaper,com.google.android.feature.GOOGLE_EXPERIENCE,com.google.android.feature.EXCHANGE_6_2,org.cyanogenmod.theme.v1,org.cyanogenmod.livelockscreen,android.hardware.location.gps,android.software.midi,android.hardware.nfc.hce,android.hardware.wifi,android.hardware.location,android.hardware.telephony
Locales = af,af_NA,af_ZA,agq,ak,ak_GH,am,am_ET,ar,ar_AE,ar_BH,ar_DJ,ar_DZ,ar_EG,ar_EH,ar_ER,ar_IL,ar_IQ,ar_JO,ar_KM,ar_KW,ar_LB,ar_LY,ar_MA,ar_MR,ar_OM,ar_PS,ar_QA,ar_SA,ar_SD,ar_SO,ar_SS,ar_SY,ar_TD,ar_TN,ar_YE,as,as_IN,asa,az,bas,be,be_BY,bem,bez,bg,bg_BG,bm,bm_ML,bn,bn_BD,bn_IN,bo,bo_CN,bo_IN,br,br_FR,brx,bs,ca,ca_AD,ca_ES,ca_FR,ca_IT,cgg,chr,cs,cs_CZ,cy,cy_GB,da,da_DK,da_GL,dav,de,de_AT,de_BE,de_CH,de_DE,de_LI,de_LU,dje,dua,dyo,dz,dz_BT,ebu,ee,ee_GH,ee_TG,el,el_CY,el_GR,en,en_AG,en_AI,en_AS,en_AU,en_BB,en_BE,en_BM,en_BS,en_BW,en_BZ,en_CA,en_CC,en_CK,en_CM,en_CX,en_DG,en_DM,en_ER,en_FJ,en_FK,en_FM,en_GB,en_GD,en_GG,en_GH,en_GI,en_GM,en_GU,en_GY,en_HK,en_IE,en_IM,en_IN,en_IO,en_JE,en_JM,en_KE,en_KI,en_KN,en_KY,en_LC,en_LR,en_LS,en_MG,en_MH,en_MO,en_MP,en_MS,en_MT,en_MU,en_MW,en_NA,en_NF,en_NG,en_NR,en_NU,en_NZ,en_PG,en_PH,en_PK,en_PN,en_PR,en_PW,en_RW,en_SB,en_SC,en_SD,en_SG,en_SH,en_SL,en_SS,en_SX,en_SZ,en_TC,en_TK,en_TO,en_TT,en_TV,en_TZ,en_UG,en_UM,en_US,en_VC,en_VG,en_VI,en_VU,en_WS,en_ZA,en_ZM,en_ZW,eo,es,es_AR,es_BO,es_CL,es_CO,es_CR,es_CU,es_DO,es_EA,es_EC,es_ES,es_GQ,es_GT,es_HN,es_IC,es_MX,es_NI,es_PA,es_PE,es_PH,es_PR,es_PY,es_SV,es_US,es_UY,es_VE,et,et_EE,eu,eu_ES,ewo,fa,fa_AF,fa_IR,ff,ff_SN,fi,fi_FI,fil,fo,fo_FO,fr,fr_BE,fr_BF,fr_BI,fr_BJ,fr_BL,fr_CA,fr_CD,fr_CF,fr_CG,fr_CH,fr_CI,fr_CM,fr_DJ,fr_DZ,fr_FR,fr_GA,fr_GF,fr_GN,fr_GP,fr_GQ,fr_HT,fr_KM,fr_LU,fr_MA,fr_MC,fr_MF,fr_MG,fr_ML,fr_MQ,fr_MR,fr_MU,fr_NC,fr_NE,fr_PF,fr_PM,fr_RE,fr_RW,fr_SC,fr_SN,fr_SY,fr_TD,fr_TG,fr_TN,fr_VU,fr_WF,fr_YT,ga,ga_IE,gl,gl_ES,gsw,gu,gu_IN,guz,gv,gv_IM,ha,haw,iw,iw_IL,hi,hi_IN,hr,hr_BA,hr_HR,hu,hu_HU,hy,hy_AM,in,in_ID,ig,ig_NG,ii,ii_CN,is,is_IS,it,it_CH,it_IT,it_SM,ja,ja_JP,jgo,jmc,ka,ka_GE,kab,kam,kde,kea,khq,ki,ki_KE,kk,kkj,kl,kl_GL,kln,km,km_KH,kn,kn_IN,ko,ko_KP,ko_KR,kok,ks,ksb,ksf,kw,kw_GB,ky,lag,lg,lg_UG,lkt,ln,ln_AO,ln_CD,ln_CF,ln_CG,lo,lo_LA,lt,lt_LT,lu,lu_CD,luo,luy,lv,lv_LV,mas,mer,mfe,mg,mg_MG,mgh,mgo,mk,mk_MK,ml,ml_IN,mn,mr,mr_IN,ms,mt,mt_MT,mua,my,my_MM,naq,nb,nb_NO,nb_SJ,nd,nd_ZW,ne,ne_IN,ne_NP,nl,nl_AW,nl_BE,nl_BQ,nl_CW,nl_NL,nl_SR,nl_SX,nmg,nn,nn_NO,nnh,nus,nyn,om,om_ET,om_KE,or,or_IN,pa,pl,pl_PL,ps,ps_AF,pt,pt_AO,pt_BR,pt_CV,pt_GW,pt_MO,pt_MZ,pt_PT,pt_ST,pt_TL,rm,rm_CH,rn,rn_BI,ro,ro_MD,ro_RO,rof,ru,ru_BY,ru_KG,ru_KZ,ru_MD,ru_RU,ru_UA,rw,rw_RW,rwk,saq,sbp,seh,ses,sg,sg_CF,shi,si,si_LK,sk,sk_SK,sl,sl_SI,sn,sn_ZW,so,so_DJ,so_ET,so_KE,so_SO,sq,sq_AL,sq_MK,sq_XK,sr,sv,sv_AX,sv_FI,sv_SE,sw,sw_KE,sw_TZ,sw_UG,swc,ta,ta_IN,ta_LK,ta_MY,ta_SG,te,te_IN,teo,th,th_TH,ti,ti_ER,ti_ET,to,to_TO,tr,tr_CY,tr_TR,twq,tzm,ug,uk,uk_UA,ur,ur_IN,ur_PK,uz,vai,vi,vi_VN,vun,xog,yav,yo,yo_BJ,yo_NG,zgh,zh,zu,zu_ZA
Roaming = mobile-notroaming
TimeZone = Europe/Berlin
GSF.version = 11055448
Vending.version = 80798000
GL.Extensions = GL_AMD_compressed_ATC_texture,GL_AMD_performance_monitor,GL_ANDROID_extension_pack_es31a,GL_APPLE_texture_2D_limited_npot,GL_ARB_vertex_buffer_object,GL_ARM_shader_framebuffer_fetch_depth_stencil,GL_EXT_YUV_target,GL_EXT_blit_framebuffer_params,GL_EXT_buffer_storage,GL_EXT_color_buffer_float,GL_EXT_color_buffer_half_float,GL_EXT_copy_image,GL_EXT_debug_label,GL_EXT_debug_marker,GL_EXT_discard_framebuffer,GL_EXT_disjoint_timer_query,GL_EXT_draw_buffers_indexed,GL_EXT_geometry_shader,GL_EXT_gpu_shader5,GL_EXT_multisampled_render_to_texture,GL_EXT_primitive_bounding_box,GL_EXT_robustness,GL_EXT_sRGB,GL_EXT_sRGB_write_control,GL_EXT_shader_framebuffer_fetch,GL_EXT_shader_io_blocks,GL_EXT_tessellation_shader,GL_EXT_texture_border_clamp,GL_EXT_texture_buffer,GL_EXT_texture_cube_map_array,GL_EXT_texture_filter_anisotropic,GL_EXT_texture_format_BGRA8888,GL_EXT_texture_norm16,GL_EXT_texture_sRGB_R8,GL_EXT_texture_sRGB_decode,GL_EXT_texture_type_2_10_10_10_REV,GL_KHR_blend_equation_advanced,GL_KHR_blend_equation_advanced_coherent,GL_KHR_debug,GL_KHR_no_error,GL_KHR_texture_compression_astc_hdr,GL_KHR_texture_compression_astc_ldr,GL_OES_EGL_image,GL_OES_EGL_image_external,GL_OES_EGL_sync,GL_OES_blend_equation_separate,GL_OES_blend_func_separate,GL_OES_blend_subtract,GL_OES_compressed_ETC1_RGB8_texture,GL_OES_compressed_paletted_texture,GL_OES_depth24,GL_OES_depth_texture,GL_OES_depth_texture_cube_map,GL_OES_draw_texture,GL_OES_element_index_uint,GL_OES_framebuffer_object,GL_OES_get_program_binary,GL_OES_matrix_palette,GL_OES_packed_depth_stencil,GL_OES_point_size_array,GL_OES_point_sprite,GL_OES_read_format,GL_OES_rgb8_rgba8,GL_OES_sample_shading,GL_OES_sample_variables,GL_OES_shader_image_atomic,GL_OES_shader_multisample_interpolation,GL_OES_standard_derivatives,GL_OES_stencil_wrap,GL_OES_surfaceless_context,GL_OES_texture_3D,GL_OES_texture_compression_astc,GL_OES_texture_cube_map,GL_OES_texture_env_crossbar,GL_OES_texture_float,GL_OES_texture_float_linear,GL_OES_texture_half_float,GL_OES_texture_half_float_linear,GL_OES_texture_mirrored_repeat,GL_OES_texture_npot,GL_OES_texture_stencil8,GL_OES_texture_storage_multisample_2d_array,GL_OES_vertex_array_object,GL_OES_vertex_half_float,GL_OVR_multiview,GL_OVR_multiview2,GL_OVR_multiview_multisampled_render_to_texture,GL_QCOM_alpha_test,GL_QCOM_extended_get,GL_QCOM_tiled_rendering,GL_EXT_multi_draw_arrays,GL_EXT_shader_texture_lod,GL_IMG_multisampled_render_to_texture,GL_IMG_program_binary,GL_IMG_read_format,GL_IMG_shader_binary,GL_IMG_texture_compression_pvrtc,GL_IMG_texture_format_BGRA8888,GL_IMG_texture_npot,GL_IMG_vertex_array_object,GL_OES_byte_coordinates,GL_OES_extended_matrix_palette,GL_OES_fixed_point,GL_OES_fragment_precision_high,GL_OES_mapbuffer,GL_OES_matrix_get,GL_OES_query_matrix,GL_OES_required_internalformat,GL_OES_single_precision,GL_OES_stencil8
CellOperator = 310260
Client = android-google
GL.Version = 131072
SimOperator = 310260

View file

@ -4,6 +4,12 @@
-keep class app.revanced.** {
*;
}
-keep class com.aurora.** {
*;
}
-keep class com.dragons.** {
*;
}
-keep class com.liskovsoft.** {
*;
}
@ -49,6 +55,3 @@
# R8 full mode strips generic signatures from return types if not kept.
-if interface * { @retrofit2.http.* public *** *(...); }
-keep,allowoptimization,allowshrinking,allowobfuscation class <3>
# With R8 full mode generic signatures are stripped for classes that are not kept.
-keep,allowobfuscation,allowshrinking class retrofit2.Response

View file

@ -198,6 +198,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting DISABLE_MUSIC_VIDEO_IN_ALBUM = new BooleanSetting("revanced_disable_music_video_in_album", FALSE, true);
public static final EnumSetting<RedirectType> DISABLE_MUSIC_VIDEO_IN_ALBUM_REDIRECT_TYPE = new EnumSetting<>("revanced_disable_music_video_in_album_redirect_type", RedirectType.REDIRECT, true);
public static final BooleanSetting SETTINGS_IMPORT_EXPORT = new BooleanSetting("revanced_settings_import_export", FALSE, false);
public static final BooleanSetting SPOOF_STREAMING_DATA_NO_SDK_AUTH_TOKEN_ABOUT = new BooleanSetting("revanced_spoof_streaming_data_no_sdk_auth_token_about", FALSE, false);
public static final BooleanSetting SPOOF_STREAMING_DATA_VR_AUTH_TOKEN_ABOUT = new BooleanSetting("revanced_spoof_streaming_data_vr_auth_token_about", FALSE, false);
public static final BooleanSetting APP_INFO = new BooleanSetting("revanced_app_info", FALSE, false);
@ -296,6 +297,7 @@ public class Settings extends BaseSettings {
SETTINGS_IMPORT_EXPORT.key,
SPOOF_APP_VERSION_TARGET.key,
SPOOF_STREAMING_DATA_DEFAULT_CLIENT.key,
SPOOF_STREAMING_DATA_NO_SDK_AUTH_TOKEN_ABOUT.key,
SPOOF_STREAMING_DATA_VR_AUTH_TOKEN_ABOUT.key,
WATCH_HISTORY_TYPE.key,
};

View file

@ -19,6 +19,7 @@ import static app.revanced.extension.music.settings.Settings.SB_API_URL;
import static app.revanced.extension.music.settings.Settings.SETTINGS_IMPORT_EXPORT;
import static app.revanced.extension.music.settings.Settings.SPOOF_APP_VERSION_TARGET;
import static app.revanced.extension.music.settings.Settings.SPOOF_STREAMING_DATA_DEFAULT_CLIENT;
import static app.revanced.extension.music.settings.Settings.SPOOF_STREAMING_DATA_NO_SDK_AUTH_TOKEN_ABOUT;
import static app.revanced.extension.music.settings.Settings.SPOOF_STREAMING_DATA_VR_AUTH_TOKEN_ABOUT;
import static app.revanced.extension.music.settings.Settings.WATCH_HISTORY_TYPE;
import static app.revanced.extension.music.utils.ExtendedUtils.getDialogBuilder;
@ -169,8 +170,10 @@ public class ReVancedPreferenceFragment extends PreferenceFragment {
YouTubeDataAPIDialogBuilder.showDialog(mActivity);
} else if (settings.equals(REPLACE_NAVIGATION_BUTTON_ABOUT)) {
ResettableListPreference.showDialog(mActivity, CHANGE_START_PAGE, 0);
} else if (settings.equals(SPOOF_STREAMING_DATA_NO_SDK_AUTH_TOKEN_ABOUT)) {
SpoofStreamingDataAuthTokenDialogBuilder.showNoSDKDialog(mActivity);
} else if (settings.equals(SPOOF_STREAMING_DATA_VR_AUTH_TOKEN_ABOUT)) {
SpoofStreamingDataVRAuthTokenDialogBuilder.showDialog(mActivity);
SpoofStreamingDataAuthTokenDialogBuilder.showVRDialog(mActivity);
} else {
Logger.printDebug(() -> "Failed to find the right value: " + dataString);
}

View file

@ -0,0 +1,72 @@
package app.revanced.extension.music.settings.preference;
import static app.revanced.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.app.AlertDialog;
import app.revanced.extension.shared.patches.auth.YouTubeAuthPatch;
import app.revanced.extension.shared.patches.auth.YouTubeVRAuthPatch;
import app.revanced.extension.shared.utils.IntentUtils;
import app.revanced.extension.shared.utils.Utils;
public class SpoofStreamingDataAuthTokenDialogBuilder {
public static void showNoSDKDialog(Activity mActivity) {
AlertDialog.Builder builder = Utils.getDialogBuilder(mActivity);
String dialogTitle =
str("revanced_spoof_streaming_data_no_sdk_auth_token_dialog_title");
String dialogMessage =
str("revanced_spoof_streaming_data_no_sdk_auth_token_dialog_message");
String resetButtonText =
str("revanced_spoof_streaming_data_no_sdk_auth_token_dialog_reset_text");
String okButtonText =
str("revanced_spoof_streaming_data_no_sdk_auth_token_dialog_get_authorization_token_text");
builder.setTitle(dialogTitle);
builder.setMessage(dialogMessage);
builder.setNeutralButton(resetButtonText, (dialog, id) -> YouTubeAuthPatch.clearAll());
builder.setPositiveButton(okButtonText, (dialog, id) -> IntentUtils.launchWebViewActivity(
mActivity,
true,
true,
false,
false,
true,
"https://accounts.google.com/EmbeddedSetup"
));
builder.show();
}
public static void showVRDialog(Activity mActivity) {
AlertDialog.Builder builder = Utils.getDialogBuilder(mActivity);
String dialogTitle =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_title");
String dialogMessage =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_message");
String resetButtonText =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_reset_text");
builder.setTitle(dialogTitle);
builder.setMessage(dialogMessage);
builder.setNeutralButton(resetButtonText, (dialog, id) -> YouTubeVRAuthPatch.clearAll());
if (YouTubeVRAuthPatch.isDeviceCodeAvailable()) {
String okButtonText =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_get_authorization_token_text");
builder.setPositiveButton(okButtonText, (dialog, id) -> {
YouTubeVRAuthPatch.setRefreshToken();
YouTubeVRAuthPatch.setAccessToken(true);
});
} else {
String okButtonText =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_get_activation_code_text");
builder.setPositiveButton(okButtonText, (dialog, id) -> {
YouTubeVRAuthPatch.setActivationCode(mActivity);
});
}
builder.show();
}
}

View file

@ -1,43 +0,0 @@
package app.revanced.extension.music.settings.preference;
import static app.revanced.extension.shared.utils.StringRef.str;
import android.app.Activity;
import android.app.AlertDialog;
import app.revanced.extension.shared.patches.auth.AuthPatch;
import app.revanced.extension.shared.utils.Utils;
public class SpoofStreamingDataVRAuthTokenDialogBuilder {
public static void showDialog(Activity mActivity) {
AlertDialog.Builder builder = Utils.getDialogBuilder(mActivity);
String dialogTitle =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_title");
String dialogMessage =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_message");
String resetButtonText =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_reset_text");
builder.setTitle(dialogTitle);
builder.setMessage(dialogMessage);
builder.setNeutralButton(resetButtonText, (dialog, id) -> AuthPatch.clearAll());
if (AuthPatch.isDeviceCodeAvailable()) {
String okButtonText =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_get_authorization_token_text");
builder.setPositiveButton(okButtonText, (dialog, id) -> {
AuthPatch.setRefreshToken();
AuthPatch.setAccessToken(true);
});
} else {
String okButtonText =
str("revanced_spoof_streaming_data_vr_auth_token_dialog_get_activation_code_text");
builder.setPositiveButton(okButtonText, (dialog, id) -> {
AuthPatch.setActivationCode(mActivity);
});
}
builder.show();
}
}

View file

@ -1,6 +1,5 @@
package app.revanced.extension.shared.innertube.client
import android.annotation.SuppressLint
import android.os.Build
import app.revanced.extension.shared.innertube.utils.J2V8Support.supportJ2V8
import app.revanced.extension.shared.settings.BaseSettings
@ -25,72 +24,6 @@ object YouTubeClient {
private const val CLIENT_REFERER_FORMAT_WEB = "https://www.youtube.com/watch?v=%s"
private const val CLIENT_REFERER_FORMAT_MWEB = "https://m.youtube.com/watch?v=%s"
// IOS_DEPRECATED
private const val PACKAGE_NAME_IOS_DEPRECATED = "com.google.ios.youtube"
private val CLIENT_VERSION_IOS_DEPRECATED = if (forceAVC())
"17.40.5"
else
"20.20.7"
private val DEVICE_MODEL_IOS_DEPRECATED = if (forceAVC())
"iPhone12,5" // 11 Pro Max. (last device with iOS 13)
else
"iPhone17,2" // 16 Pro Max.
private val OS_VERSION_IOS_DEPRECATED = if (forceAVC())
"13.7.17H35" // Last release of iOS 13.
else
"18.5.22F76"
private val USER_AGENT_VERSION_IOS_DEPRECATED = if (forceAVC())
"13_7"
else
"18_5"
@SuppressLint("ConstantLocale")
private val USER_AGENT_IOS_DEPRECATED =
"$PACKAGE_NAME_IOS_DEPRECATED/$CLIENT_VERSION_IOS_DEPRECATED ($DEVICE_MODEL_IOS_DEPRECATED; U; CPU iOS $USER_AGENT_VERSION_IOS_DEPRECATED like Mac OS X; ${Locale.getDefault()})"
// IOS UNPLUGGED
/**
* Video not playable: Paid / Movie / Playlists / Music.
* Note: Audio track available.
*/
private const val PACKAGE_NAME_IOS_UNPLUGGED = "com.google.ios.youtubeunplugged"
/**
* The hardcoded client version of the iOS app used for InnerTube requests with this client.
*
* It can be extracted by getting the latest release version of the app on
* [the App Store page of the YouTube TV app](https://apps.apple.com/us/app/youtube-tv/id1193350206/),
* in the `Whats New` section.
*/
private val CLIENT_VERSION_IOS_UNPLUGGED = if (forceAVC())
"6.45"
else
"9.33"
private const val DEVICE_MAKE_IOS_UNPLUGGED = "Apple"
private const val OS_NAME_IOS_UNPLUGGED = "iOS"
/**
* The device machine id for the iPhone 16 Pro Max (iPhone17,2),
* used to get HDR with AV1 hardware decoding.
* See [this GitHub Gist](https://gist.github.com/adamawolf/3048717) for more information.
*/
private val DEVICE_MODEL_IOS_UNPLUGGED = if (forceAVC())
"iPhone12,5" // 11 Pro Max. (last device with iOS 13)
else
"iPhone17,2" // 16 Pro Max.
private val OS_VERSION_IOS_UNPLUGGED = if (forceAVC())
"13.7.17H35" // Last release of iOS 13.
else
"18.6.2.22G100"
private val USER_AGENT_VERSION_IOS_UNPLUGGED = if (forceAVC())
"13_7"
else
"18_6_2"
@SuppressLint("ConstantLocale")
private val USER_AGENT_IOS_UNPLUGGED =
"$PACKAGE_NAME_IOS_UNPLUGGED/$CLIENT_VERSION_IOS_UNPLUGGED ($DEVICE_MODEL_IOS_UNPLUGGED; U; CPU iOS $USER_AGENT_VERSION_IOS_UNPLUGGED like Mac OS X; ${Locale.getDefault()})"
private const val DEVICE_MAKE_APPLE = "Apple"
@ -108,8 +41,8 @@ object YouTubeClient {
// ANDROID (NO SDK)
/**
* Video not playable: Paid / Movie / Private / Age-restricted.
* Note: The 'Authorization' key must be excluded from the header.
* Video not playable: None.
* Note: Clients other than Android YouTube (com.google.android.youtube) require an OAuth2 token.
*
* According to TeamNewPipe in 2022, if the 'androidSdkVersion' field is missing, the GVS did not return a valid response:
* [NewPipe#8713 (comment)](https://github.com/TeamNewPipe/NewPipe/issues/8713#issuecomment-1207443550).
@ -377,10 +310,6 @@ object YouTubeClient {
return BaseSettings.SPOOF_STREAMING_DATA_VR_ENABLE_AV1.get()
}
private fun forceAVC(): Boolean {
return BaseSettings.SPOOF_STREAMING_DATA_IOS_FORCE_AVC.get()
}
private fun useJS(): Boolean {
return supportJ2V8() && BaseSettings.SPOOF_STREAMING_DATA_USE_JS.get()
}
@ -388,13 +317,7 @@ object YouTubeClient {
@JvmStatic
fun availableClientTypes(preferredClient: ClientType): Array<ClientType> {
val availableClientTypes: Array<ClientType> = if (useJS()) {
if (preferredClient == ClientType.MWEB) {
// If playback fails with MWEB, it will fall back to TV.
ClientType.CLIENT_ORDER_TO_USE_JS_PREFER_TV
} else {
// Default order of JS clients.
ClientType.CLIENT_ORDER_TO_USE_JS
}
ClientType.CLIENT_ORDER_TO_USE_JS
} else {
ClientType.CLIENT_ORDER_TO_USE
}
@ -510,7 +433,6 @@ object YouTubeClient {
userAgent = USER_AGENT_ANDROID_NO_SDK,
androidSdkVersion = ANDROID_SDK_VERSION_ANDROID_NO_SDK,
clientVersion = CLIENT_VERSION_ANDROID_NO_SDK,
supportsCookies = false,
supportsMultiAudioTracks = true,
clientName = "ANDROID",
friendlyName = "Android No SDK"
@ -557,38 +479,7 @@ object YouTubeClient {
clientName = "ANDROID_CREATOR",
friendlyName = "Android Studio"
),
IOS_DEPRECATED(
id = 5,
deviceMake = DEVICE_MAKE_IOS_UNPLUGGED,
deviceModel = DEVICE_MODEL_IOS_DEPRECATED,
osName = OS_NAME_IOS_UNPLUGGED,
osVersion = OS_VERSION_IOS_DEPRECATED,
userAgent = USER_AGENT_IOS_DEPRECATED,
clientVersion = CLIENT_VERSION_IOS_DEPRECATED,
supportsCookies = false,
clientName = "IOS",
friendlyName = if (forceAVC())
"iOS Force AVC"
else
"iOS"
),
IOS_UNPLUGGED(
id = 33,
deviceMake = DEVICE_MAKE_IOS_UNPLUGGED,
deviceModel = DEVICE_MODEL_IOS_UNPLUGGED,
osName = OS_NAME_IOS_UNPLUGGED,
osVersion = OS_VERSION_IOS_UNPLUGGED,
userAgent = USER_AGENT_IOS_UNPLUGGED,
clientVersion = CLIENT_VERSION_IOS_UNPLUGGED,
requireAuth = true,
clientName = "IOS_UNPLUGGED",
friendlyName = if (forceAVC())
"iOS TV Force AVC"
else
"iOS TV"
),
// Fallback client, not yet released.
// PoToken required?
IPADOS(
id = 5,
@ -708,37 +599,23 @@ object YouTubeClient {
companion object {
val CLIENT_ORDER_TO_USE: Array<ClientType> = arrayOf(
ANDROID_NO_SDK,
ANDROID_VR,
VISIONOS,
ANDROID_CREATOR,
ANDROID_NO_SDK,
IPADOS,
ANDROID_VR_AUTH,
IOS_DEPRECATED,
)
val CLIENT_ORDER_TO_USE_JS: Array<ClientType> = arrayOf(
ANDROID_NO_SDK,
ANDROID_VR,
VISIONOS,
ANDROID_CREATOR,
ANDROID_NO_SDK,
IPADOS,
TV,
TV_SIMPLY_NO_POTOKEN,
TV_LEGACY,
ANDROID_VR_AUTH,
IOS_DEPRECATED,
)
val CLIENT_ORDER_TO_USE_JS_PREFER_TV: Array<ClientType> = arrayOf(
TV,
ANDROID_VR,
VISIONOS,
ANDROID_CREATOR,
ANDROID_NO_SDK,
IPADOS,
TV_SIMPLY_NO_POTOKEN,
TV_LEGACY,
ANDROID_VR_AUTH,
IOS_DEPRECATED,
)
}
}

View file

@ -7,7 +7,6 @@ import app.revanced.extension.shared.requests.Route.CompiledRoute
import app.revanced.extension.shared.utils.Logger
import app.revanced.extension.shared.utils.StringRef.str
import app.revanced.extension.shared.utils.Utils
import com.liskovsoft.youtubeapi.app.PoTokenGate
import org.apache.commons.lang3.StringUtils
import org.json.JSONArray
import org.json.JSONException
@ -97,7 +96,6 @@ object InnerTubeRequestBody {
fun createJSRequestBody(
clientType: YouTubeClient.ClientType,
videoId: String,
cpn: String = "",
isGVS: Boolean = false,
isInlinePlayback: Boolean = false,
): ByteArray {
@ -127,9 +125,6 @@ object InnerTubeRequestBody {
innerTubeBody.put("racyCheckOk", true)
innerTubeBody.put("contentCheckOk", true)
innerTubeBody.put("videoId", videoId)
if (cpn.isNotEmpty()) {
innerTubeBody.put("cpn", cpn)
}
val user = JSONObject()
user.put("lockedSafetyMode", false)
@ -137,7 +132,6 @@ object InnerTubeRequestBody {
if (isGVS) {
val contentPlaybackContext = JSONObject()
val requirePoToken = clientType.requirePoToken
if (clientType.refererFormat != null) {
contentPlaybackContext.put(
"referer",
@ -164,15 +158,6 @@ object InnerTubeRequestBody {
playbackContext.put("devicePlaybackCapabilities", devicePlaybackCapabilities)
innerTubeBody.put("playbackContext", playbackContext)
if (requirePoToken) {
val playerRequestPoToken = PoTokenGate.getWebContentPoToken(videoId)
if (playerRequestPoToken != null) {
val serviceIntegrityDimensions = JSONObject()
serviceIntegrityDimensions.put("poToken", playerRequestPoToken)
innerTubeBody.put("serviceIntegrityDimensions", serviceIntegrityDimensions)
}
}
}
} catch (e: JSONException) {
Logger.printException({ "Failed to create js innerTubeBody" }, e)

View file

@ -22,15 +22,6 @@ object InnerTubeRoutes {
params = arrayOf("fields=status," + "playlistEditResults"),
)
@JvmField
val GET_AUDIO_TRACK = compileRoute(
endpoint = "player",
params = arrayOf(
"fields=captions.playerCaptionsTracklistRenderer.audioTracks," +
"streamingData.adaptiveFormats.audioTrack"
)
)
@JvmField
val GET_CATEGORY = compileRoute(
endpoint = "player",

View file

@ -10,6 +10,8 @@ import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.util.HashMap;
import java.util.Map;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import app.revanced.extension.shared.utils.Logger;
@ -87,6 +89,18 @@ public class AuthUtils {
return cookies;
}
public static Map<String, String> parseCookieString(String cookies) {
Map<String, String> cookieList = new HashMap<>();
Pattern cookiePattern = Pattern.compile("([^=]+)=([^;]*);?\\s?");
Matcher matcher = cookiePattern.matcher(cookies);
while (matcher.find()) {
String cookieKey = matcher.group(1);
String cookieValue = matcher.group(2);
cookieList.put(cookieKey, cookieValue);
}
return cookieList;
}
public static String sha1(String input) {
try {
MessageDigest digest = MessageDigest.getInstance("SHA-1");

View file

@ -38,43 +38,6 @@ public class StreamingDataOuterClassUtils {
return null;
}
/**
* Add the desired formats to the ArrayList in AdaptiveFormats.
*
* @param streamingData StreamingData (GeneratedMessage) parsed by ProtoParser.
* @param arrayList An ArrayList where formats are added, this is what is actually used for playback.
* Since formats that are not in this ArrayList will not be used for playback, you can filter by not adding unwanted formats.
* See {@link #removeAV1Codecs(ArrayList)} for examples.
* @param isVideo This method only distinguishes between video and audio formats.
*/
public static void setAdaptiveFormats(StreamingDataOuterClass.StreamingData streamingData, ArrayList<Object> arrayList, boolean isVideo) {
try {
List<?> adaptiveFormats = getAdaptiveFormats(streamingData);
if (adaptiveFormats != null) {
for (Object adaptiveFormat : adaptiveFormats) {
// 'audio/webm; codecs="opus"', 'audio/mp4; codecs="mp4a.40.2"', ...
// 'video/webm; codecs="vp9"', 'video/mp4; codecs="av01.0.00M.08.0.110.05.01.06.0"', ...
String mimeType = getMimeType(adaptiveFormat);
// mimeType starts with 'video', which means it is a video format.
boolean isVideoType = StringUtils.startsWith(mimeType, "video");
// streamingData is AudioFormat, and mimeType also starts with 'audio'.
boolean isAudioFormat = !isVideo && !isVideoType;
// streamingData is VideoFormat, and mimeType also starts with 'video'.
boolean isVideoFormat = isVideo && isVideoType;
if (isAudioFormat || isVideoFormat) {
// Add formats.
arrayList.add(adaptiveFormat);
}
}
}
} catch (Exception ex) {
Logger.printException(() -> "setAdaptiveFormats failed", ex);
}
}
/**
* Get formats from parsed streamingData.
* <p>
@ -166,33 +129,6 @@ public class StreamingDataOuterClassUtils {
return adaptiveFormats;
}
/**
* Remove 'AV1' video format from arrayList.
*
* @param arrayList An ArrayList where formats are added.
*/
public static void removeAV1Codecs(ArrayList<Object> arrayList) {
try {
for (Object adaptiveFormat : arrayList) {
// 'audio/webm; codecs="opus"', 'audio/mp4; codecs="mp4a.40.2"', ...
// 'video/webm; codecs="vp9"', 'video/mp4; codecs="av01.0.00M.08.0.110.05.01.06.0"', ...
String mimeType = getMimeType(adaptiveFormat);
// mimeType starts with 'video', which means it is a video format.
boolean isVideoType = StringUtils.startsWith(mimeType, "video");
if (isVideoType) {
if (mimeType.contains("av01")) {
// Remove formats.
arrayList.remove(adaptiveFormat);
}
}
}
} catch (Exception ex) {
Logger.printException(() -> "removeAV1Codecs failed", ex);
}
}
public static void setServerAbrStreamingUrl(StreamingDataOuterClass.StreamingData streamingData, String url) {
try {
if (streamingData != null) {

View file

@ -9,7 +9,6 @@ import com.liskovsoft.sharedutils.helpers.Helpers;
import com.liskovsoft.youtubeapi.app.playerdata.PlayerDataExtractor;
import org.apache.commons.lang3.StringUtils;
import org.json.JSONArray;
import org.json.JSONObject;
import java.io.IOException;
@ -62,40 +61,25 @@ public class ThrottlingParameterUtils {
private static final String BASE_YOUTUBE_URL =
"https://www.youtube.com";
/**
* Client Config url (TV).
* Client Config url.
*/
private static final String CLIENT_CONFIG_URL =
BASE_YOUTUBE_URL + "/tv_config?action_get_config=true";
/**
* Service worker url (Mobile Web).
* User-agent.
*/
private static final String SERVICE_WORKER_URL =
"https://m.youtube.com/sw.js_data";
/**
* User-agent (Mobile Web).
*/
private static final String USER_AGENT_MOBILE_WEB =
"Mozilla/5.0 (Android 16; Mobile; rv:140.0) Gecko/140.0 Firefox/140.0";
/**
* User-agent (TV).
*/
private static final String USER_AGENT_TV =
private static final String USER_AGENT =
"Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0; Xbox)";
/**
* Client config Json Object (TV).
* Client config Json Object.
*/
@Nullable
private volatile static JSONObject clientConfigJsonObject = null;
/**
* Client version from service worker (Mobile Web).
* Client version from client config.
*/
@Nullable
private volatile static String clientVersionMobileWeb = null;
/**
* Client version from client config (TV).
*/
@Nullable
private volatile static String clientVersionTV = null;
private volatile static String clientVersion = null;
/**
* Class used to deobfuscate, powered by SmartTube.
*/
@ -116,21 +100,11 @@ public class ThrottlingParameterUtils {
*/
@Nullable
private volatile static String playerJsUrl = null;
/**
* Service worker Json Array (Mobile Web).
*/
@Nullable
private volatile static JSONArray serviceWorkerJsonArray = null;
/**
* Field value included when sending a request.
*/
@Nullable
private volatile static Integer signatureTimestamp = null;
/**
* Visitor data from service worker (Mobile Web).
*/
@Nullable
private volatile static String visitorId = null;
private volatile static boolean isInitialized = false;
@ -149,7 +123,7 @@ public class ThrottlingParameterUtils {
}
};
public static void initializeJavascript(boolean useMobileWeb) {
public static void initializeJavascript() {
if (isInitialized) {
return;
}
@ -163,31 +137,22 @@ public class ThrottlingParameterUtils {
playerJsUrl = getPlayerJsUrl();
signatureTimestamp = getSignatureTimestamp();
clientVersionTV = getClientVersion(true);
clientVersion = getClientVersion();
clientConfigJsonObject = getClientConfigJsonObject();
if (useMobileWeb) {
visitorId = getVisitorId();
serviceWorkerJsonArray = getServiceWorkerJsonArray();
clientVersionMobileWeb = getClientVersion(false);
}
}
private static void resetAll() {
isInitialized = false;
clientVersionMobileWeb = null;
clientVersionTV = null;
clientVersion = null;
extractor = null;
playerJs = null;
playerJsUrl = null;
serviceWorkerJsonArray = null;
signatureTimestamp = null;
visitorId = null;
}
private static JSONObject setClientConfigJsonObject() {
String jsonString = fetch(CLIENT_CONFIG_URL, true);
String jsonString = fetch(CLIENT_CONFIG_URL);
if (jsonString != null) {
if (jsonString.startsWith(")]}'"))
jsonString = jsonString.substring(4);
@ -241,81 +206,31 @@ public class ThrottlingParameterUtils {
return signatureTimestamp;
}
private static JSONArray setServiceWorkerJsonArray() {
String jsonString = fetch(SERVICE_WORKER_URL, false);
if (jsonString != null) {
if (jsonString.startsWith(")]}'"))
jsonString = jsonString.substring(4);
try {
JSONArray jsonArray = new JSONArray(jsonString);
//jsonArray[0][2][0][0]
return jsonArray
.getJSONArray(0)
.getJSONArray(2)
.getJSONArray(0)
.getJSONArray(0);
} catch (Exception ex) {
Logger.printException(() -> "setServiceWorkerJsonArray failed", ex);
}
}
return null;
}
private static JSONArray getServiceWorkerJsonArray() {
if (serviceWorkerJsonArray == null) {
serviceWorkerJsonArray = setServiceWorkerJsonArray();
}
return serviceWorkerJsonArray;
}
private static String setClientVersion(boolean isTV) {
private static String setClientVersion() {
String clientVersion = null;
if (isTV) {
JSONObject clientConfigJsonObject = getClientConfigJsonObject();
JSONObject clientConfigJsonObject = getClientConfigJsonObject();
if (clientConfigJsonObject != null) {
try {
clientVersion = clientConfigJsonObject
.getString("innertubeContextClientVersion");
} catch (Exception ex) {
Logger.printException(() -> "setClientVersion failed", ex);
}
}
} else {
JSONArray serviceWorkerJsonArray = getServiceWorkerJsonArray();
if (serviceWorkerJsonArray != null) {
try {
clientVersion = serviceWorkerJsonArray
.getString(16);
} catch (Exception ex) {
Logger.printException(() -> "setClientVersion failed", ex);
}
if (clientConfigJsonObject != null) {
try {
clientVersion = clientConfigJsonObject
.getString("innertubeContextClientVersion");
} catch (Exception ex) {
Logger.printException(() -> "setClientVersion failed", ex);
}
}
if (StringUtils.isNotEmpty(clientVersion)) {
String finalClientVersion = clientVersion;
Logger.printDebug(() -> "clientVersion: " + finalClientVersion + ", isTV: " + false);
Logger.printDebug(() -> "clientVersion: " + finalClientVersion);
return clientVersion;
}
return null;
}
public static String getClientVersion(boolean isTV) {
String clientVersion = isTV
? clientVersionTV
: clientVersionMobileWeb;
public static String getClientVersion() {
if (clientVersion == null) {
clientVersion = setClientVersion(isTV);
if (isTV) {
clientVersionTV = clientVersion;
} else {
clientVersionMobileWeb = clientVersion;
}
clientVersion = setClientVersion();
}
return clientVersion;
@ -323,9 +238,7 @@ public class ThrottlingParameterUtils {
public static String getClientVersion(YouTubeClient.ClientType clientType) {
String hardCodedClientVersion = clientType.getClientVersion();
if (clientType == YouTubeClient.ClientType.TV || clientType == YouTubeClient.ClientType.MWEB) {
boolean isTV = clientType == YouTubeClient.ClientType.TV;
String clientVersion = getClientVersion(isTV);
if (clientType == YouTubeClient.ClientType.TV) {
if (clientVersion != null) {
return clientVersion;
}
@ -334,34 +247,6 @@ public class ThrottlingParameterUtils {
return hardCodedClientVersion;
}
private static String setVisitorId() {
JSONArray serviceWorkerJsonArray = getServiceWorkerJsonArray();
if (serviceWorkerJsonArray != null) {
try {
String visitorId = serviceWorkerJsonArray
.getString(13);
if (StringUtils.isNotEmpty(visitorId)) {
Logger.printDebug(() -> "visitorId: " + visitorId);
}
return visitorId;
} catch (Exception ex) {
Logger.printException(() -> "setVisitorId failed", ex);
}
}
return null;
}
public static String getVisitorId() {
if (visitorId == null) {
visitorId = setVisitorId();
}
return visitorId;
}
@Nullable
private static String setPlayerJsUrl() {
JSONObject clientConfigJsonObject = getClientConfigJsonObject();
@ -399,7 +284,7 @@ public class ThrottlingParameterUtils {
private static String setPlayerJs() {
String playerJsUrl = getPlayerJsUrl();
if (playerJsUrl != null) {
return fetch(playerJsUrl, true);
return fetch(playerJsUrl);
}
return null;
}
@ -434,9 +319,9 @@ public class ThrottlingParameterUtils {
}
@Nullable
public static String fetch(@NonNull String url, boolean isTV) {
public static String fetch(@NonNull String url) {
try {
return Utils.submitOnBackgroundThread(() -> fetchUrl(url, isTV)).get();
return Utils.submitOnBackgroundThread(() -> fetchUrl(url)).get();
} catch (ExecutionException | InterruptedException ex) {
Logger.printDebug(() -> "Could not fetch url: " + url, ex);
}
@ -445,7 +330,7 @@ public class ThrottlingParameterUtils {
}
@Nullable
private static String fetchUrl(@NonNull String uri, boolean isTV) {
private static String fetchUrl(@NonNull String uri) {
Utils.verifyOffMainThread();
final long startTime = System.currentTimeMillis();
@ -456,7 +341,7 @@ public class ThrottlingParameterUtils {
Request request = new Request.Builder()
.url(uri)
.header("Accept-Language", "en-US,en")
.header("User-Agent", isTV ? USER_AGENT_TV : USER_AGENT_MOBILE_WEB)
.header("User-Agent", USER_AGENT)
.build();
try (Response response = client.newCall(request).execute()) {
@ -486,10 +371,8 @@ public class ThrottlingParameterUtils {
@Nullable
public static String deobfuscateStreamingUrl(
@NonNull String videoId,
@NonNull String cpn,
@Nullable String url,
@Nullable String signatureCipher,
@Nullable String poToken) {
@Nullable String signatureCipher) {
String streamUrl = null;
if (StringUtils.isNotEmpty(url)) {
streamUrl = url;
@ -500,17 +383,10 @@ public class ThrottlingParameterUtils {
);
}
if (StringUtils.isNotEmpty(streamUrl)) {
String deobfuscatedUrl = getUrlWithThrottlingParameterDeobfuscated(
return getUrlWithThrottlingParameterDeobfuscated(
videoId,
streamUrl
);
if (StringUtils.isNotEmpty(cpn)) {
deobfuscatedUrl += "&cpn=" + cpn;
}
if (StringUtils.isNotEmpty(poToken)) {
deobfuscatedUrl += "&pot=" + poToken;
}
return deobfuscatedUrl;
}
return null;
}

View file

@ -0,0 +1,20 @@
package app.revanced.extension.shared.patches;
public class AppCheckPatch {
@SuppressWarnings("SameParameterValue")
private static boolean classExists(String className) {
boolean classExists = false;
try {
Class.forName(className);
classExists = true;
} catch (ClassNotFoundException ignored) {
}
return classExists;
}
private static final String MAIN_ACTIVITY_CLASS_DESCRIPTOR_YOUTUBE =
"com.google.android.apps.youtube.app.watchwhile.MainActivity";
public static final boolean IS_YOUTUBE =
classExists(MAIN_ACTIVITY_CLASS_DESCRIPTOR_YOUTUBE);
}

View file

@ -30,4 +30,9 @@ public class PatchStatus {
public static long PatchedTime() {
return 0L;
}
// Modified by a patch. Do not touch.
public static String WebViewActivityClass() {
return "";
}
}

View file

@ -0,0 +1,113 @@
package app.revanced.extension.shared.patches.auth;
import static app.revanced.extension.shared.patches.AppCheckPatch.IS_YOUTUBE;
import static app.revanced.extension.shared.patches.auth.requests.AuthRequest.fetch;
import static app.revanced.extension.shared.utils.StringRef.str;
import android.util.Pair;
import org.apache.commons.lang3.StringUtils;
import app.revanced.extension.shared.settings.preference.SharedPrefCategory;
import app.revanced.extension.shared.utils.Utils;
public class YouTubeAuthPatch {
/**
* The last time the access token was updated.
*/
private static long lastTimeAccessTokenUpdated = 0L;
/**
* Access token expiration time.
*/
private static long accessTokenExpiration = 3540 * 1000L;
public static void checkAccessToken() {
if (!IS_YOUTUBE && isEmailAvailable() && isRefreshTokenAvailable()) {
setAccessToken();
}
}
public static void clearAll() {
saveEmail("");
saveRefreshToken("");
lastTimeAccessTokenUpdated = 0L;
accessTokenExpiration = 3540 * 1000L;
authorization = "";
Utils.showToastShort(str("revanced_spoof_streaming_data_no_sdk_auth_token_toast_reset"));
}
public static void setAccessToken() {
final long now = System.currentTimeMillis();
if (lastTimeAccessTokenUpdated > 0L &&
now - lastTimeAccessTokenUpdated < accessTokenExpiration) {
return;
}
Pair<String, String> result = fetch(getEmail(), getRefreshToken(), true);
if (result != null) {
String accessToken = result.second;
if (StringUtils.isNotEmpty(accessToken)) {
authorization = "Bearer " + accessToken;
lastTimeAccessTokenUpdated = System.currentTimeMillis();
}
}
}
public static void setAccessToken(String email, String oauthToken) {
Pair<String, String> result = fetch(email, oauthToken, false);
if (result != null) {
String refreshToken = result.first;
String accessToken = result.second;
if (StringUtils.isNotEmpty(refreshToken) && StringUtils.isNotEmpty(accessToken)) {
saveEmail(email);
saveRefreshToken(refreshToken);
authorization = "Bearer " + accessToken;
lastTimeAccessTokenUpdated = System.currentTimeMillis();
Utils.showToastShort(str("revanced_spoof_streaming_data_no_sdk_auth_token_toast_success"));
}
}
}
/**
* Using OAuth tokens allows access to all information in a user's Google account,
* including changes to their Google account information, without leaving any logs or notifications.
* Importing / exporting 2.0 tokens must be strictly prohibited.
*/
private static final SharedPrefCategory preferences = new SharedPrefCategory("youtube_no_sdk");
private static final String emailKey = "youtube_no_sdk_auth_email";
private static final String refreshTokenKey = "youtube_no_sdk_auth_refresh_token";
private static String authorization = "";
public static String getAuthorization() {
return authorization;
}
private static String getEmail() {
return preferences.getString(emailKey, "");
}
private static String getRefreshToken() {
return preferences.getString(refreshTokenKey, "");
}
public static boolean isAuthorizationAvailable() {
return !authorization.isEmpty();
}
public static boolean isEmailAvailable() {
return !getEmail().isEmpty();
}
private static boolean isRefreshTokenAvailable() {
return !getRefreshToken().isEmpty();
}
private static void saveEmail(String value) {
preferences.saveString(emailKey, value);
}
private static void saveRefreshToken(String value) {
preferences.saveString(refreshTokenKey, value);
}
}

View file

@ -21,7 +21,7 @@ import app.revanced.extension.shared.utils.BaseThemeUtils;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
public class AuthPatch {
public class YouTubeVRAuthPatch {
/**
* The last time the access token was updated.
*/

View file

@ -5,8 +5,12 @@ import static app.revanced.extension.shared.patches.auth.requests.AuthRoutes.cre
import static app.revanced.extension.shared.patches.auth.requests.AuthRoutes.createActivationCodeBody;
import static app.revanced.extension.shared.patches.auth.requests.AuthRoutes.createRefreshTokenBody;
import android.util.Pair;
import androidx.annotation.Nullable;
import com.aurora.store.task.AuthTask;
import org.json.JSONObject;
import java.io.IOException;
@ -49,6 +53,25 @@ public class AuthRequest {
return null;
}
@Nullable
public static Pair<String, String> fetch(String email, String token, boolean isAASToken) {
try {
return Utils.submitOnBackgroundThread(() -> {
AuthTask authTask = new AuthTask();
if (isAASToken) {
return new Pair<>(token, authTask.refreshAuthToken(email, token));
} else {
return authTask.getAuthToken(email, token);
}
}).get();
} catch (ExecutionException | InterruptedException ex) {
Logger.printDebug(() -> "fetch failed", ex);
}
return null;
}
@Nullable
private static JSONObject fetchUrl(RequestType requestType, @Nullable String token) {
Utils.verifyOffMainThread();

View file

@ -22,7 +22,8 @@ import java.util.concurrent.CompletableFuture;
import app.revanced.extension.shared.innertube.client.YouTubeClient.ClientType;
import app.revanced.extension.shared.innertube.utils.ThrottlingParameterUtils;
import app.revanced.extension.shared.patches.PatchStatus;
import app.revanced.extension.shared.patches.auth.AuthPatch;
import app.revanced.extension.shared.patches.auth.YouTubeAuthPatch;
import app.revanced.extension.shared.patches.auth.YouTubeVRAuthPatch;
import app.revanced.extension.shared.patches.spoof.requests.StreamingDataRequest;
import app.revanced.extension.shared.settings.BaseSettings;
import app.revanced.extension.shared.settings.Setting;
@ -71,8 +72,6 @@ public class SpoofStreamingDataPatch {
* Prefix present in all Short player parameters signature.
*/
private static final String SHORTS_PLAYER_PARAMETERS = "8AEB";
@NonNull
private static volatile String playerResponseCpn = "";
@Nullable
private static volatile String playerResponseParameter = null;
@ -208,7 +207,6 @@ public class SpoofStreamingDataPatch {
return;
}
String tParameter = YouTubeHelper.generateTParameter(uri.getQueryParameter("t"));
String cpn = YouTubeHelper.generateContentPlaybackNonce(playerResponseCpn);
String reasonSkipped;
if (playerResponseParameter != null &&
SPOOF_STREAMING_DATA_USE_JS &&
@ -227,11 +225,11 @@ public class SpoofStreamingDataPatch {
reasonSkipped = "";
}
AuthPatch.checkAccessToken();
YouTubeAuthPatch.checkAccessToken();
YouTubeVRAuthPatch.checkAccessToken();
StreamingDataRequest.fetchRequest(
id,
tParameter,
cpn,
requestHeader,
reasonSkipped
);
@ -312,15 +310,6 @@ public class SpoofStreamingDataPatch {
return postData;
}
/**
* Injection point.
*/
public static void newPlayerResponseCpn(@Nullable String cpn) {
if (cpn != null && !cpn.isEmpty()) {
playerResponseCpn = cpn;
}
}
/**
* Injection point.
*/
@ -352,9 +341,7 @@ public class SpoofStreamingDataPatch {
public static void initializeJavascript() {
if (SPOOF_STREAMING_DATA_USE_JS) {
// Download JavaScript and initialize the Cipher class
CompletableFuture.runAsync(() -> ThrottlingParameterUtils.initializeJavascript(
BaseSettings.SPOOF_STREAMING_DATA_DEFAULT_CLIENT.get().getRequirePoToken()
));
CompletableFuture.runAsync(ThrottlingParameterUtils::initializeJavascript);
}
}

View file

@ -13,7 +13,9 @@ import app.revanced.extension.shared.innertube.utils.StreamingDataOuterClassUtil
import app.revanced.extension.shared.innertube.utils.StreamingDataOuterClassUtils.setServerAbrStreamingUrl
import app.revanced.extension.shared.innertube.utils.StreamingDataOuterClassUtils.setUrl
import app.revanced.extension.shared.innertube.utils.ThrottlingParameterUtils
import app.revanced.extension.shared.patches.auth.AuthPatch
import app.revanced.extension.shared.patches.AppCheckPatch.IS_YOUTUBE
import app.revanced.extension.shared.patches.auth.YouTubeAuthPatch
import app.revanced.extension.shared.patches.auth.YouTubeVRAuthPatch
import app.revanced.extension.shared.patches.components.ByteArrayFilterGroup
import app.revanced.extension.shared.patches.spoof.StreamingDataOuterClassPatch.parseFrom
import app.revanced.extension.shared.settings.BaseSettings
@ -21,7 +23,6 @@ import app.revanced.extension.shared.utils.Logger
import app.revanced.extension.shared.utils.StringRef.str
import app.revanced.extension.shared.utils.Utils
import com.google.protos.youtube.api.innertube.StreamingDataOuterClass.StreamingData
import com.liskovsoft.youtubeapi.app.PoTokenGate
import org.apache.commons.lang3.StringUtils
import java.io.BufferedInputStream
import java.io.ByteArrayOutputStream
@ -50,7 +51,6 @@ import java.util.concurrent.TimeoutException
class StreamingDataRequest private constructor(
videoId: String,
tParameter: String,
cpn: String,
requestHeader: Map<String, String>,
reasonSkipped: String,
) {
@ -64,7 +64,6 @@ class StreamingDataRequest private constructor(
fetch(
videoId = videoId,
tParameter = tParameter,
cpn = cpn,
requestHeader = requestHeader,
reasonSkipped = reasonSkipped,
)
@ -106,7 +105,6 @@ class StreamingDataRequest private constructor(
companion object {
private const val AUTHORIZATION_HEADER = "Authorization"
private const val VISITOR_ID_HEADER: String = "X-Goog-Visitor-Id"
private const val MAX_MILLISECONDS_TO_WAIT_FOR_FETCH = 20 * 1000
private val SPOOF_STREAMING_DATA_DEFAULT_CLIENT: ClientType =
@ -141,7 +139,6 @@ class StreamingDataRequest private constructor(
fun fetchRequest(
videoId: String,
tParameter: String,
cpn: String,
fetchHeaders: Map<String, String>,
reasonSkipped: String,
) {
@ -150,7 +147,6 @@ class StreamingDataRequest private constructor(
StreamingDataRequest(
videoId,
tParameter,
cpn,
fetchHeaders,
reasonSkipped,
)
@ -172,36 +168,34 @@ class StreamingDataRequest private constructor(
private fun replaceHeader(
clientType: ClientType,
videoId: String,
requestHeader: Map<String, String>,
): Map<String, String> {
if (clientType.requirePoToken) {
val finalRequestHeader: MutableMap<String, String> =
LinkedHashMap(requestHeader.size)
val visitorData = PoTokenGate.getVisitorData(videoId)
for (key in requestHeader.keys) {
val value = requestHeader[key]
if (value != null) {
if (key == VISITOR_ID_HEADER) {
if (!visitorData.isNullOrEmpty()) {
finalRequestHeader[VISITOR_ID_HEADER] = visitorData
continue
}
}
finalRequestHeader[key] = value
}
}
return finalRequestHeader
} else if (clientType == ClientType.ANDROID_VR_AUTH &&
AuthPatch.isAuthorizationAvailable()
) {
if (clientType == ClientType.ANDROID_VR_AUTH &&
YouTubeVRAuthPatch.isAuthorizationAvailable()) {
val finalRequestHeader: MutableMap<String, String> =
LinkedHashMap(requestHeader.size)
for (key in requestHeader.keys) {
val value = requestHeader[key]
if (value != null) {
if (key == AUTHORIZATION_HEADER) {
finalRequestHeader[AUTHORIZATION_HEADER] = AuthPatch.getAuthorization()
finalRequestHeader[AUTHORIZATION_HEADER] = YouTubeVRAuthPatch.getAuthorization()
continue
}
finalRequestHeader[key] = value
}
}
return finalRequestHeader
} else if (!IS_YOUTUBE &&
clientType == ClientType.ANDROID_NO_SDK) {
val finalRequestHeader: MutableMap<String, String> =
LinkedHashMap(requestHeader.size)
for (key in requestHeader.keys) {
val value = requestHeader[key]
if (value != null) {
if (key == AUTHORIZATION_HEADER) {
if (YouTubeAuthPatch.isAuthorizationAvailable()) {
finalRequestHeader[AUTHORIZATION_HEADER] = YouTubeAuthPatch.getAuthorization()
}
continue
}
finalRequestHeader[key] = value
@ -235,9 +229,7 @@ class StreamingDataRequest private constructor(
}
private fun getDeobfuscatedUrlArrayList(
clientType: ClientType,
videoId: String,
cpn: String,
streamBytes: ByteArray,
): Triple<ArrayList<String>?, ArrayList<String>?, String?>? {
val startTime = System.currentTimeMillis()
@ -258,10 +250,6 @@ class StreamingDataRequest private constructor(
val deobfuscatedAdaptiveFormatsArrayList: ArrayList<String> =
ArrayList(adaptiveFormatsCount)
val sessionPoToken = if (clientType.requirePoToken)
PoTokenGate.getWebSessionPoToken(videoId)
else
null
for (i in 0..<adaptiveFormatsCount) {
val adaptiveFormats = streamingData.getAdaptiveFormats(i)
@ -270,10 +258,8 @@ class StreamingDataRequest private constructor(
val deobfuscatedUrl =
ThrottlingParameterUtils.deobfuscateStreamingUrl(
videoId,
cpn,
adaptiveFormats.url,
adaptiveFormats.signatureCipher,
sessionPoToken
)
if (deobfuscatedUrl.isNullOrEmpty()) {
Logger.printDebug { "Failed to decrypt n-sig or signatureCipher, please check if latest regular expressions are being used" }
@ -296,10 +282,8 @@ class StreamingDataRequest private constructor(
val deobfuscatedUrl =
ThrottlingParameterUtils.deobfuscateStreamingUrl(
videoId,
cpn,
formats.url,
formats.signatureCipher,
sessionPoToken
)
if (deobfuscatedUrl.isNullOrEmpty()) {
Logger.printDebug { "Failed to decrypt n-sig or signatureCipher" }
@ -315,10 +299,8 @@ class StreamingDataRequest private constructor(
serverAbrStreamingUrl = ThrottlingParameterUtils
.deobfuscateStreamingUrl(
videoId,
"",
serverAbrStreamingUrl,
null,
sessionPoToken
)
}
@ -361,7 +343,6 @@ class StreamingDataRequest private constructor(
clientType: ClientType,
videoId: String,
tParameter: String,
cpn: String,
requestHeader: Map<String, String>,
): HttpURLConnection? {
val startTime = System.currentTimeMillis()
@ -373,7 +354,6 @@ class StreamingDataRequest private constructor(
createJSRequestBody(
clientType = clientType,
videoId = videoId,
cpn = cpn,
isGVS = true,
isInlinePlayback = SPOOF_STREAMING_DATA_USE_JS_BYPASS_FAKE_BUFFERING,
)
@ -391,7 +371,7 @@ class StreamingDataRequest private constructor(
SPOOF_STREAMING_DATA_USE_JS_BYPASS_FAKE_BUFFERING
),
clientType,
replaceHeader(clientType, videoId, requestHeader)
replaceHeader(clientType, requestHeader)
)
connection.setFixedLengthStreamingMode(requestBody.size)
@ -423,7 +403,6 @@ class StreamingDataRequest private constructor(
private fun fetch(
videoId: String,
tParameter: String,
cpn: String,
requestHeader: Map<String, String>,
reasonSkipped: String,
): StreamingData? {
@ -447,7 +426,6 @@ class StreamingDataRequest private constructor(
clientType,
videoId,
tParameter,
cpn,
requestHeader,
)
if (connection != null) {
@ -490,9 +468,7 @@ class StreamingDataRequest private constructor(
if (clientType.requireJS) {
// ArrayList containing the deobfuscated streamingUrl
val arrayLists = getDeobfuscatedUrlArrayList(
clientType,
videoId,
cpn,
streamBytes
)
if (arrayLists != null) {

View file

@ -54,7 +54,7 @@ public class BaseSettings {
// Client type must be last spoof setting due to cyclic references.
public static final EnumSetting<ClientType> SPOOF_STREAMING_DATA_DEFAULT_CLIENT = new EnumSetting<>("revanced_spoof_streaming_data_default_client",
ClientType.ANDROID_VR, true, parent(SPOOF_STREAMING_DATA));
ClientType.ANDROID_NO_SDK, true, parent(SPOOF_STREAMING_DATA));
public static final BooleanSetting DISABLE_AUTO_AUDIO_TRACKS = new BooleanSetting("revanced_disable_auto_audio_tracks", TRUE);

View file

@ -59,6 +59,23 @@ public abstract class Setting<T> {
};
}
/**
* Availability based on a single parent setting being disabled.
*/
public static Availability parentInverted(BooleanSetting parent) {
return new Availability() {
@Override
public boolean isAvailable() {
return !parent.get();
}
@Override
public List<Setting<?>> getParentSettings() {
return Collections.singletonList(parent);
}
};
}
/**
* Availability based on all parents being enabled.
*/
@ -79,6 +96,26 @@ public abstract class Setting<T> {
};
}
/**
* Availability based on any parent being disabled.
*/
public static Availability parentsAnyInverted(BooleanSetting... parents) {
return new Availability() {
@Override
public boolean isAvailable() {
for (BooleanSetting parent : parents) {
if (parent.get()) return false;
}
return true;
}
@Override
public List<Setting<?>> getParentSettings() {
return Collections.unmodifiableList(Arrays.asList(parents));
}
};
}
/**
* Availability based on any parent being enabled.
*/

View file

@ -1,4 +1,4 @@
package app.revanced.extension.youtube.settings;
package app.revanced.extension.shared.settings;
import static app.revanced.extension.shared.utils.ResourceUtils.getIdIdentifier;
import static app.revanced.extension.shared.utils.ResourceUtils.getLayoutIdentifier;
@ -34,23 +34,31 @@ import android.window.OnBackInvokedDispatcher;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RequiresApi;
import org.apache.commons.lang3.StringUtils;
import java.util.HashMap;
import java.util.Map;
import app.revanced.extension.shared.innertube.utils.AuthUtils;
import app.revanced.extension.shared.patches.auth.YouTubeAuthPatch;
import app.revanced.extension.shared.ui.CustomDialog;
import app.revanced.extension.shared.utils.BaseThemeUtils;
import app.revanced.extension.shared.utils.Logger;
import app.revanced.extension.shared.utils.Utils;
import app.revanced.extension.youtube.utils.ThemeUtils;
/**
* Note that the superclass is overwritten to the superclass of the VrWelcomeActivity at patch time.
*/
@RequiresApi(26)
@SuppressWarnings({"ExtractMethodRecommender", "deprecation", "unused"})
public class WebViewHostActivity extends Activity {
protected final String CHROME_VERSION = "140.0.0.0";
protected final String EMBEDDED_SETUP_URL =
"https://accounts.google.com/EmbeddedSetup";
protected final String JS_SCRIPT =
"(function() { return document.getElementById('profileIdentifier').innerHTML; })();";
protected final String OAUTH_TOKEN = "oauth_token";
protected final String USER_AGENT_CHROME_FORMAT =
"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/%s Safari/537.36";
protected final String USER_AGENT_CHROME_MOBILE_FORMAT =
@ -66,14 +74,20 @@ public class WebViewHostActivity extends Activity {
protected WebView webView;
protected boolean isEmbeddedSetup = false;
protected boolean isInitialized = false;
protected boolean clearCookiesOnStartUp;
protected boolean clearCookiesOnShutDown;
protected boolean showToolBar;
protected boolean useDesktopUserAgent;
protected boolean useReferer;
@NonNull
protected String url = "https://www.youtube.com/signin";
@ -109,8 +123,12 @@ public class WebViewHostActivity extends Activity {
intent.getBooleanExtra("clearCookiesOnStartUp", false);
clearCookiesOnShutDown =
intent.getBooleanExtra("clearCookiesOnShutDown", false);
showToolBar =
intent.getBooleanExtra("showToolBar", false);
useDesktopUserAgent =
intent.getBooleanExtra("useDesktopUserAgent", false);
useReferer =
intent.getBooleanExtra("useReferer", false);
userAgent = String.format(
useDesktopUserAgent
? USER_AGENT_CHROME_FORMAT
@ -121,11 +139,15 @@ public class WebViewHostActivity extends Activity {
if (StringUtils.isNotEmpty(intentUrl)) {
url = intentUrl;
}
isEmbeddedSetup = url.startsWith(EMBEDDED_SETUP_URL);
setContentView(getLayoutIdentifier("revanced_webview"));
Window window = getWindow();
if (window != null) {
View decorView = window.getDecorView();
decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR | View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR);
int visibility = isSDKAbove(26)
? View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR | View.SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR
: View.SYSTEM_UI_FLAG_LIGHT_STATUS_BAR;
decorView.setSystemUiVisibility(visibility);
window.setStatusBarColor(Color.WHITE);
window.setNavigationBarColor(Color.WHITE);
@ -160,7 +182,9 @@ public class WebViewHostActivity extends Activity {
Logger.printDebug(() -> "onCreate{clearCookiesOnStartUp: " + clearCookiesOnStartUp +
", clearCookiesOnShutDown: " + clearCookiesOnShutDown +
", showToolBar: " + showToolBar +
", useDesktopUserAgent: " + useDesktopUserAgent +
", useReferer: " + useReferer +
", userAgent: " + userAgent +
", url: " + url +
"}"
@ -211,7 +235,7 @@ public class WebViewHostActivity extends Activity {
toolbar = new Toolbar(toolBarParent.getContext());
toolbar.setBackgroundColor(Color.WHITE);
toolbar.setNavigationIcon(ThemeUtils.getBackButtonDrawable(false));
toolbar.setNavigationIcon(BaseThemeUtils.getBackButtonDrawable(false));
toolbar.setNavigationOnClickListener(view -> this.finish());
toolbar.setTitle(toolbarLabel);
final int margin = Utils.dipToPixels(16);
@ -221,44 +245,46 @@ public class WebViewHostActivity extends Activity {
if (textView != null) {
textView.setTextColor(Color.BLACK);
}
toolbar.inflateMenu(getMenuIdentifier("revanced_webview_menu"));
LinearLayout menuParent = Utils.getChildView(toolbar, view -> view instanceof LinearLayout);
if (menuParent != null) {
ImageButton menuButton = Utils.getChildView(menuParent, view -> view instanceof ImageButton);
if (menuButton != null) {
menuButton.setImageDrawable(ThemeUtils.getMenuButtonDrawable(false));
if (showToolBar) {
toolbar.inflateMenu(getMenuIdentifier("revanced_webview_menu"));
LinearLayout menuParent = Utils.getChildView(toolbar, view -> view instanceof LinearLayout);
if (menuParent != null) {
ImageButton menuButton = Utils.getChildView(menuParent, view -> view instanceof ImageButton);
if (menuButton != null) {
menuButton.setImageDrawable(BaseThemeUtils.getMenuButtonDrawable(false));
}
}
}
int getCookies = getIdIdentifier("revanced_webview_get_cookies");
int getDataSyncId = getIdIdentifier("revanced_webview_get_data_sync_id");
int getVisitorData = getIdIdentifier("revanced_webview_get_visitor_data");
int refresh = getIdIdentifier("revanced_webview_refresh");
int getCookies = getIdIdentifier("revanced_webview_get_cookies");
int getDataSyncId = getIdIdentifier("revanced_webview_get_data_sync_id");
int getVisitorData = getIdIdentifier("revanced_webview_get_visitor_data");
int refresh = getIdIdentifier("revanced_webview_refresh");
// Set menu item click listener.
toolbar.setOnMenuItemClickListener(item -> {
try {
int itemId = item.getItemId();
if (itemId == getCookies) {
showDialog(cookies, str("revanced_webview_cookies"));
return true;
} else if (itemId == getDataSyncId) {
showDialog(dataSyncId, str("revanced_webview_data_sync_id"));
return true;
} else if (itemId == getVisitorData) {
showDialog(visitorData, str("revanced_webview_visitor_data"));
return true;
} else if (itemId == refresh) {
if (webView != null) {
webView.reload();
// Set menu item click listener.
toolbar.setOnMenuItemClickListener(item -> {
try {
int itemId = item.getItemId();
if (itemId == getCookies) {
showDialog(cookies, str("revanced_webview_cookies"));
return true;
} else if (itemId == getDataSyncId) {
showDialog(dataSyncId, str("revanced_webview_data_sync_id"));
return true;
} else if (itemId == getVisitorData) {
showDialog(visitorData, str("revanced_webview_visitor_data"));
return true;
} else if (itemId == refresh) {
if (webView != null) {
webView.reload();
}
return true;
}
return true;
return false;
} catch (Exception ex) {
Logger.printException(() -> "menu click failure", ex);
}
return false;
} catch (Exception ex) {
Logger.printException(() -> "menu click failure", ex);
}
return false;
});
});
}
toolbar.setLayoutParams(lp);
toolBarParent.addView(toolbar, 0);
}
@ -302,6 +328,9 @@ public class WebViewHostActivity extends Activity {
// Generate a Chrome User-Agent that matches the version of Android System WebView
protected void checkWebViewVersion() {
if (!isSDKAbove(26)) {
return;
}
try {
PackageInfo packageInfo = WebView.getCurrentWebViewPackage();
if (packageInfo != null) {
@ -343,6 +372,10 @@ public class WebViewHostActivity extends Activity {
return isInitialized;
}
protected boolean containsOAuthTokenIndicator(@NonNull String localCookies) {
return isEmbeddedSetup && localCookies.contains(OAUTH_TOKEN);
}
protected boolean containsVisitorCookieIndicator(@NonNull String localCookies) {
return localCookies.contains("VISITOR_INFO1_LIVE=");
}
@ -353,14 +386,27 @@ public class WebViewHostActivity extends Activity {
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setUserAgentString(userAgent);
webSettings.setSafeBrowsingEnabled(true);
if (isSDKAbove(26)) {
webSettings.setSafeBrowsingEnabled(true);
}
webSettings.setCacheMode(WebSettings.LOAD_DEFAULT);
webSettings.setDomStorageEnabled(true);
webSettings.setGeolocationEnabled(true);
webView.setWebViewClient(createWebViewClient());
webView.addJavascriptInterface(new Android(), "Android");
CookieManager.getInstance().setAcceptThirdPartyCookies(webView, true);
webView.loadUrl(url);
if (!isEmbeddedSetup) {
webView.addJavascriptInterface(new Android(), "Android");
}
CookieManager cookieManager = CookieManager.getInstance();
cookieManager.acceptThirdPartyCookies(webView);
cookieManager.setAcceptThirdPartyCookies(webView, true);
if (useReferer) {
Map<String, String> extraHeaders = new HashMap<>();
extraHeaders.put("Referer", "https://www.google.com/");
webView.loadUrl(url, extraHeaders);
} else {
webView.loadUrl(url);
}
} catch (Exception ex) {
Logger.printException(() -> "loadWebView failed", ex);
}
@ -399,7 +445,19 @@ public class WebViewHostActivity extends Activity {
cookies = localCookies;
Logger.printDebug(() -> "new Cookies loaded: " + localCookies);
if (containsVisitorCookieIndicator(localCookies)) {
if (containsOAuthTokenIndicator(localCookies)) {
Map<String, String> cookieMap = AuthUtils.parseCookieString(localCookies);
if (!cookieMap.isEmpty()) {
String oauth_token = cookieMap.get(OAUTH_TOKEN);
webView.evaluateJavascript(
JS_SCRIPT,
email -> {
email = email.replaceAll("\"", "");
YouTubeAuthPatch.setAccessToken(email, oauth_token);
});
Utils.runOnMainThreadDelayed(WebViewHostActivity.this::finish, 5000L);
}
} else if (containsVisitorCookieIndicator(localCookies)) {
webView.loadUrl("javascript:Android.onRetrieveVisitorData(window.yt.config_.VISITOR_DATA)");
webView.loadUrl("javascript:Android.onRetrieveDataSyncId(window.yt.config_.DATASYNC_ID)");
}

View file

@ -278,22 +278,33 @@ public class BaseThemeUtils {
/**
* Returns the drawable for the back button.
*/
@SuppressLint("UseCompatLoadingForDrawables")
public static Drawable getBackButtonDrawable() {
return getBackButtonDrawable(isDarkModeEnabled());
}
public static Drawable getBackButtonDrawable(boolean isDarkModeEnabled) {
Drawable drawable = getDrawable("revanced_settings_toolbar_arrow_left");
customizeBackButtonDrawable(drawable);
customizeBackButtonDrawable(drawable, isDarkModeEnabled);
return drawable;
}
/**
* Customizes the back button drawable.
*/
public static void customizeBackButtonDrawable(Drawable drawable) {
private static void customizeBackButtonDrawable(Drawable drawable, boolean isDarkModeEnabled) {
if (drawable != null) {
drawable.setTint(getAppForegroundColor());
drawable.setTint(getAppForegroundColor(isDarkModeEnabled));
}
}
public static Drawable getMenuButtonDrawable(boolean isDarkModeEnabled) {
final String drawableName = isDarkModeEnabled
? "yt_outline_overflow_vertical_white_24"
: "yt_outline_overflow_vertical_black_24";
return getDrawable(drawableName);
}
/**
* Allows subclasses to customize the dialog's root view background.
*/

View file

@ -7,6 +7,8 @@ import android.net.Uri;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import app.revanced.extension.shared.patches.PatchStatus;
public class IntentUtils extends Utils {
public static void launchExternalDownloader(@NonNull String content, @NonNull String downloaderPackageName) {
@ -42,4 +44,44 @@ public class IntentUtils extends Utils {
launchIntent(intent);
}
public static void launchWebViewActivity(Context mContext,
boolean clearCookiesOnStartUp,
boolean clearCookiesOnShutDown,
boolean useDesktopUserAgent,
String url) {
launchWebViewActivity(
mContext,
clearCookiesOnStartUp,
clearCookiesOnShutDown,
true,
useDesktopUserAgent,
false,
url
);
}
public static void launchWebViewActivity(Context mContext,
boolean clearCookiesOnStartUp,
boolean clearCookiesOnShutDown,
boolean showToolbar,
boolean useDesktopUserAgent,
boolean useReferer,
String url) {
try {
Intent intent = new Intent();
intent.setPackage(mContext.getPackageName());
intent.setData(Uri.parse("revanced_webview"));
intent.putExtra("clearCookiesOnStartUp", clearCookiesOnStartUp);
intent.putExtra("clearCookiesOnShutDown", clearCookiesOnShutDown);
intent.putExtra("showToolbar", showToolbar);
intent.putExtra("useDesktopUserAgent", useDesktopUserAgent);
intent.putExtra("useReferer", useReferer);
intent.putExtra("url", url);
intent.setClassName(mContext, PatchStatus.WebViewActivityClass());
mContext.startActivity(intent);
} catch (Exception ex) {
Logger.printException(() -> "launchWebViewActivity failed", ex);
}
}
}

View file

@ -77,8 +77,12 @@ public class PackageUtils extends Utils {
@Nullable
private static PackageInfo getPackageInfo() {
return getPackageInfo(getContext().getPackageName());
}
@Nullable
public static PackageInfo getPackageInfo(String packageName) {
final PackageManager packageManager = getPackageManager();
final String packageName = getContext().getPackageName();
try {
return isSDKAbove(33)
? packageManager.getPackageInfo(packageName, PackageManager.PackageInfoFlags.of(0))

View file

@ -57,7 +57,6 @@ import android.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.io.InputStream;
import java.lang.ref.WeakReference;
import java.text.Bidi;
import java.text.Collator;
@ -1020,21 +1019,6 @@ public class Utils {
viewGroup.setVisibility(View.GONE);
}
/**
* As the class {@code org.brotli.dec.BrotliInputStream} is already included in YouTube,
* Some classes will not be merged during patching.
* As a workaround, the obfuscated BrotliInputStream class from YouTube is entered here during the patching process.
*
* @return BrotliInputStream
*/
public static InputStream getBrotliInputStream(InputStream inputStream) {
// Rest of the implementation added by patch.
if (inputStream != null) {
Logger.printInfo(() -> "getBrotliInputStream");
}
return inputStream;
}
public static FrameLayout.LayoutParams getLayoutParams() {
FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);

View file

@ -47,8 +47,8 @@ public final class AdsFilter extends Filter {
// "inline_injection_entrypoint_layout."
"inline_injection_entrypoint_layout",
// https://github.com/inotia00/ReVanced_Extended/issues/3298
// "statement_banner."
"statement_banner",
// "video_display_button_group_layout"
// "video_display_carousel_button_group_layout"

View file

@ -107,21 +107,23 @@ public final class DescriptionsFilter extends Filter {
return false;
}
final boolean hideCreatorSection = Settings.HIDE_CREATOR_SECTION.get();
final boolean hideFeaturedSection = Settings.HIDE_FEATURED_SECTION.get();
final boolean hideInfoCardsSection = Settings.HIDE_INFO_CARDS_SECTION.get();
final boolean hideFeaturedLinksSection = Settings.HIDE_FEATURED_LINKS_SECTION.get();
final boolean hideFeaturedVideosSection = Settings.HIDE_FEATURED_VIDEOS_SECTION.get();
final boolean hideSubscribeButton = Settings.HIDE_SUBSCRIBE_BUTTON.get();
if (!hideCreatorSection && !hideFeaturedSection && !hideSubscribeButton) {
if (!hideInfoCardsSection && !hideFeaturedLinksSection && !hideFeaturedVideosSection && !hideSubscribeButton) {
return false;
}
if (hideCreatorSection) {
if (hideInfoCardsSection) {
return true;
}
// "media_lockup.", "structured_description_video_lockup."
if (path.contains("compact_infocard.")) {
return hideFeaturedSection;
if (path.contains("media_lockup.")) {
return hideFeaturedLinksSection;
} else if (path.contains("structured_description_video_lockup.")) {
return hideFeaturedVideosSection;
} else if (path.contains("subscribe_button.")) {
return hideSubscribeButton;
} else {

View file

@ -77,14 +77,6 @@ public final class NavigationButtonsPatch {
private static int emptyContentDotId = -1;
private static int libraryCairoId = -1;
/**
* Injection point.
*/
public static Enum<?> search;
/**
* Injection point.
*/
public static Enum<?> searchCairo;
/**
* Injection point.
@ -231,8 +223,8 @@ public final class NavigationButtonsPatch {
if (REPLACE_NAVIGATION_BUTTON && shouldReplace(original)) {
String enumName = original.name();
return original.name().endsWith("CAIRO")
? searchCairo
: search;
? YouTubeIcon.searchCairo
: YouTubeIcon.search;
}
return original;

View file

@ -0,0 +1,12 @@
package app.revanced.extension.youtube.patches.general;
public final class YouTubeIcon {
/**
* Injection point.
*/
public static Enum<?> search;
/**
* Injection point.
*/
public static Enum<?> searchCairo;
}

View file

@ -5,8 +5,10 @@ import static java.lang.Boolean.TRUE;
import static app.revanced.extension.shared.patches.PatchStatus.PackageNameYouTubeMusic;
import static app.revanced.extension.shared.settings.Setting.migrateFromOldPreferences;
import static app.revanced.extension.shared.settings.Setting.parent;
import static app.revanced.extension.shared.settings.Setting.parentInverted;
import static app.revanced.extension.shared.settings.Setting.parentsAll;
import static app.revanced.extension.shared.settings.Setting.parentsAny;
import static app.revanced.extension.shared.settings.Setting.parentsAnyInverted;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.youtube.patches.player.MiniplayerPatch.MiniplayerType;
import static app.revanced.extension.youtube.sponsorblock.objects.CategoryBehaviour.IGNORE;
@ -192,15 +194,15 @@ public class Settings extends BaseSettings {
// PreferenceScreen: General - Navigation bar
public static final BooleanSetting ENABLE_NARROW_NAVIGATION_BUTTONS = new BooleanSetting("revanced_enable_narrow_navigation_buttons", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_CREATE_BUTTON = new BooleanSetting("revanced_hide_navigation_create_button", FALSE, true);
public static final BooleanSetting SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON = new BooleanSetting("revanced_switch_create_with_notifications_button", TRUE, true,
"revanced_switch_create_with_notifications_button_user_dialog_message");
public static final BooleanSetting HIDE_NAVIGATION_CREATE_BUTTON = new BooleanSetting("revanced_hide_navigation_create_button", FALSE, true, parentInverted(SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON));
public static final BooleanSetting HIDE_NAVIGATION_HOME_BUTTON = new BooleanSetting("revanced_hide_navigation_home_button", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_LIBRARY_BUTTON = new BooleanSetting("revanced_hide_navigation_library_button", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_NOTIFICATIONS_BUTTON = new BooleanSetting("revanced_hide_navigation_notifications_button", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_NOTIFICATIONS_BUTTON = new BooleanSetting("revanced_hide_navigation_notifications_button", FALSE, true, parent(SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON));
public static final BooleanSetting HIDE_NAVIGATION_SHORTS_BUTTON = new BooleanSetting("revanced_hide_navigation_shorts_button", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_SUBSCRIPTIONS_BUTTON = new BooleanSetting("revanced_hide_navigation_subscriptions_button", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_LABEL = new BooleanSetting("revanced_hide_navigation_label", FALSE, true);
public static final BooleanSetting SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON = new BooleanSetting("revanced_switch_create_with_notifications_button", TRUE, true,
"revanced_switch_create_with_notifications_button_user_dialog_message");
public static final BooleanSetting ENABLE_TRANSLUCENT_NAVIGATION_BAR = new BooleanSetting("revanced_enable_translucent_navigation_bar", FALSE, true);
public static final BooleanSetting HIDE_NAVIGATION_BAR = new BooleanSetting("revanced_hide_navigation_bar", FALSE, true);
public static final BooleanSetting REPLACE_NAVIGATION_BUTTON = new BooleanSetting("revanced_replace_navigation_button", FALSE, true);
@ -270,9 +272,9 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_VOICE_SEARCH_BUTTON = new BooleanSetting("revanced_hide_voice_search_button", FALSE, true);
public static final BooleanSetting HIDE_YOU_MAY_LIKE_SECTION = new BooleanSetting("revanced_hide_you_may_like_section", FALSE, true);
public static final BooleanSetting HIDE_YOUTUBE_DOODLES = new BooleanSetting("revanced_hide_youtube_doodles", FALSE, true, "revanced_hide_youtube_doodles_user_dialog_message");
public static final BooleanSetting REPLACE_TOOLBAR_CREATE_BUTTON = new BooleanSetting("revanced_replace_toolbar_create_button", FALSE, true);
public static final BooleanSetting REPLACE_TOOLBAR_CREATE_BUTTON = new BooleanSetting("revanced_replace_toolbar_create_button", FALSE, true, parent(SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON));
public static final BooleanSetting REPLACE_TOOLBAR_CREATE_BUTTON_TYPE = new BooleanSetting("revanced_replace_toolbar_create_button_type", FALSE, true,
parent(REPLACE_TOOLBAR_CREATE_BUTTON));
parentsAll(SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON, REPLACE_TOOLBAR_CREATE_BUTTON));
// PreferenceScreen: Player
@ -281,7 +283,7 @@ public class Settings extends BaseSettings {
public static final BooleanSetting DISABLE_AUTO_PLAYER_POPUP_PANELS = new BooleanSetting("revanced_disable_auto_player_popup_panels", TRUE, true);
public static final BooleanSetting DISABLE_CHAPTER_SKIP_DOUBLE_TAP = new BooleanSetting("revanced_disable_chapter_skip_double_tap", FALSE);
public static final BooleanSetting DISABLE_SPEED_OVERLAY = new BooleanSetting("revanced_disable_speed_overlay", FALSE, true);
public static final FloatSetting SPEED_OVERLAY_VALUE = new FloatSetting("revanced_speed_overlay_value", 2.0f, true);
public static final FloatSetting SPEED_OVERLAY_VALUE = new FloatSetting("revanced_speed_overlay_value", 2.0f, true, parentInverted(DISABLE_SPEED_OVERLAY));
public static final BooleanSetting HIDE_CHANNEL_WATERMARK = new BooleanSetting("revanced_hide_channel_watermark", TRUE);
public static final BooleanSetting HIDE_CROWDFUNDING_BOX = new BooleanSetting("revanced_hide_crowdfunding_box", TRUE, true);
public static final BooleanSetting HIDE_DOUBLE_TAP_OVERLAY_FILTER = new BooleanSetting("revanced_hide_double_tap_overlay_filter", FALSE, true);
@ -326,9 +328,9 @@ public class Settings extends BaseSettings {
public static final IntegerSetting REMIX_BUTTON_INDEX = new IntegerSetting("revanced_remix_button_index", 3, true, parent(HIDE_ACTION_BUTTON_INDEX));
// PreferenceScreen: Player - Ambient mode
public static final BooleanSetting BYPASS_AMBIENT_MODE_RESTRICTIONS = new BooleanSetting("revanced_bypass_ambient_mode_restrictions", FALSE);
public static final BooleanSetting DISABLE_AMBIENT_MODE = new BooleanSetting("revanced_disable_ambient_mode", FALSE, true);
public static final BooleanSetting DISABLE_AMBIENT_MODE_IN_FULLSCREEN = new BooleanSetting("revanced_disable_ambient_mode_in_fullscreen", FALSE, true);
public static final BooleanSetting BYPASS_AMBIENT_MODE_RESTRICTIONS = new BooleanSetting("revanced_bypass_ambient_mode_restrictions", FALSE, parentInverted(DISABLE_AMBIENT_MODE));
public static final BooleanSetting DISABLE_AMBIENT_MODE_IN_FULLSCREEN = new BooleanSetting("revanced_disable_ambient_mode_in_fullscreen", FALSE, true, parentInverted(DISABLE_AMBIENT_MODE));
// PreferenceScreen: Player - Channel bar
public static final BooleanSetting HIDE_JOIN_BUTTON = new BooleanSetting("revanced_hide_join_button", TRUE);
@ -386,16 +388,16 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_LIVE_CHAT_REPLAY_BUTTON = new BooleanSetting("revanced_hide_live_chat_replay_button", FALSE);
public static final BooleanSetting HIDE_RELATED_VIDEOS_OVERLAY = new BooleanSetting("revanced_hide_related_videos_overlay", FALSE, true);
public static final BooleanSetting HIDE_QUICK_ACTIONS = new BooleanSetting("revanced_hide_quick_actions", FALSE, true);
public static final BooleanSetting HIDE_QUICK_ACTIONS_COMMENT_BUTTON = new BooleanSetting("revanced_hide_quick_actions_comment_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_DISLIKE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_dislike_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_LIKE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_like_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_LIVE_CHAT_BUTTON = new BooleanSetting("revanced_hide_quick_actions_live_chat_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_MORE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_more_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_OPEN_MIX_PLAYLIST_BUTTON = new BooleanSetting("revanced_hide_quick_actions_open_mix_playlist_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_OPEN_PLAYLIST_BUTTON = new BooleanSetting("revanced_hide_quick_actions_open_playlist_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_SAVE_TO_PLAYLIST_BUTTON = new BooleanSetting("revanced_hide_quick_actions_save_to_playlist_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS_SHARE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_share_button", FALSE);
public static final BooleanSetting HIDE_QUICK_ACTIONS = new BooleanSetting("revanced_hide_quick_actions", FALSE, true, parentInverted(DISABLE_ENGAGEMENT_PANEL));
public static final BooleanSetting HIDE_QUICK_ACTIONS_COMMENT_BUTTON = new BooleanSetting("revanced_hide_quick_actions_comment_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_DISLIKE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_dislike_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_LIKE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_like_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_LIVE_CHAT_BUTTON = new BooleanSetting("revanced_hide_quick_actions_live_chat_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_MORE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_more_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_OPEN_MIX_PLAYLIST_BUTTON = new BooleanSetting("revanced_hide_quick_actions_open_mix_playlist_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_OPEN_PLAYLIST_BUTTON = new BooleanSetting("revanced_hide_quick_actions_open_playlist_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_SAVE_TO_PLAYLIST_BUTTON = new BooleanSetting("revanced_hide_quick_actions_save_to_playlist_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final BooleanSetting HIDE_QUICK_ACTIONS_SHARE_BUTTON = new BooleanSetting("revanced_hide_quick_actions_share_button", FALSE, parentsAnyInverted(DISABLE_ENGAGEMENT_PANEL, HIDE_QUICK_ACTIONS));
public static final IntegerSetting QUICK_ACTIONS_TOP_MARGIN = new IntegerSetting("revanced_quick_actions_top_margin", 0, true);
public static final BooleanSetting DISABLE_LANDSCAPE_MODE = new BooleanSetting("revanced_disable_landscape_mode", FALSE, true);
@ -476,7 +478,8 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_TIME_STAMP = new BooleanSetting("revanced_hide_time_stamp", FALSE, true);
public static final BooleanSetting RESTORE_OLD_SEEKBAR_THUMBNAILS = new BooleanSetting("revanced_restore_old_seekbar_thumbnails",
PatchStatus.OldSeekbarThumbnailsDefaultBoolean(), true);
public static final BooleanSetting ENABLE_SEEKBAR_THUMBNAILS_HIGH_QUALITY = new BooleanSetting("revanced_enable_seekbar_thumbnails_high_quality", FALSE, true, "revanced_enable_seekbar_thumbnails_high_quality_dialog_message");
public static final BooleanSetting ENABLE_SEEKBAR_THUMBNAILS_HIGH_QUALITY = new BooleanSetting("revanced_enable_seekbar_thumbnails_high_quality", FALSE, true,
"revanced_enable_seekbar_thumbnails_high_quality_dialog_message", parentInverted(RESTORE_OLD_SEEKBAR_THUMBNAILS));
// PreferenceScreen: Player - Video description
public static final BooleanSetting DISABLE_ROLLING_NUMBER_ANIMATIONS = new BooleanSetting("revanced_disable_rolling_number_animations", FALSE);
@ -484,13 +487,14 @@ public class Settings extends BaseSettings {
public static final BooleanSetting HIDE_ASK_SECTION = new BooleanSetting("revanced_hide_ask_section", FALSE);
public static final BooleanSetting HIDE_ATTRIBUTES_SECTION = new BooleanSetting("revanced_hide_attributes_section", FALSE);
public static final BooleanSetting HIDE_CHAPTERS_SECTION = new BooleanSetting("revanced_hide_chapters_section", FALSE);
public static final BooleanSetting HIDE_CREATOR_SECTION = new BooleanSetting("revanced_hide_creator_section", FALSE);
public static final BooleanSetting HIDE_EXPLORE_PODCAST_SECTION = new BooleanSetting("revanced_hide_explore_podcast_section", FALSE);
public static final BooleanSetting HIDE_FEATURED_SECTION = new BooleanSetting("revanced_hide_featured_section", FALSE);
public static final BooleanSetting HIDE_HOW_THIS_WAS_MADE_SECTION = new BooleanSetting("revanced_hide_how_this_was_made_section", FALSE);
public static final BooleanSetting HIDE_HYPE_POINTS_SECTION = new BooleanSetting("revanced_hide_hype_points_section", FALSE);
public static final BooleanSetting HIDE_INFO_CARDS_SECTION = new BooleanSetting("revanced_hide_info_cards_section", FALSE);
public static final BooleanSetting HIDE_FEATURED_LINKS_SECTION = new BooleanSetting("revanced_hide_featured_links_section", FALSE, parentInverted(HIDE_INFO_CARDS_SECTION));
public static final BooleanSetting HIDE_FEATURED_VIDEOS_SECTION = new BooleanSetting("revanced_hide_featured_videos_section", FALSE, parentInverted(HIDE_INFO_CARDS_SECTION));
public static final BooleanSetting HIDE_SUBSCRIBE_BUTTON = new BooleanSetting("revanced_hide_subscribe_button", FALSE, parentInverted(HIDE_INFO_CARDS_SECTION));
public static final BooleanSetting HIDE_KEY_CONCEPTS_SECTION = new BooleanSetting("revanced_hide_key_concepts_section", FALSE);
public static final BooleanSetting HIDE_SUBSCRIBE_BUTTON = new BooleanSetting("revanced_hide_subscribe_button", FALSE);
public static final BooleanSetting HIDE_TRANSCRIPT_SECTION = new BooleanSetting("revanced_hide_transcript_section", FALSE);
public static final BooleanSetting DISABLE_VIDEO_DESCRIPTION_INTERACTION = new BooleanSetting("revanced_disable_video_description_interaction", FALSE, true);
public static final BooleanSetting EXPAND_VIDEO_DESCRIPTION = new BooleanSetting("revanced_expand_video_description", FALSE, true);

View file

@ -1,7 +1,7 @@
package app.revanced.extension.youtube.settings.preference;
import static app.revanced.extension.shared.utils.IntentUtils.launchWebViewActivity;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.youtube.utils.ExtendedUtils.launchWebViewActivity;
import android.app.Dialog;
import android.content.Context;
@ -78,6 +78,8 @@ public class GetCookiesPreference extends Preference implements Preference.OnPre
true,
true,
true,
true,
true,
YOUTUBE_EMBEDDED_PLAYER_URL
),
// Dismiss dialog when onNeutralClick.

View file

@ -9,7 +9,7 @@ import android.util.AttributeSet;
import android.util.Pair;
import android.widget.LinearLayout;
import app.revanced.extension.shared.patches.auth.AuthPatch;
import app.revanced.extension.shared.patches.auth.YouTubeVRAuthPatch;
import app.revanced.extension.shared.ui.CustomDialog;
import app.revanced.extension.youtube.settings.Settings;
@ -49,7 +49,7 @@ public class SpoofStreamingDataVRAuthTokenPreference extends Preference implemen
String dialogTitle = str("revanced_spoof_streaming_data_vr_auth_token_dialog_title");
String dialogMessage = str("revanced_spoof_streaming_data_vr_auth_token_dialog_message");
String resetButtonText = str("revanced_spoof_streaming_data_vr_auth_token_dialog_reset_text");
if (AuthPatch.isDeviceCodeAvailable()) {
if (YouTubeVRAuthPatch.isDeviceCodeAvailable()) {
dialogPair = CustomDialog.create(
context,
// Title.
@ -62,15 +62,15 @@ public class SpoofStreamingDataVRAuthTokenPreference extends Preference implemen
str("revanced_spoof_streaming_data_vr_auth_token_dialog_get_authorization_token_text"),
// OK button action.
() -> {
AuthPatch.setRefreshToken();
AuthPatch.setAccessToken(true);
YouTubeVRAuthPatch.setRefreshToken();
YouTubeVRAuthPatch.setAccessToken(true);
},
// Cancel button action.
null,
// Neutral button text.
resetButtonText,
// Neutral button action.
AuthPatch::clearAll,
YouTubeVRAuthPatch::clearAll,
// Dismiss dialog when onNeutralClick.
true
);
@ -86,13 +86,13 @@ public class SpoofStreamingDataVRAuthTokenPreference extends Preference implemen
// OK button text.
str("revanced_spoof_streaming_data_vr_auth_token_dialog_get_activation_code_text"),
// OK button action.
() -> AuthPatch.setActivationCode(context),
() -> YouTubeVRAuthPatch.setActivationCode(context),
// Cancel button action.
null,
// Neutral button text.
resetButtonText,
// Neutral button action.
AuthPatch::clearAll,
YouTubeVRAuthPatch::clearAll,
// Dismiss dialog when onNeutralClick.
true
);

View file

@ -1,8 +1,8 @@
package app.revanced.extension.youtube.settings.preference;
import static app.revanced.extension.shared.utils.IntentUtils.launchWebViewActivity;
import static app.revanced.extension.shared.utils.StringRef.str;
import static app.revanced.extension.shared.utils.Utils.dipToPixels;
import static app.revanced.extension.youtube.utils.ExtendedUtils.launchWebViewActivity;
import android.app.Dialog;
import android.content.Context;

View file

@ -207,16 +207,10 @@ public class YouTubePreferenceFragment extends ToolbarPreferenceFragment {
}
private void setPreferenceAvailability() {
setAmbientModePreference();
setTabletLayoutPreference();
setFullScreenPanelPreference();
setQuickActionsPreference();
setNavigationPreference();
setPatchInformationPreference();
setRYDPreference();
setSeekBarPreference();
setShortsPreference();
setSpeedOverlayPreference();
setSpoofStreamingDataPreference();
setWhitelistPreference();
}
@ -232,17 +226,6 @@ public class YouTubePreferenceFragment extends ToolbarPreferenceFragment {
}
}
/**
* Enable/Disable Preference related to Ambient Mode
*/
private void setAmbientModePreference() {
disablePreferences(
Settings.DISABLE_AMBIENT_MODE.get(),
Settings.BYPASS_AMBIENT_MODE_RESTRICTIONS,
Settings.DISABLE_AMBIENT_MODE_IN_FULLSCREEN
);
}
/**
* Enable/Disable Preferences not working in tablet layout
*/
@ -260,62 +243,6 @@ public class YouTubePreferenceFragment extends ToolbarPreferenceFragment {
);
}
/**
* Enable/Disable Preference related to Fullscreen Panel
*/
private void setFullScreenPanelPreference() {
disablePreferences(
Settings.DISABLE_ENGAGEMENT_PANEL.get(),
Settings.HIDE_QUICK_ACTIONS,
Settings.HIDE_QUICK_ACTIONS_COMMENT_BUTTON,
Settings.HIDE_QUICK_ACTIONS_DISLIKE_BUTTON,
Settings.HIDE_QUICK_ACTIONS_LIKE_BUTTON,
Settings.HIDE_QUICK_ACTIONS_LIVE_CHAT_BUTTON,
Settings.HIDE_QUICK_ACTIONS_MORE_BUTTON,
Settings.HIDE_QUICK_ACTIONS_OPEN_MIX_PLAYLIST_BUTTON,
Settings.HIDE_QUICK_ACTIONS_OPEN_PLAYLIST_BUTTON,
Settings.HIDE_QUICK_ACTIONS_SAVE_TO_PLAYLIST_BUTTON,
Settings.HIDE_QUICK_ACTIONS_SHARE_BUTTON
);
}
/**
* Enable/Disable Preference related to Hide Quick Actions
*/
private void setQuickActionsPreference() {
final boolean isAvailable =
Settings.DISABLE_ENGAGEMENT_PANEL.get() || Settings.HIDE_QUICK_ACTIONS.get();
disablePreferences(
isAvailable,
Settings.HIDE_QUICK_ACTIONS_COMMENT_BUTTON,
Settings.HIDE_QUICK_ACTIONS_DISLIKE_BUTTON,
Settings.HIDE_QUICK_ACTIONS_LIKE_BUTTON,
Settings.HIDE_QUICK_ACTIONS_LIVE_CHAT_BUTTON,
Settings.HIDE_QUICK_ACTIONS_MORE_BUTTON,
Settings.HIDE_QUICK_ACTIONS_OPEN_MIX_PLAYLIST_BUTTON,
Settings.HIDE_QUICK_ACTIONS_OPEN_PLAYLIST_BUTTON,
Settings.HIDE_QUICK_ACTIONS_SAVE_TO_PLAYLIST_BUTTON,
Settings.HIDE_QUICK_ACTIONS_SHARE_BUTTON
);
}
/**
* Enable/Disable Preference related to Navigation settings
*/
private void setNavigationPreference() {
disablePreferences(
Settings.SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON.get(),
Settings.HIDE_NAVIGATION_CREATE_BUTTON
);
disablePreferences(
!Settings.SWITCH_CREATE_WITH_NOTIFICATIONS_BUTTON.get(),
Settings.HIDE_NAVIGATION_NOTIFICATIONS_BUTTON,
Settings.REPLACE_TOOLBAR_CREATE_BUTTON,
Settings.REPLACE_TOOLBAR_CREATE_BUTTON_TYPE
);
}
/**
* Set patch information preference summary
*/
@ -374,16 +301,6 @@ public class YouTubePreferenceFragment extends ToolbarPreferenceFragment {
compactLayoutPreference.setOnPreferenceChangeListener(clearAllUICaches);
}
/**
* Enable/Disable Preference related to Seek bar settings
*/
private void setSeekBarPreference() {
disablePreferences(
Settings.RESTORE_OLD_SEEKBAR_THUMBNAILS.get(),
Settings.ENABLE_SEEKBAR_THUMBNAILS_HIGH_QUALITY
);
}
/**
* Enable/Disable Preference related to Shorts settings
*/
@ -397,16 +314,6 @@ public class YouTubePreferenceFragment extends ToolbarPreferenceFragment {
}
}
/**
* Enable/Disable Preference related to Speed overlay settings
*/
private void setSpeedOverlayPreference() {
disablePreferences(
Settings.DISABLE_SPEED_OVERLAY.get(),
Settings.SPEED_OVERLAY_VALUE
);
}
private void setSpoofStreamingDataPreference() {
if (findPreference(Settings.SPOOF_STREAMING_DATA_DEFAULT_CLIENT.key) instanceof ListPreference listPreference
&& findPreference(SPOOF_STREAMING_DATA_USE_JS.key) instanceof SwitchPreference switchPreference) {

View file

@ -149,26 +149,6 @@ public class ExtendedUtils extends PackageUtils {
return additionalSettingsEnabled;
}
public static void launchWebViewActivity(Context mContext,
boolean clearCookiesOnStartUp,
boolean clearCookiesOnShutDown,
boolean useDesktopUserAgent,
String url) {
try {
Intent intent = new Intent();
intent.setPackage(mContext.getPackageName());
intent.setData(Uri.parse("revanced_webview"));
intent.putExtra("clearCookiesOnStartUp", clearCookiesOnStartUp);
intent.putExtra("clearCookiesOnShutDown", clearCookiesOnShutDown);
intent.putExtra("useDesktopUserAgent", useDesktopUserAgent);
intent.putExtra("url", url);
intent.setClassName(mContext, "com.google.android.libraries.youtube.player.features.gl.vr.VrWelcomeActivity");
mContext.startActivity(intent);
} catch (Exception ex) {
Logger.printException(() -> "launchWebViewActivity failed", ex);
}
}
public static LinearLayout prepareMainLayout(Context mContext) {
return prepareMainLayout(mContext, false);
}

View file

@ -18,27 +18,6 @@ public class ThemeUtils extends BaseThemeUtils {
return getStyleIdentifier(themeName);
}
public static Drawable getBackButtonDrawable(boolean isDarkModeEnabled) {
Drawable drawable = getDrawable("revanced_settings_toolbar_arrow_left");
if (drawable != null) {
drawable.setTint(getAppForegroundColor(isDarkModeEnabled));
return drawable;
}
final String drawableName = isDarkModeEnabled
? "yt_outline_arrow_left_white_24"
: "yt_outline_arrow_left_black_24";
return getDrawable(drawableName);
}
public static Drawable getMenuButtonDrawable(boolean isDarkModeEnabled) {
final String drawableName = isDarkModeEnabled
? "yt_outline_overflow_vertical_white_24"
: "yt_outline_overflow_vertical_black_24";
return getDrawable(drawableName);
}
public static Drawable getTrashButtonDrawable() {
final String drawableName = isDarkModeEnabled()
? "yt_outline_trash_can_white_24"

View file

@ -0,0 +1,174 @@
/*
* Aurora Store
* Copyright (C) 2019, Rahul Kumar Patel <whyorean@gmail.com>
*
* Aurora Store is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* Aurora Store is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
*
*
*/
package com.aurora.store.adapter;
import com.dragons.aurora.playstoreapiv2.AuthException;
import com.dragons.aurora.playstoreapiv2.GooglePlayAPI;
import com.dragons.aurora.playstoreapiv2.HttpClientAdapter;
import org.apache.commons.collections4.MapUtils;
import org.jetbrains.annotations.NotNull;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.concurrent.TimeUnit;
import app.revanced.extension.shared.utils.Logger;
import okhttp3.Cookie;
import okhttp3.CookieJar;
import okhttp3.FormBody;
import okhttp3.Headers;
import okhttp3.HttpUrl;
import okhttp3.MediaType;
import okhttp3.OkHttpClient;
import okhttp3.Request;
import okhttp3.RequestBody;
import okhttp3.Response;
public class OkHttpClientAdapter extends HttpClientAdapter {
private final OkHttpClient client;
public OkHttpClientAdapter() {
OkHttpClient.Builder builder = new OkHttpClient.Builder()
.connectTimeout(20, TimeUnit.SECONDS)
.readTimeout(20, TimeUnit.SECONDS)
.writeTimeout(20, TimeUnit.SECONDS)
.cookieJar(new CookieJar() {
private final HashMap<HttpUrl, List<Cookie>> cookieStore = new HashMap<>();
@Override
public void saveFromResponse(@NotNull HttpUrl url, @NotNull List<Cookie> cookies) {
cookieStore.put(url, cookies);
}
@NotNull
@Override
public List<Cookie> loadForRequest(@NotNull HttpUrl url) {
List<Cookie> cookies = cookieStore.get(url);
return cookies != null ? cookies : new ArrayList<>();
}
});
client = builder.build();
}
@Override
public byte[] get(String url, Map<String, String> params, Map<String, String> headers) throws IOException {
Request.Builder requestBuilder = new Request.Builder()
.url(buildUrl(url, params))
.get();
return request(requestBuilder, headers);
}
@Override
public byte[] post(String url, Map<String, String> params, Map<String, String> headers) throws IOException {
headers.put("Content-Type", "application/x-www-form-urlencoded; charset=UTF-8");
FormBody.Builder bodyBuilder = new FormBody.Builder();
if (MapUtils.isNotEmpty(params)) {
for (String name : params.keySet()) {
String value = params.get(name);
if (value != null) {
bodyBuilder.add(name, value);
}
}
}
Request.Builder requestBuilder = new Request.Builder()
.url(url)
.post(bodyBuilder.build());
return post(url, requestBuilder, headers);
}
@Override
@SuppressWarnings("deprecation")
public byte[] post(String url, byte[] body, Map<String, String> headers) throws IOException {
if (!headers.containsKey("Content-Type")) {
headers.put("Content-Type", "application/x-protobuf");
}
Request.Builder requestBuilder = new Request.Builder()
.url(url)
.post(RequestBody.create(MediaType.parse("application/x-protobuf"), body));
return post(url, requestBuilder, headers);
}
private byte[] post(String url, Request.Builder requestBuilder, Map<String, String> headers) throws IOException {
requestBuilder.url(url);
return request(requestBuilder, headers);
}
private byte[] request(Request.Builder requestBuilder, Map<String, String> headers) throws IOException {
Request request = requestBuilder
.headers(Headers.of(headers))
.build();
int code;
byte[] content = new byte[0];
try (Response response = client.newCall(request).execute()) {
code = response.code();
var body = response.body();
if (body != null) {
content = body.bytes();
}
}
if (content.length == 0) return null;
if (code == 401 || code == 403) {
AuthException authException = new AuthException("Auth error", code);
Map<String, String> authResponse = GooglePlayAPI.parseResponse(new String(content));
if ("NeedsBrowser".equals(authResponse.get("Error"))) {
authException.setTwoFactorUrl(authResponse.get("Url"));
}
throw authException;
} else if (code == 404) {
Map<String, String> authResponse = GooglePlayAPI.parseResponse(new String(content));
if ("UNKNOWN_ERR".equals(authResponse.get("Error"))) {
Logger.printException(() -> "Unknown error occurred: " + code);
} else
Logger.printException(() -> "App not found: " + code);
} else if (code == 429) {
Logger.printException(() -> "Rate-limiting enabled, you are making too many requests: " + code);
} else if (code >= 500) {
Logger.printException(() -> "Server error: " + code);
} else if (code >= 400) {
Logger.printException(() -> "Malformed request: " + code);
}
return content;
}
public String buildUrl(String url, Map<String, String> params) {
var httpUrl = HttpUrl.parse(url);
if (httpUrl == null) return null;
HttpUrl.Builder urlBuilder = httpUrl.newBuilder();
if (null != params && !params.isEmpty()) {
for (String name : params.keySet()) {
urlBuilder.addQueryParameter(name, params.get(name));
}
}
return urlBuilder.build().toString();
}
}

View file

@ -0,0 +1,49 @@
/*
* Aurora Store
* Copyright (C) 2019, Rahul Kumar Patel <whyorean@gmail.com>
*
* Yalp Store
* Copyright (C) 2018 Sergey Yeriomin <yeriomin@gmail.com>
*
* Aurora Store is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* Aurora Store is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
*
*
*/
package com.aurora.store.provider;
import android.os.Build;
import com.dragons.aurora.playstoreapiv2.DeviceInfoProvider;
public class NativeDeviceInfoProvider implements DeviceInfoProvider {
private NativeGsfVersionProvider gsfVersionProvider;
public void setGsfVersionProvider() {
gsfVersionProvider = new NativeGsfVersionProvider();
}
public int getSdkVersion() {
return Build.VERSION.SDK_INT;
}
public int getPlayServicesVersion() {
return gsfVersionProvider.getGsfVersionCode(true);
}
public String getAuthUserAgentString() {
return "GoogleAuth/1.4 (" + Build.DEVICE + " " + Build.ID + ")";
}
}

View file

@ -0,0 +1,50 @@
/*
* Aurora Store
* Copyright (C) 2019, Rahul Kumar Patel <whyorean@gmail.com>
*
* Yalp Store
* Copyright (C) 2018 Sergey Yeriomin <yeriomin@gmail.com>
*
* Aurora Store is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* Aurora Store is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Aurora Store. If not, see <http://www.gnu.org/licenses/>.
*
*
*/
package com.aurora.store.provider;
import android.content.pm.PackageInfo;
import app.revanced.extension.shared.utils.PackageUtils;
public class NativeGsfVersionProvider {
static private final String GOOGLE_SERVICES_PACKAGE_ID = "com.google.android.gms";
static private final int GOOGLE_SERVICES_VERSION_CODE = 250434004;
private int gsfVersionCode = 0;
public NativeGsfVersionProvider() {
PackageInfo packageInfo = PackageUtils.getPackageInfo(GOOGLE_SERVICES_PACKAGE_ID);
if (packageInfo != null) {
gsfVersionCode = packageInfo.versionCode;
}
}
public int getGsfVersionCode(boolean defaultIfNotFound) {
return defaultIfNotFound && gsfVersionCode < GOOGLE_SERVICES_VERSION_CODE
? GOOGLE_SERVICES_VERSION_CODE
: gsfVersionCode;
}
}

View file

@ -0,0 +1,34 @@
package com.aurora.store.task;
import android.util.Pair;
import com.aurora.store.adapter.OkHttpClientAdapter;
import com.aurora.store.util.ApiBuilderUtil;
import com.dragons.aurora.playstoreapiv2.GooglePlayAPI;
import org.apache.commons.lang3.StringUtils;
import java.util.Locale;
public class AuthTask {
protected GooglePlayAPI api;
public AuthTask() {
api = new GooglePlayAPI();
api.setLocale(Locale.getDefault());
api.setDeviceInfoProvider(ApiBuilderUtil.getDeviceInfoProvider());
api.setClient(new OkHttpClientAdapter());
}
public Pair<String, String> getAuthToken(String email, String oauth_token) throws Exception {
String aasToken = api.generateAASToken(email, oauth_token);
if (StringUtils.isNotEmpty(aasToken)) {
return new Pair<>(aasToken, api.generateYouTubeToken(email, aasToken));
}
return null;
}
public String refreshAuthToken(String email, String aasToken) throws Exception {
return api.generateYouTubeToken(email, aasToken);
}
}

View file

@ -0,0 +1,12 @@
package com.aurora.store.util;
import com.aurora.store.provider.NativeDeviceInfoProvider;
import com.dragons.aurora.playstoreapiv2.DeviceInfoProvider;
public class ApiBuilderUtil {
public static DeviceInfoProvider getDeviceInfoProvider() {
NativeDeviceInfoProvider deviceInfoProvider = new NativeDeviceInfoProvider();
deviceInfoProvider.setGsfVersionProvider();
return deviceInfoProvider;
}
}

View file

@ -1,15 +0,0 @@
package com.liskovsoft.googlecommon.common.api
import com.liskovsoft.googlecommon.common.converters.regexp.WithRegExp
import retrofit2.Call
import retrofit2.http.GET
import retrofit2.http.Url
@WithRegExp
internal interface FileApi {
@GET
fun getContent(@Url fileUrl: String?): Call<FileContent?>?
@GET
fun getHeaders(@Url fileUrl: String?): Call<Void?>?
}

View file

@ -1,11 +0,0 @@
package com.liskovsoft.googlecommon.common.api
import com.liskovsoft.googlecommon.common.converters.regexp.RegExp
internal class FileContent {
@RegExp("[\\w\\W]*")
private val mContent: String? = null
val content: String?
get() = mContent
}

View file

@ -1,11 +0,0 @@
package com.liskovsoft.googlecommon.common.converters;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD})
public @interface FieldNullable {
}

View file

@ -1,76 +0,0 @@
/*
* Copyright (C) 2015 Square, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.liskovsoft.googlecommon.common.converters.gson;
import com.google.gson.Gson;
import com.google.gson.TypeAdapter;
import com.google.gson.reflect.TypeToken;
import java.lang.annotation.Annotation;
import java.lang.reflect.Type;
import okhttp3.RequestBody;
import okhttp3.ResponseBody;
import retrofit2.Converter;
import retrofit2.Retrofit;
/**
* A {@linkplain Converter.Factory converter} which uses Gson for JSON.
* <p>
* Because Gson is so flexible in the types it supports, this converter assumes that it can handle
* all types. If you are mixing JSON serialization with something else (such as protocol buffers),
* you must {@linkplain Retrofit.Builder#addConverterFactory(Converter.Factory) add this instance}
* last to allow the other converters a chance to see their types.
*/
public final class GsonConverterFactory extends Converter.Factory {
/**
* Create an instance using a default {@link Gson} instance for conversion. Encoding to JSON and
* decoding from JSON (when no charset is specified by a header) will use UTF-8.
*/
public static GsonConverterFactory create() {
return create(new Gson());
}
/**
* Create an instance using {@code gson} for conversion. Encoding to JSON and
* decoding from JSON (when no charset is specified by a header) will use UTF-8.
*/
@SuppressWarnings("ConstantConditions") // Guarding public API nullability.
public static GsonConverterFactory create(Gson gson) {
if (gson == null) throw new NullPointerException("gson == null");
return new GsonConverterFactory(gson);
}
private final Gson gson;
private GsonConverterFactory(Gson gson) {
this.gson = gson;
}
@Override
public Converter<ResponseBody, ?> responseBodyConverter(Type type, Annotation[] annotations,
Retrofit retrofit) {
TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type));
return new GsonResponseBodyConverter<>(gson, adapter);
}
@Override
public Converter<?, RequestBody> requestBodyConverter(Type type,
Annotation[] parameterAnnotations, Annotation[] methodAnnotations, Retrofit retrofit) {
TypeAdapter<?> adapter = gson.getAdapter(TypeToken.get(type));
return new GsonRequestBodyConverter<>(gson, adapter);
}
}

View file

@ -1,53 +0,0 @@
/*
* Copyright (C) 2015 Square, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.liskovsoft.googlecommon.common.converters.gson;
import com.google.gson.Gson;
import com.google.gson.TypeAdapter;
import java.io.IOException;
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import okhttp3.MediaType;
import okhttp3.RequestBody;
import retrofit2.Converter;
final class GsonRequestBodyConverter<T> implements Converter<T, RequestBody> {
private static final MediaType MEDIA_TYPE = MediaType.get("application/json; charset=UTF-8");
private static final Charset UTF_8 = StandardCharsets.UTF_8;
private final Gson gson;
private final TypeAdapter<T> adapter;
GsonRequestBodyConverter(Gson gson, TypeAdapter<T> adapter) {
this.gson = gson;
this.adapter = adapter;
}
@Override
public RequestBody convert(T value) throws IOException {
//Buffer buffer = new Buffer();
//Writer writer = new OutputStreamWriter(buffer.outputStream(), UTF_8);
//JsonWriter jsonWriter = gson.newJsonWriter(writer);
//adapter.write(jsonWriter, value);
//jsonWriter.close();
//return RequestBody.create(MEDIA_TYPE, buffer.readByteString());
// Accept raw json body
return RequestBody.create(MEDIA_TYPE, value.toString());
}
}

Some files were not shown because too many files have changed in this diff Show more