6

我正在我的应用程序中测试自定义 URL 方案,我想添加一个调用该 URL 的主屏幕图标。每当我请求我的自定义 URL 时,它都会打开我的应用程序,然后将 Safari 的地址栏恢复为之前显示的 URL。

我试图通过编辑另一个 URL 的属性来绕过这个问题,例如

  1. 打开 Safari
  2. 导航到http://google.com
  3. 点击操作按钮,然后点击“添加到主页”

但这失败了,因为您无法编辑分配给主屏幕应用程序的 URL。

作为后备,我想只为应用程序添加一个书签,所以我尝试为一个网站添加书签,然后像这样编辑 URL:

  1. 打开 Safari
  2. 导航到http://google.com
  3. 点击操作按钮,然后点击“书签”

但这失败了,因为在 iOS 模拟器上,您无法编辑书签的 URL(尽管出于某种原因您可以在设备上执行此操作)。

更新:正如 tkanzakic 指出的那样,您可以编辑用户添加的书签,而不是预定义的书签

理想情况下,我想要一个主屏幕应用程序,但宁愿选择书签。

此外,由于防火墙限制,我无法将此设备连接到我的 Apple 帐户,这意味着我也无法同步我的 Safari 书签。

4

3 回答 3

5

啊,想通了。您可以按照以下步骤在主屏幕上获取指向任何 URL 的 webapp:

  1. 在移动 Safari 中,导航到任何网页,点击操作按钮并为此网页制作主屏幕图标。
  2. 关闭模拟器
  3. 打开目录/Users/<USERNAME>/Library/Application Support/iPhone Simulator/6.1/Library/WebClips
  4. The webclips folder stores all the homescreen webapps; find the one you just created and open the Info.plist file in a text editor.
  5. Edit the keys (such as URL and Title) as desired.

When you next relaunch the simulator, you homescreen webapp will point to the new URL.

Optionally, you can change the icon.png to change the webapp's icon.

于 2013-03-05T18:14:03.947 回答
2

作为后备,我想只为应用程序添加一个书签,所以我尝试为一个网站添加书签,然后像这样编辑 URL:

  1. 打开 Safari
  2. 导航到http://google.com
  3. 点击操作按钮,然后点击“书签”

但这失败了,因为在 iOS 模拟器上,您无法编辑书签的 URL(尽管出于某种原因您可以在设备上执行此操作)。

这不是真的,可以将 URL 更改为书签,查看本文以了解如何做到这一点。我已经在模拟器和设备上做到了这一点。

于 2013-03-05T14:30:36.730 回答
0

只需创建一个在其应用程序委托中打开 URL 的小应用程序(使用 Xcode):

- (void)applicationDidBecomeActive:(UIApplication *)application
{
    [application openURL:[NSURL URLWithString:@"myappscheme://whatever/"]];
}

请注意,我使用applicationDidBecomeActive:而不是applicationDidFinishLaunching:在启动器应用程序之前启动后使其工作。

或者,您可以UIApplicationExitsOnSuspend在 Info.plist 中设置以强制终止。

于 2013-03-05T14:14:00.303 回答