nativescript-play-livesync
适用于 iOS 和 Android 的 Playground LiveSync 插件
npm i --save nativescript-play-livesync

NativeScript PlayLiveSync

此插件用于 NativeScript Playground 网站(https://play.nativescript.org)与 NativeScript 预览应用程序(iOSAndroid)之间的通信。

网站和移动应用程序之间的通信是通过 PubNub 实现的。仓库包含分别用 JavaObjective-C 实现的本地实现。

要调试插件,您可以按照这里的步骤进行。

安装

tns plugin add nativescript-play-livesync

配置

由于插件需要在需要时重启当前应用程序的方案,以下配置应存在于应用程序的 App_Resources 文件夹中

Android

如果您想使用 nsplay 方案,则应将以下活动配置添加到 AndroidManifest.xml 文件中,位置应在 <activity android:name="com.tns.ErrorReportActivity"/> 之上

<activity
android:name="com.tns.playlivesync.NativeScriptActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:launchMode="singleTask">


<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="nsplay"/>
</intent-filter>
</activity>

iOS

Info.plist 文件中添加以下配置

<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLName</key>
<string>org.nativescript.playground</string>
<key>CFBundleURLSchemes</key>
<array>
<string>nsplay</string>
</array>
</dict>
</array>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>nsplayqr</string>
</array>

在上面的配置中,需要设置以下 3 个值

  • nsplay - 当前应用程序的方案,需要生成以下格式的 url nsplay://.... 用于使用给定的参数重启应用程序
  • nsplayqr - 用于重启当前应用程序的 QR 应用方案的方案
  • org.nativescript.playground - 在插件中仅使用 CFBundleURLName 的值,从具有 CFBundleURLName 属性设置的字典中获取 CFBundleURLSchemes 数组的第一个项目。这是必要的,因为某些插件可能添加了额外的 CFBundleURLSchemes,我们可能会将它们解析为应用程序方案。因此,我们使用了此属性来区分 CFBundleURLTypes 数组中的正确字典。

许可

Apache 许可证第 2 版,2004 年 1 月