跳至内容
WebViewGold 从 Vibe Coding 到 App Store
中文
获取 WebViewGold

Lovable + 视频和音频

为您的 Lovable 应用实现原生视频和音频播放

HTML5 video 标签在应用内也能用,但长课程看起来局促,而且用户一切换应用,播放通常就会停止。借助 WebViewGold,您的 Lovable 应用只需一个链接(startnativevideo://)就能把流媒体 URL 交给原生播放器,观众在两个平台上都能获得全屏和画中画,在 iPhone 上还有 AirPlay。在 iOS 上,您还可以让 HTML 音频在后台继续播放,非常适合播客、电台和音频课程。

每个平台一次性 $109 起,或由我们的团队全程代劳,$698 起。

  • 审核通过保证 – 否则 14 天内退款
  • 无需编程
  • 一次性付费,免费更新
  • 7×24 小时人工支持
  • 2014 年起德国出品 · ISO 27001

原生播放器带来什么

支持画中画的原生播放器

链接到 startnativevideo://videostreamurl=,后面接一个直接的流媒体 URL,WebViewGold 就会在 iOS 和 Android 上打开系统视频播放器。用户可以把视频缩小成悬浮窗口,继续浏览应用,甚至切换到其他应用。

AirPlay 和熟悉的控件

在 iPhone 和 iPad 上,原生播放器自带 AirPlay、全屏以及用户早已熟悉的标准播放控件。无需在 Web 应用中维护自定义播放器库。

iOS 上的后台音频

对于播客、电台直播流、冥想和音频课程,HTML 后台音频设置能让 Web 应用的声音在 iPhone 锁屏或其他应用位于前台时继续播放。这是 Xcode 项目中的一项设置,iOS 文档中的视频会逐步演示。

仅限直接的流媒体 URL

原生播放器需要 .mp4 文件或 HLS .m3u8 流,而不是嵌入了视频的页面 URL。Mux、Cloudflare Stream 或 Bunny Stream 等流媒体托管服务会提供 HLS URL;YouTube 和 Vimeo 页面则继续作为普通嵌入使用。

给 Lovable 的提示词

把这段粘贴到 Lovable 中以实现 Web 应用端。检查结果,发布,然后在 WebViewGold 应用中测试。

粘贴到 Lovable 的提示词
为 WebViewGold 应用封装层添加原生视频播放。1) 创建 src/lib/nativeMedia.ts,包含 isInApp()(navigator.userAgent 中包含 "WebViewGold",即我在 WebViewGold 中设置为自定义 User-Agent 的标记)和 playNative(url),后者把 window.location.href 设为 "startnativevideo://videostreamurl=" + url。2) 在课程页面上,浏览器中保留当前的视频播放器;在应用内显示一个大的“播放”按钮,用课程的流媒体 URL 调用 playNative。3) 对于私有 Supabase Storage 存储桶中的课程,添加一个边缘函数 get-lesson-url,检查用户是否已报名,并返回一个有效期两小时的签名 URL;在播放前一刻调用它。4) 只传入直接的 .mp4 或 .m3u8 URL;YouTube 课程保持为嵌入。5) 给浏览器中的 video 元素加上 playsinline、controls 和封面图(poster)。6) 如果 URL 请求失败,显示一条友好的错误提示。

我很高兴购买了这个应用!非常简单,文档也很棒。联系客服后,他们回复很快且非常友好,一天之内就解决了我的问题。10/10,值得推荐。

Nelis Geiger · CodeCanyon

逐步添加原生播放

约 30 分钟,大部分时间用于在真机上测试。

  1. 获取直接的流媒体 URL

    使用存储中的 .mp4 文件,或视频托管服务提供的 HLS .m3u8 播放列表。长课程用 HLS 播放效果更好,因为播放器会根据网络连接自动调整画质。

  2. 让 URL 可以独立播放

    原生播放器会自行加载视频流,可能拿不到 WebView 的登录会话。对于付费课程,请在服务器上检查访问权限后创建一个短时有效的签名 URL,再把它传给播放器。

  3. 只在应用内调用桥接

    设置一个包含 WebViewGold 等标记的自定义 User-Agent(Config.swift 中的 useragent_iphone 和 useragent_ipad,Config.java 中的 USER_AGENT)。检测到该标记时,播放按钮导航到 startnativevideo://videostreamurl= 加上流媒体 URL;在浏览器中,则由普通的 <video> 元素播放。

  4. 如有需要,开启后台音频(iOS)

    仅适用于锁屏后声音仍应继续播放的应用。按照 iOS 文档中的 HTML 后台音频视频操作,然后分别在手机锁屏和其他应用位于前台时测试。

  5. 像观众一样测试

    开始播放视频,打开画中画,浏览到另一个页面,锁定手机,旋转到横屏,再试试较慢的移动网络。在 iPhone 和 Android 手机上都完整走一遍。

同时适用于应用和浏览器的播放函数

