标签: iphone-privateapi

NSURLRequest的私有"setAllowsAnyHTTPSCertificate:forHost:"的替代方法?

我的iPhone应用程序仅因使用(非常安全,似乎)私有方法+setAllowsAnyHTTPSCertificate:forHost:而被拒绝NSURLRequest.是否有非私有API来模拟此功能?

iphone cocoa cocoa-touch iphone-privateapi nsurlrequest

16
推荐指数
2
解决办法
2万
查看次数

关闭iPhone OS(iOS)中的显示

有没有办法以编程方式关闭iOS中的显示?不只是降低亮度,而是关闭电话应用程序的方式.我很乐意使用私有API,因为这是供个人使用.

谢谢!

iphone iphone-privateapi ios

16
推荐指数
3
解决办法
2万
查看次数

可以使用私有API在我的应用程序中以编程方式调用Siri吗?

我希望以编程方式在我的应用程序中启动Siri,而不是让用户按住主页按钮.由于没有可用于实现此目的的公共API,我想知道,如果有人能够通过私有API以编程方式启动Siri,那么您使用了哪些私有API?

我对Siri的任何返回值都不感兴趣.我想要做的就是启动它.

iphone-privateapi ios siri

16
推荐指数
1
解决办法
2万
查看次数

处理Xcode中的私有框架≥7.3

使用Xcode 7.3/iOS 9.3 Apple从iOS SDK中删除了所有私有框架.出于研究目的(不是App Store!),我需要使用私有框架(即BluetoothManager.framework,这也是任何其他私有框架的问题).

因为这些框架不再在iOS SDK中提供,所以如果我的项目尝试显式链接到此框架,则会出现构建(链接器)错误.

对于长期(呃) - 期限解决方案的任何想法?

xcode iphone-privateapi ios ios9.3

16
推荐指数
1
解决办法
6952
查看次数

获取当前正在运行的应用程序(第三方)捆绑标识符

如何让应用程序名称在前台运行?它在iOS 7中使用SpringBoard,但在iOS 8中我没有得到结果.任何帮助表示赞赏.我不需要在苹果商店提交我的应用程序,所以如果还有任何补丁或脚本,请告诉我.

代码在iOS 8.0以下正常运行

- (NSMutableString*) getActiveApps
{
mach_port_t *port;
void *lib = dlopen(SBSERVPATH, RTLD_LAZY);
int (*SBSSpringBoardServerPort)() =
dlsym(lib, "SBSSpringBoardServerPort");
port = (mach_port_t *)SBSSpringBoardServerPort();
dlclose(lib);

//mach_port_t * port = [self getSpringBoardPort];
// open springboard lib
//void *lib = dlopen(SBSERVPATH, RTLD_LAZY);

// retrieve function SBFrontmostApplicationDisplayIdentifier
void *(*SBFrontmostApplicationDisplayIdentifier)(mach_port_t *port, char *result) =
dlsym(lib, "SBFrontmostApplicationDisplayIdentifier");

// reserve memory for name
char appId[256];
memset(appId, 0, sizeof(appId));

// retrieve front app name
SBFrontmostApplicationDisplayIdentifier(port, appId);

// close dynlib
dlclose(lib);
return [[NSString stringWithFormat:@"%s", appId] retain];
} …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c iphone-privateapi ios ios8

15
推荐指数
1
解决办法
2908
查看次数

动态模拟iOS动态类型系统文本大小(UIContentSizeCategory)

我想用不同的系统文本大小选项轻松测试我的应用程序,包括可访问性大小.这些可以在"设置"应用中设置(显示和亮度=>文字大小或常规=>辅助功能=>较大文本).

我目前可以找到的唯一方法是进入设置并使用UI更改值(编辑:下面描述的部分解决方案).这很慢而且很麻烦.我怀疑有一种方法可以使用私有API动态地改变它,但我无法弄清楚如何.由于我的目标是仅将其用于调试,因此私有API使用和调配很好(此代码不会用于生产).

为了尝试找到一个私有API来实现这一点,我查看了一些逆向工程资源.我是新的反汇编程序,符号表,类转储,以及查找我可以使用的私有API,但这是我到目前为止所尝试的:

  • 我成功地调高了-[UIApplication preferredContentSizeCategory](其他帖子说这在过去有效),但这不会影响从中返回的结果+[UIFont preferredFontForTextStyle:].

  • 使用反汇编程序IDA,我发现它+[UIFont preferredFontForTextStyle:]位于私有框架中UIFoundation.framework.(-[UIApplication preferredContentSizeCategory]在,UIKit.framework但反汇编并没有看起来有用).

  • 正如我开始写这个问题(它总是这样发生),我发现了一个部分解决方案.可以在方案中设置启动参数以在启动时设置值.这很有用,但不是我追求的.

  • 通过上面的回答,我发现用户偏好的值显然存储在" com.apple.UIKit.plist位于模拟器data/Library/Preferences目录中的文件"中.我们所追求的值可以从命令行实用程序设置plutil.这也是一种改进!但是我想在运行时动态地改变它.

