HyperioniOS 1.2.0

HyperioniOS 1.2.0

测试已测试
语言语言 Obj-CObjective C
许可 MIT
发布最后发布2021 年 5 月

Chris MaysWillowTreeBen Humphries 维护。



  • WillowTree

Hyperion

Platform License Carthage compatible Version CI Status Hyperion Logo

Hyperion - 应用内设计审查工具

它是啥?

Hyperion 是一个可以轻松集成到任何应用程序中的隐藏式插件抽屉。抽屉悄悄🙊位于应用的底部,以便在需要时存在,不在需要时占据空间。Hyperion 插件旨在使您的应用程序检查变得更加快捷简单。例如,看看这个允许您测量视图之间距离的插件

如果您喜欢您所看到的内容,还有更多。

第一方插件

查看检查器

查看检查器插件允许您在应用内实时检查任何视图的属性。

想检查小视图?没问题,在插件活动时,您可以放大应用中任何部分。

测量

测量插件允许您测量屏幕上任意两个视图之间的距离。无需再猜测填充是否正确——本插件为您解决所有问题。

缓慢动画

难以验证动画与设计相符?缓慢动画插件允许您将应用中的所有动画速度减慢到正常速度的75%、50%或25%。

第三方插件

各位开发者!成为第一个创建第三方插件的人吧!插件创建指南还在完善中,但如果您想尝试,可以参考我们已创建的插件以及我们的文档

如何显示Hyperion插件列表

一旦Hyperion集成到您的应用中,只需摇晃手机即可。

自定义Hyperion

Hyperion 是一款设计为拖拽式框架,无需编写任何代码即可集成。如果您想自定义 Hyperion,可以创建一个配置文件(称为 HyperionConfiguration.plist)。以 此文件 为例。目前,您只能配置哪些手势触发 Hyperion 抽屉,但计划增加主题和插件排序。

示例应用

您想学习如何使用 Hyperion 吗?示例应用会教您!

通过克隆仓库构建示例项目,在示例目录中运行 pod install,然后在 Xcode 中打开并运行。

要求

iOS 9+

安装

由于 Hyperion 主要是一个调试库,不应包含在生产中,以下步骤将概述如何在保持其不包含在生产构建中的方式下安装 Hyperion。下面还有一个指南,解释如何验证哪些构建包含 Hyperion,哪些不包含。注意:Hyperion 不需要任何代码即可集成,因此添加后即可正常工作。

CocoaPods

重要:如果您项目的代码中未指定 use_frameworks!,那么请参考 Carthage 或手动指南。

HyperioniOS 可以通过 CocoaPods 获取。要安装它,只需将以下行添加到您的 Podfile:

use_frameworks!

pod "HyperioniOS/Core", :configurations => ['Debug']

#"Configurations => Debug" ensures it is only included in debug builds. Add any configurations you would like Hyperion to be included in.
pod 'HyperioniOS/AttributesInspector', :configurations => ['Debug'] # Optional plugin
pod 'HyperioniOS/Measurements', :configurations => ['Debug'] # Optional plugin
pod 'HyperioniOS/SlowAnimations', :configurations => ['Debug'] # Optional plugin

CocoaPods 自动确保 Hyperion 只会包含在您为 pod 指定的配置中。更多详细信息,请参阅 CoeaPods 文档

Carthage

通过 Carthage 安装,请将 github "willowtreeapps/Hyperion-iOS" 添加到 cartfile 中。然后运行 carthage update。将创建的框架拖放到您的 Xcode 项目中。重要:请确保 Hyperion 及其所有框架 未被 作为嵌入式框架包含(应在“常规项目设置”中可用)。一旦确认 Hyperion 未包含在嵌入式框架中,将“链接框架和库”部分下 Hyperion 框架的状态更改为可选。此时,项目设置应类似于以下内容。 Hyperion 框架部分

