gpt4 book ai didi

iPhone:我想出了一个有趣的方法来绕过 API 限制。这行得通吗?

转载 作者:搜寻专家 更新时间:2023-10-30 19:50:02 25 4
gpt4 key购买 nike

我要解决的问题是:

当使用 UIImagePicker 时,它会在设备旋转时自行调整。我不希望它这样做,而是应该始终保持纵向。我用谷歌搜索了很多但没有找到任何解决方案(只是其他人有同样 Unresolved 问题)。唯一的答案是使用私有(private) API 调用,我不想冒险这样做。

-

但是,我遇到了'method swizzling ' - 一种在运行时交换方法名称的方法。我打算做什么:

  • 向 UIViewController 添加一个类别,该类别定义了一种方法,例如定义不允许旋转的自定义行为的“customShouldRotate”。

  • 在运行时使用 UIViewController 的默认旋转方法调配这些方法。

-

虽然想了想,事情可能没那么简单。原因如下 - 任何对以下问题的回答都将不胜感激。

  • 我调配的方法在 UIViewController 中,而不是 UIImagePickerController 中。我不能直接在图像选择器中调配,我已经通过子类化尝试过,它似乎是一个处理旋转的 subview Controller ,而不是 UIImagePickerController 本身。 swizzled 方法会传递给子类吗?如果没有,是否有解决方法?

  • 在 UIImagePickerController 中使用的可能不是来自 UIViewController 的正常旋转方法。有什么办法可以告诉吗?

  • Apple 会接受 method swizzling 吗?我没有使用私有(private) API 调用,但话又说回来,如果他们拒绝它,我也不会太惊讶。

-

整个想法是否可行/值得尝试 - 或者,如果有人实际上以不同的方式解决了原始问题,那会更好。

最佳答案

Method swizzling 很好:Apple 使用静态分析器检查私有(private) API。如果您可以重载、混合或执行您想要的操作以实现相同的效果, 无需调用私有(private) API,分析器就不会获取它。

Apple 可能拒绝您的唯一原因是修改“标准”行为 - 但我怀疑这不会发生。最糟糕的是您的应用被踢回给您,您必须恢复原来的行为。

关于iPhone:我想出了一个有趣的方法来绕过 API 限制。这行得通吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5374907/

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