更多关于IDA的结果:

我真的不知道如何阅读反汇编,但+[UIFont preferredFontForTextStyle:]似乎指向一个符号___UIFontForTextStyle,它似乎指向一些有趣的符号,称为_getUIContentSizeCategoryUnspecified_getUIContentSizeCategoryPreferenceClass

<code>nm</code></a>上<code>UIFoundation.framework</code>.它们用小写字母"符号在小对象的未初始化数据部分中." .我不知道这意味着什么(我收集到的只是他们不是一个阶级或方法).

在网上搜索_getUIContentSizeCategory...符号不会产生任何结果,但附近还有另一个符号_getUIApplicationClass.我搜索了那个,因为它听起来更一般,并在一些WebKit源代码中发现了类似的东西.可能一无所获,但也许这是Apple的内部约定.无论如何,这个例子并没有真正帮助我解决问题.

无论如何感谢阅读到目前为止.如果你还在这里,我的问题是:

我希望能够动态模拟动态类型大小首选项的值.这些反汇编符号可能有所帮助,但也许我走错了路.感觉解决方案很接近,但我不能将所有部分放在一起.

将此值设置为启动参数很好,但不能完全解决我的问题.同样,修改模拟器的值plist也很适合自动化,但不能解决我的问题.

有没有办法在运行时动态更改此值?

objective-c disassembly iphone-privateapi uifont ios

15
推荐指数
1
解决办法
818
查看次数

一种重启iOS设备或使用私有API重启Springboard的方法?

我正在寻找一些私有API或一段代码,这将允许我重新启动iOS设备或重新启动Springboard.

我查看了SBReboot,但看起来它受某些权利的保护.

此外,我尝试了reboot(int)和reboot2(int),但看起来它们都只适用于"root"用户,并且不会为"移动"用户做任何事情.

我正在寻找适用于非越狱设备的解决方案.但是,私有API是可以的(应用程序不会去AppStore)

更新1

回应乔赛亚的回答如下.寻找获得root权限的expoit并不是唯一的选择.例如,任何允许崩溃内核或Springboard的漏洞对我来说都没问题(即使它不能用于获取root权限).

iphone-privateapi ios

14
推荐指数
1
解决办法
5292
查看次数

无论iOS 7(Jailbroken)中哪个应用程序位于最前端,如何为整个屏幕截取屏幕截图

在iOS7之前我使用UIGetScreenImage()函数来轻松截取屏幕截图,但在iOS7中,它已被弃用,现在有什么好方法可以存档吗?谢谢!

另外:我需要在任何视图中截取整个屏幕的截图

objective-c tweak cydia iphone-privateapi ios

14
推荐指数
1
解决办法
4929
查看次数

如何在Swift中访问iOS私有API?

如何调用非公共iOS函数并从Swift访问非公共属性?具体来说,我想在QuartzCore框架中使用一个非公共类.

我想到的一个解决方案是创建"桥接"Objective-C项目,将非公共API包装到公共API中,然后从Swift中调用这个Objective-C函数.但是,我的解决方案现在是纯粹的Swift,我宁愿保持这种方式.有没有更坚定的方式?(例如向Objective-C桥接头文件添加内容)

注意:我知道你在想什么,私有API是私有的,因为它们不应该被使用.我知道风险,我知道所有的烦恼,应用程序商店限制等.经过仔细考虑和大量的研究,不幸的是,这似乎仍然是这个特殊情况下的最佳方式.

objective-c iphone-privateapi ios quartz-core swift

14
推荐指数
2
解决办法
7094
查看次数

LSApplicationWorkspace不能在iOS 11上运行吗?

我有一个私人应用程序需要扫描所有应用程序和方案,并使用私有API LSApplicationWorkspace defaultWorkspace与其他功能方法,如privateURLSchemes allInstalledApplications.这个应用程序运行良好,我可以在iOS 11之前从私有API获得我所需要的一切,但在这个版本中我只得到一些警告和一个空数组.似乎Apple限制了开发人员无法在iOS 11中私下使用的私有API.

所以我的问题是在iOS 11中有哪些替代方法可以满足我的需求?

iphone-privateapi ios ios11

14
推荐指数
1
解决办法
3172
查看次数