mirror of
https://github.com/chiteroman/PlayIntegrityFix.git
synced 2025-01-19 03:22:39 +02:00
v14.3
This commit is contained in:
parent
a4dc168e12
commit
70c4c3d2eb
@ -25,13 +25,16 @@ static void modify_callback(void *cookie, const char *name, const char *value, u
|
|||||||
std::string_view prop(name);
|
std::string_view prop(name);
|
||||||
|
|
||||||
if (prop.ends_with("api_level")) {
|
if (prop.ends_with("api_level")) {
|
||||||
value = "21";
|
value = "23";
|
||||||
LOGD("[%s]: %s", name, value);
|
LOGD("[%s]: %s", name, value);
|
||||||
} else if (prop.ends_with("security_patch")) {
|
} else if (prop.ends_with("security_patch")) {
|
||||||
value = "2020-05-05";
|
value = "2018-01-05";
|
||||||
|
LOGD("[%s]: %s", name, value);
|
||||||
|
} else if (prop.ends_with("vndk.version")) {
|
||||||
|
value = "23";
|
||||||
LOGD("[%s]: %s", name, value);
|
LOGD("[%s]: %s", name, value);
|
||||||
} else if (prop == "ro.build.id") {
|
} else if (prop == "ro.build.id") {
|
||||||
value = "QQ2A.200501.001.B3";
|
value = "NRD90M";
|
||||||
LOGD("[%s]: %s", name, value);
|
LOGD("[%s]: %s", name, value);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -69,7 +72,6 @@ public:
|
|||||||
}
|
}
|
||||||
|
|
||||||
void preAppSpecialize(zygisk::AppSpecializeArgs *args) override {
|
void preAppSpecialize(zygisk::AppSpecializeArgs *args) override {
|
||||||
bool isGms = false, isGmsUnstable = false;
|
|
||||||
|
|
||||||
if (to_app_id(args->uid) < 10000 || to_app_id(args->uid) > 19999 || // not app process
|
if (to_app_id(args->uid) < 10000 || to_app_id(args->uid) > 19999 || // not app process
|
||||||
(args->is_child_zygote && *(args->is_child_zygote))) { // app_zygote
|
(args->is_child_zygote && *(args->is_child_zygote))) { // app_zygote
|
||||||
@ -78,6 +80,8 @@ public:
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool isGms = false, isGmsUnstable = false;
|
||||||
|
|
||||||
auto process = env->GetStringUTFChars(args->nice_name, nullptr);
|
auto process = env->GetStringUTFChars(args->nice_name, nullptr);
|
||||||
|
|
||||||
if (process) {
|
if (process) {
|
||||||
@ -89,24 +93,24 @@ public:
|
|||||||
|
|
||||||
if (isGms) { // GMS processes
|
if (isGms) { // GMS processes
|
||||||
api->setOption(zygisk::FORCE_DENYLIST_UNMOUNT);
|
api->setOption(zygisk::FORCE_DENYLIST_UNMOUNT);
|
||||||
|
}
|
||||||
|
|
||||||
if (isGmsUnstable) { // Unstable GMS process, which runs DroidGuard
|
if (isGmsUnstable) { // Unstable GMS process, which runs DroidGuard
|
||||||
long size = 0;
|
uint32_t size = 0;
|
||||||
int fd = api->connectCompanion();
|
int fd = api->connectCompanion();
|
||||||
|
|
||||||
read(fd, &size, sizeof(long));
|
read(fd, &size, sizeof(uint32_t));
|
||||||
|
|
||||||
if (size > 0) {
|
if (size > 0) {
|
||||||
vector.resize(size);
|
vector.resize(size);
|
||||||
read(fd, vector.data(), size);
|
read(fd, vector.data(), size);
|
||||||
} else {
|
} else {
|
||||||
LOGD("Couldn't read classes.dex");
|
LOGD("Couldn't read classes.dex");
|
||||||
api->setOption(zygisk::DLCLOSE_MODULE_LIBRARY);
|
api->setOption(zygisk::DLCLOSE_MODULE_LIBRARY);
|
||||||
}
|
|
||||||
|
|
||||||
close(fd);
|
|
||||||
return;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
close(fd);
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
api->setOption(zygisk::DLCLOSE_MODULE_LIBRARY);
|
api->setOption(zygisk::DLCLOSE_MODULE_LIBRARY);
|
||||||
@ -163,7 +167,7 @@ private:
|
|||||||
|
|
||||||
static void companion(int fd) {
|
static void companion(int fd) {
|
||||||
std::vector<uint8_t> vector;
|
std::vector<uint8_t> vector;
|
||||||
long size = 0;
|
uint32_t size = 0;
|
||||||
|
|
||||||
FILE *dex = fopen("/data/adb/modules/playintegrityfix/classes.dex", "rb");
|
FILE *dex = fopen("/data/adb/modules/playintegrityfix/classes.dex", "rb");
|
||||||
|
|
||||||
@ -178,7 +182,7 @@ static void companion(int fd) {
|
|||||||
fclose(dex);
|
fclose(dex);
|
||||||
}
|
}
|
||||||
|
|
||||||
write(fd, &size, sizeof(long));
|
write(fd, &size, sizeof(uint32_t));
|
||||||
write(fd, vector.data(), size);
|
write(fd, vector.data(), size);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -45,13 +45,13 @@ public final class EntryPoint {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static void spoofDevice() {
|
static void spoofDevice() {
|
||||||
setProp("PRODUCT", "taimen");
|
setProp("PRODUCT", "foster_e_hdd");
|
||||||
setProp("DEVICE", "taimen");
|
setProp("DEVICE", "foster");
|
||||||
setProp("MANUFACTURER", "Google");
|
setProp("MANUFACTURER", "NVIDIA");
|
||||||
setProp("BRAND", "google");
|
setProp("BRAND", "NVIDIA");
|
||||||
setProp("MODEL", "Pixel 2 XL");
|
setProp("MODEL", "SHIELD Android TV");
|
||||||
setProp("FINGERPRINT", "google/taimen/taimen:10/QQ2A.200501.001.B3/6396602:user/release-keys");
|
setProp("FINGERPRINT", "NVIDIA/foster_e_hdd/foster:7.0/NRD90M/2427173_1038.2788:user/release-keys");
|
||||||
setVersionProp("SECURITY_PATCH", "2020-05-05");
|
setVersionProp("SECURITY_PATCH", "2018-01-05");
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void setProp(String name, String value) {
|
private static void setProp(String name, String value) {
|
||||||
|
@ -13,30 +13,26 @@ if [ -d /data/adb/modules/MagiskHidePropsConf ]; then
|
|||||||
ui_print "- ! WARNING, MagiskHidePropsConf module may cause issues with PIF"
|
ui_print "- ! WARNING, MagiskHidePropsConf module may cause issues with PIF"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Check if ROM is xiaomi.eu
|
# Remove xiaomi.eu apps
|
||||||
if [ "$(resetprop ro.build.host)" = "xiaomi.eu" ] || [ "$(resetprop ro.build.host)" = "EliteDevelopment" ]; then
|
|
||||||
|
|
||||||
ui_print "- ! Detected Xiaomi.eu custom ROM."
|
if [ -d "/product/app/XiaomiEUInject" ]; then
|
||||||
|
|
||||||
if [ -d "/product/app/XiaomiEUInject" ]; then
|
|
||||||
|
|
||||||
directory="$MODPATH/product/app/XiaomiEUInject"
|
directory="$MODPATH/product/app/XiaomiEUInject"
|
||||||
|
|
||||||
[ -d "$directory" ] || mkdir -p "$directory"
|
[ -d "$directory" ] || mkdir -p "$directory"
|
||||||
|
|
||||||
touch "$directory/.replace"
|
touch "$directory/.replace"
|
||||||
|
|
||||||
ui_print "- XiaomiEUInject app removed."
|
ui_print "- XiaomiEUInject app removed."
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -d "/system/app/XInjectModule" ]; then
|
if [ -d "/system/app/XInjectModule" ]; then
|
||||||
|
|
||||||
directory="$MODPATH/system/app/XInjectModule"
|
directory="$MODPATH/system/app/XInjectModule"
|
||||||
|
|
||||||
[ -d "$directory" ] || mkdir -p "$directory"
|
[ -d "$directory" ] || mkdir -p "$directory"
|
||||||
|
|
||||||
touch "$directory/.replace"
|
touch "$directory/.replace"
|
||||||
|
|
||||||
ui_print "- XInjectModule app removed."
|
ui_print "- XInjectModule app removed."
|
||||||
fi
|
|
||||||
fi
|
fi
|
@ -1,7 +1,7 @@
|
|||||||
id=playintegrityfix
|
id=playintegrityfix
|
||||||
name=Play Integrity Fix
|
name=Play Integrity Fix
|
||||||
version=v14.2.1
|
version=v14.3
|
||||||
versionCode=14210
|
versionCode=14300
|
||||||
author=chiteroman
|
author=chiteroman
|
||||||
description=Fuck Play Integrity API.
|
description=Fuck Play Integrity API.
|
||||||
updateJson=https://raw.githubusercontent.com/chiteroman/PlayIntegrityFix/main/update.json
|
updateJson=https://raw.githubusercontent.com/chiteroman/PlayIntegrityFix/main/update.json
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"version": "v14.2.1",
|
"version": "v14.3",
|
||||||
"versionCode": 14210,
|
"versionCode": 14300,
|
||||||
"zipUrl": "https://github.com/chiteroman/PlayIntegrityFix/releases/download/v14.2.1/PlayIntegrityFix_v14.2.1.zip",
|
"zipUrl": "https://github.com/chiteroman/PlayIntegrityFix/releases/download/v14.3/PlayIntegrityFix_v14.3.zip",
|
||||||
"changelog": "https://raw.githubusercontent.com/chiteroman/PlayIntegrityFix/main/changelog.md"
|
"changelog": "https://raw.githubusercontent.com/chiteroman/PlayIntegrityFix/main/changelog.md"
|
||||||
}
|
}
|
Loading…
Reference in New Issue
Block a user