You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

iOS平台下如何添加Safari书签?含WebView网页书签扩展需求

实现向Safari书签添加任意WebView网页的方法(个人私密方案)

嘿,这个需求完全可以搞定!作为经常折腾Safari自定义工具的人,我给你几个适合个人私密使用的方案,从无代码到轻度开发都有:

方案1:无代码快捷指令(最推荐,适合所有人)

这是个人用最方便私密的方式,不需要任何开发技能:

  • 打开苹果自带的「快捷指令」App,新建一个空白快捷指令
  • 添加「获取共享的内容」动作,确保只勾选「URL」选项
  • 接着添加「添加到Safari书签」动作,你可以设置默认的书签文件夹(比如「个人收藏」),还能自定义书签标题
  • 给这个快捷指令起个好记的名字(比如「一键加Safari书签」),然后在快捷指令的设置里开启「在分享菜单中显示」
  • 之后不管是在Safari里,还是其他App的WebView(比如微信、知乎里的网页),只要点击页面的分享按钮,选择这个快捷指令,就能一键把当前网页的URL添加到Safari书签里了

这个方法完全免费、私密,所有操作都在你自己的设备上完成,不用担心数据泄露。

方案2:个人专属Safari扩展(适合有开发基础的用户)

如果想要更集成的体验(比如在Safari工具栏加个一键按钮),可以自己开发一个极简的Safari扩展,而且因为是个人用,不用上架App Store:

  • 打开Xcode,新建一个「Safari Extension App」项目
  • 在扩展的SafariExtensionHandler.swift文件里,实现页面加载完成后的URL获取逻辑,比如:
    override func pageDidFinishLoading(in page: SFSafariPage) {
        page.getPropertiesWithCompletionHandler { properties in
            guard let url = properties?.url, let title = properties?.title else { return }
            // 这里添加书签逻辑
            SFSafariApplication.addBookmark(with: url, title: title) { error in
                if let error = error {
                    print("添加书签失败:\(error)")
                }
            }
        }
    }
    
  • 在扩展的Info.plist里配置工具栏按钮的图标和名称,这样在Safari里就能看到你的专属按钮了
  • 用自己的Apple ID给项目签名,直接部署到你的iPhone或Mac上就行,完全是个人私密使用

注意:这个扩展只能处理Safari浏览器内的网页,受限于苹果的沙盒机制,无法直接获取其他App WebView里的内容——这时候方案1的分享方式依然是最优解。

方案3:Mac专属AppleScript脚本

如果你只用Mac,还可以用AppleScript做一个快速添加书签的服务:

  • 打开「脚本编辑器」,输入这段代码:
    on run {input, parameters}
        set targetURL to item 1 of input
        tell application "Safari"
            add bookmark targetURL to bookmarks menu with title (do shell script "curl -s " & quoted form of targetURL & " | grep -o '<title>.*</title>' | sed 's/<title>//;s/<\\/title>//'")
        end tell
        return input
    end run
    
  • 把脚本保存为「应用程序」格式,然后去「系统设置-键盘-快捷键-服务」里,添加这个脚本作为服务,再设置一个顺手的快捷键
  • 之后在任意Mac应用的WebView里复制网页URL,按下快捷键,脚本会自动获取网页标题并添加到Safari书签里

内容的提问来源于stack exchange,提问作者ijverig

火山引擎 最新活动