一个函数兼顾两种环境。签名的流媒体 URL 来自您技术栈的服务端:Supabase 或 Lovable Cloud(Postgres、存储、边缘函数)。

javascript
// 自定义 User-Agent 包含 "WebViewGold" (在 Config.swift / Config.java 中设置)
var IN_APP = navigator.userAgent.indexOf("WebViewGold") !== -1;

// streamUrl: 直接的 .mp4 或 HLS .m3u8 (付费内容使用短时有效的签名 URL)
function playVideo(streamUrl, videoEl) {
  if (IN_APP) {
    window.location.href = "startnativevideo://videostreamurl=" + streamUrl;
  } else {
    videoEl.src = streamUrl; // 在 Safari 以外播放 HLS 需要 hls.js 等库
    videoEl.play();
  }
}

// 在浏览器中保留普通播放器:
// <video controls playsinline preload="metadata" poster="/poster.jpg"></video>

商店审核与内容规则

  • Apple 准则 2.5.4:后台服务只能用于其预期用途。只有当应用播放的是用户希望持续收听的音频(播客、电台、音频课程)时才启用后台音频,并在审核备注中告诉审核人员在哪里可以找到这项功能。
  • 在 iOS 应用内销售的课程和付费视频属于数字内容:Apple 要求使用应用内购买(准则 3.1.1),Android 上则适用 Google Play 结算。参见Vibe Coding 应用的应用内购买。
  • 只播放您拥有版权的内容。充斥第三方电影、体育赛事或电视频道的应用会被问到授权问题(准则 5.2,知识产权)。
  • 单纯的视频目录可能看起来就像一个网站(准则 4.2)。支持画中画的原生播放、新课程的推送提醒和整洁的离线页面结合在一起,才能说明它为什么应该是一个应用。
  • Android:WebViewGold 文档描述了支持画中画的原生视频播放器,但没有后台音频开关。请测试应用最小化后音频的表现;在验证之前,不要在 Play 商店详情中承诺锁屏播放。

常见问题

我能在原生播放器中播放 YouTube 或 Vimeo 视频吗?

不能通过 startnativevideo:// 播放,它需要直接的 .mp4 文件或 HLS .m3u8 流。YouTube 和 Vimeo 嵌入通常仍可作为普通 iframe 在应用内正常使用,带有它们自己的播放器和全屏按钮。

画中画在 iOS 和 Android 上都能用吗?

能。iOS 和 Android 文档都介绍了支持画中画的 startnativevideo://:用户浏览应用或其他应用时,视频会在悬浮窗口中继续播放。

锁屏后音频还会继续播放吗?

在 iOS 上会,前提是按照 iOS 文档在 Xcode 项目中启用 HTML 后台音频。在 Android 上,WebViewGold 文档没有描述后台音频模式,所以在向用户承诺之前,请先在设备上测试您的播放器。

我的 Lovable 应用中的付费视频需要使用应用内购买吗?

如果应用本身销售课程或订阅,需要:Apple 要求数字内容使用应用内购买(准则 3.1.1),Google 要求使用 Play 结算。在您网站上购买的内容通常也可以在应用中解锁;请查看准则 3.1.1 和 3.1.3 的最新文本,因为关于外部购买链接的规则因地区而异。

用户可以下载视频离线观看吗?

以 .mp4 结尾的链接由 WebViewGold 文件下载器处理,它会把文件保存到设备上。在 Lovable Web 应用中打造完整的离线资料库是一个更大的项目;对大多数课程应用来说,流媒体播放加上原生离线页面就足够了。

让您的应用上架商店的三种方式

结果相同,只是您需要投入的工作量不同。三种方式都附带审核通过保证和 7×24 小时人工支持。

自己动手

$109 每个平台,一次性付费

WebViewGold 许可证:一个现成的 Xcode 或 Android Studio 项目。粘贴您的 URL,设置名称和图标,开启所需功能,构建并提交。永久免费更新。

在主页查看方案

Cloud Builder

$349 每个许可证,一次性附加购买

无需 Mac、Xcode 或 Android Studio:在浏览器中完成配置,我们在云端构建两个应用,并将其交付到 App Store Connect 和 Play Console。

Cloud Builder 如何运作 试用免费演示

Full Service

$698 每个平台 $798

把您的 URL 和图标发给我们。我们的团队在 72 小时内完成配置、构建并交付您的应用,白标,附源码项目。两个平台共 $1,158。

Full Service 详情 服务提供方: WeSetupYourWebViewApp

冬季特惠价格有效期至 2026年12月31日。

准备好发布您的 Lovable 应用了吗?

App Store & Google Play 审核通过保证 – 否则 14 天内退款

想直接交给我们?Full Service:我们在 72 小时内完成配置、构建并交付,每个平台 $698 起。有疑问?通过 7×24 小时在线聊天联系我们。

退款依据我们 FAQ 中列出的条件:应用因非内容原因被 Apple 和/或 Google 拒审,并在购买后 14 天内提出申请。