接下来,转到“构建阶段”部分并添加一个自定义的运行脚本。确保它在“链接框架和库”构建阶段上方插入。请使用以下自定义运行脚本

#Add the configurations you want to include Hyperion in below.
if [ "$CONFIGURATION" == "Debug" ]; then
    /usr/local/bin/carthage copy-frameworks
fi

接下来,您需要将每个 Hyperion 框架路径添加到构建脚本的“输入文件”部分。您的构建脚本应类似于以下内容:Hyperion 自定义构建脚本

有关此自定义构建脚本的更多信息,请参阅Carthage 文档

手动

您可以从这里下载最新的框架。在最新版本下面将有一个名为 HyperionCore.framework.Plugins.zip 的 zip 文件。如果想要了解如何集成到具体的构建配置中,请遵循上面提到的 Carthage 指南。

或者如果您想手动构建框架

克隆 git 仓库。在根目录中运行 sh build.sh。完成后,脚本将生成 HyperionCore 框架以及所有的一方插件。仅需要的框架是 HyperionCore,但您应该至少添加一个生成的插件。遵循上面提到的 Carthage 安装指南确保 Hyperion 不会包含在生产中。

验证构建是否不包含 Hyperion

注意: 这仅在您使用 Hyperion 框架时有效。如果您使用 Cocoapods,请确保您已指定“use_frameworks!”。

打开 IPA

  1. 右键单击您的 IPA 文件,使用存档实用工具打开它。这应该会解压缩您的 IPA。
  2. 在解压缩的 IPA 中应该有一个名为应用的应用文件。根据 IPA 的构建方式,它可能位于 Payload 文件夹中。找到它后,右键单击应用文件并选择“显示包内容”。
  3. 在包内部应该有一个名为“Frameworks”的文件夹。请确保 Hyperion 及其插件不包含在该文件夹中。如果 Hyperion 在该文件夹中,则意味着 Hyperion 已经包含在该构建中。
  4. 作为一个额外的步骤,你可以确保你的应用的可执行文件不是正在尝试加载 Hyperion。在您的应用包中找到您的应用的可执行文件(它应该位于包根目录中的 unix 可执行文件)。运行以下命令
otool -L {Unix Executable Path Here}

验证输出不包含对 Hyperion 或其插件的任何引用

在运行应用时

  1. 请确保您设置的任何 Hyperion 触发器(如摇晃等)都不会激活 Hyperion。
  2. 如果您已连接调试器,则可以暂停进程并运行以下命令:
image list -b

这将显示当前正在应用中加载的所有共享库。请确保 Hyperion 及其框架未被列出。

添加插件

Hyperion 插件需要在构建时添加到应用中。默认情况下,Hyperion会自动找到项目中有可用的一切插件。目前有一个功能正在进行中,允许您在 Plist 文件中指定插件以实现进一步的定制。

为 Hyperion 贡献

欢迎贡献。请参阅贡献指南

Hyperion 采用由贡献者公约定义的行为准则,与Swift 语言和无数其他开源软件团队合作。

故障排除

在安装 pod 后我遇到了这个错误

Unable to run command 'StripNIB HYPKeyValueTableViewCell.nib' - this target might include its own product.

这很可能意味着你未在 podfile 中指定 use_frameworks!。如果你的项目配置不适合将 pods 转换为框架,请参考 Carthage 或手动安装指南。

贡献者

Chris Mays
Matt Kauper
Ben Humphries

许可

Hyperion 在 MIT 许可证下可用。有关更多信息,请参阅 LICENSE 文件。

关于 WillowTree!

WillowTree Logo

我们为世界领先的公司构建应用程序,响应式网站,机器人——任何位于屏幕上的数字产品。我们精英团队通过将最新的策略和设计思维与企业级软件开发相结合,不断挑战自己,创造出非凡的体验。

对像 Hyperion 这样的独特项目感兴趣?查看我们的 职业页面