ios - swift 盾 : Obfuscation using SwiftShield gives error

标签 ios swift obfuscation

我想使用 SwiftShield 混淆 Swift 代码.我已经使用 Cocoapods 进行了集成。

要运行它,我在终端中使用以下 SwiftShield 工具:

swiftshield -automatic -project-root /app/MyApp -automatic-project-file 
/app/MyApp/MyApp.xcworkspace -automatic-project-scheme MyApp-AppStore

获取错误:

-bash: swiftshield: command not found

我已经将 swiftshield 可执行文件从 pod 复制到/usr/local/bin 并尝试了相同的命令,但仍然出现以下错误

dyld: Library not loaded: @rpath/sourcekitd.framework/Versions/A/sourcekitd
Referenced from: /usr/local/bin/swiftshield
Reason: image not found
Abort trap: 6

可能是什么问题?如何安装SwiftShield

最佳答案

问题与 Xcode 路径有关。我的机器上安装了 2 个 Xcode 版本。

/Applications/Xcode10.3.1.app

/Applications/Xcode11.1.app

我删除了 Xcode10.3.1.app 并将 Xcode11.1.app 重命名为 < em>Xcode.app。现在问题得到解决。 https://github.com/rockbruno/swiftshield/issues/71#event-2832206369

swiftshield使用步骤(手动模式):

  1. 在桌面上下载 swiftshield 可执行文件 https://github.com/rockbruno/swiftshield/releases
  2. 命令行 - 转到桌面并授予可执行权限
sudo chmod 755 swiftshield
  1. 将 swiftshield 可执行文件移至/usr/bin
sudo cp swiftshield /usr/local/bin
  1. 检查是否安装正确
swiftshield --help
  1. 更改项目根文件夹的权限以重命名混淆代码
chmod -R 774 ./ProjectRootDir
  1. 使用手动模式混淆代码
swiftshield -project-root ./ProjectRootDir -tag __obf -verbose

关于ios - swift 盾 : Obfuscation using SwiftShield gives error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54304648/

相关文章:

ios - 插入 SQLite 数据库

ios - 如何以编程方式从 pc 获取 iphone 当前屏幕截图?

ios - 在单元测试中处理 MainThread 执行

Swift/Firestore/Cloud Functions - 向随机用户发送消息

ios - SwiftUI - 显示和隐藏自定义警报

ios - 未将普通 UIView 添加到 UIStackView

php - 执行 Javascript 服务器端

ios - 如何在 -dealloc 中正确释放 CGMutablePathRef?

java - 混淆我的 jar 会导致执行时出现空指针

.net - 在 .Net DataSets 上使用列名或列索引更好吗?