gpt4 book ai didi

ios - 如何修复我的 Cydia 应用程序的用户目录权限?

转载 作者:行者123 更新时间:2023-12-02 09:02:47 24 4
gpt4 key购买 nike

我在 Cydia 上托管的应用程序遇到问题。用户提示该应用程序在启动时崩溃。该应用程序使用 CoreData,我认为这与此有关。奇怪的是,在测试时使用模拟器或在我的设备上它工作得很好。但是一旦通过 Cydia 安装它就会崩溃。

事实证明,使用 SBSettings 中的“修复用户目录权限”可以解决此问题。

现在我该怎么办?

最佳答案

我刚刚与 BigBoss 的存储库人员就此进行了讨论。

我从未真正得到明确的答案,但在我看来,当 Cydia 安装您的应用程序时,它不一定(显式)为您的应用程序设置所有权。这对我来说似乎很奇怪。就我而言,他们正在测试安装我的应用程序,发现它的所有者是 user/group = { 1000/100 },这是我准备 .deb 包的机器上的 Linux 用户 ID 和组 ID!

如果我构建一个 .deb 包,将其部署到我自己的本地测试存储库,并使用 Cydia 安装它(指向我自己的存储库),我也可以看到相同的行为。

无论如何,我向他们解释了这一点,他们做了一些事情来解决它(没有我做更多的事情)。

但是,另一种选择是手动修复安装后脚本中的权限。在您的 .deb 包中,您将具有以下文件夹和文件结构:

  • DEBIAN/控制
  • DEBIAN/postrm
  • DEBIAN/postinst
  • DEBIAN/preinst

如果您将其放入 postinst 脚本中,我认为它应该立即修复此问题,而无需随后进入 SBSettings:

#!/bin/bash

chown -R root.wheel /Applications/MyAppName.app/

exit 0

例如,如果您需要创建其他目录,您可以在脚本中执行更多操作。但是,上述内容至少足以更改 .app 目录本身的所有权。

This BigBoss link建议在应用的代码中创建其他目录,并指出安装程序以root身份运行,而您的应用通常以移动设备用户身份运行。根据您正在执行的操作,最好在 postinst(root)或应用程序(移动设备)中修复所有权/权限。

关于ios - 如何修复我的 Cydia 应用程序的用户目录权限?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11260196/

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