View on GitHub

Yinjie - GitHub.io

Welcome to the Yinjie's notes

通过 xcode 命令行在 app 中打开 url

今天分享一个很简短,但是对移动端 h5 来说是非常有用的技术方法。

你还在为开发 app 内 h5app 时环境的不同而发愁吗?!你还在为 hybrid app 的不好调试而抓狂吗?那就往下看。

xcrun 命令行工具

xcode 大家应该都有接触,除了作为一个 IDE 来用,其实它提供的命令行工具也是很强大的。 对于 h5 开发者来说,下面的几个命令会对我们有用。

安装 xcode command line tools

$ xcode-select --install

创建一个 ‘iPhone 6’ 模拟器

$ xcrun simctl create 'iPhone 6' \
    com.apple.CoreSimulator.SimDeviceType.iPhone-6 \
    com.apple.CoreSimulator.SimRuntime.iOS-10-3

返回 021A13B3-xxxx-xxxx-xxxx-717D3BAC4CB6

查看支持的模拟器环境

上面的命令你估计会疑问?那个环境的“包名”是哪来的,实际有方法查看:

$ xcrun simctl list devicetypes
== Device Types ==
iPhone 4s (com.apple.CoreSimulator.SimDeviceType.iPhone-4s)
iPhone 5 (com.apple.CoreSimulator.SimDeviceType.iPhone-5)
...

$ xcrun simctl list runtimes
== Runtimes ==
iOS 8.4 (8.4 - 12H141) (com.apple.CoreSimulator.SimRuntime.iOS-8-4)
iOS 9.3 (9.3 - 13E230) (com.apple.CoreSimulator.SimRuntime.iOS-9-3)
...

$ xcrun simctl list devices
== Devices ==
-- iOS 8.4 --
    iPhone 5 (F04B61AE-3B34-4200-A907-1B95EE1BA463) (Shutdown)
-- iOS 9.0 --
    iPhone 5 (4132E910-D471-4978-868E-A020E359F661) (Shutdown)
...

删除这个模拟器

$ xcrun simctl delete 021A13B3-xxxx-xxxx-xxxx-717D3BAC4CB6

启动创建好的 ‘iPhone 6’ 模拟器

$ xcrun instruments -w 'iPhone 6'

下面来重点的了

安装你的 app

$ xcrun simctl install booted /Users/yourself/Downloads/youApp.app

启动你的 app

$ xcrun simctl launch booted com.yourself.packagename

在 app 中直接打开 url

xcrun simctl openurl booted 'https://webview.yourname.com/aaa/index.htm?param1=1'

到此结束,此方法看似过程简单,但是稍加工程化改造后就会成为一个很牛x的“黑科技”(可以再看看上一篇博文😏,你可能会用到),具体能达到怎样的一种效果,可以按自己的开发环境去任意发挥~~~。