gpt4 book ai didi

ios - 如何检测设备上是否安装了AppSync?

转载 作者:行者123 更新时间:2023-11-29 13:26:06 25 4
gpt4 key购买 nike

AppSync 会导致 iCloud 和应用内购买出现一些问题,因此我想检测它是否存在于设备上以处理 iCloud 和 IAP 的奇怪行为。有什么办法可以知道吗?

没关系,如果设备越狱,但 AppSync 会阻止我的应用程序正常工作,而且这显然是“黑客攻击的痕迹”。

最佳答案

我已经搜索并找到了 AppSync 的踪迹,这里是用于查明它是否存在于设备上的代码。是的,它比需要的时间长了一点,但我想确定一下。当然在发布代码中你应该以某种方式混淆字符串,但仅此而已:

bool isAppSyncExist()
{
BOOL isbash = NO;
BOOL isappsync = NO;
FILE *f = fopen("/bin/bash", "r");
if (f != NULL)
{
//Device is jailbroken
isbash = YES;
fclose(f);
}

if (isbash)
{
f = fopen("/Library/MobileSubstrate/DynamicLibraries/AppSync.plist", "r");
if (f != NULL)
{
isappsync = YES;
fclose(f);
}
if (isappsync == NO)
{
NSError *err;
NSArray *files = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:@"/private/var/lib/dpkg/info" error:&err];

for (int i = 0; i < files.count; i++)
{
NSString *fname = [files objectAtIndex:i];
if ([fname rangeOfString:@"appsync" options:NSCaseInsensitiveSearch].location != NSNotFound)
{
isappsync = YES;
break;
}
}
}
if (isappsync == NO)
{
NSError *err;
NSArray *files = [[NSFileManager defaultManager] contentsOfDirectoryAtPath:@"/var/lib/dpkg/info" error:&err];

for (int i = 0; i < files.count; i++)
{
NSString *fname = [files objectAtIndex:i];
if ([fname rangeOfString:@"appsync" options:NSCaseInsensitiveSearch].location != NSNotFound)
{
isappsync = YES;
break;
}
}
}
}

return isappsync == YES;
}

关于ios - 如何检测设备上是否安装了AppSync?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13077843/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com