nativescript-hockey-sdk
在 NativeScript 项目中使用 HockeyApp SDK
npm i --save nativescript-hockey-sdk

HockeyApp SDK for NativeScript

NativeScript 的 HockeyApp SDK 插件(iOS 和 Android)


此插件在 NativeScript 项目中安装 HockeyApp SDK,并提供了一个在 iOS 和 Android 项目中使用的通用 API。

如何使用

在项目根目录中运行以下命令

$ tns plugin add nativescript-hockey-sdk

SDK 包装和初始化机制毫不客气地借鉴自 Fabric 插件。在使用此插件运行应用之前,您将需要从 HockeyApp 服务获取一个 APP_ID。访问 HockeyApp 网站 获取您应用的密钥。将该密钥输入 AndroidManifest.xmlInfo.plist 文件。

iOS

将 HockeyApp 的 APP_ID 添加到 /app/App_Resources/iOS/Info.plist 文件

<key>HockeyAppId</key>
<string>${APP_ID}</string>

此插件的 iOS 版本使用 HockeyApp SDK CocoaPod。有关其他配置选项,请参阅 HockeyApp SDK CocoaPod 文档

注意:截至版本 1.2.0,此插件需要 XCode 8.3+。如果您使用的是旧版本的 XCode,当尝试构建包含此插件的 NativeScript 项目时,您可能会看到 无效的位码版本 错误。

使用 build.xcconfig

在 iOS 上,您还可以选择将 HockeySDK 的 APP_ID 放在 build.xcconfig 文件中,而不是直接嵌入到 Info.plist 中。例如,如果您想避免将 SDK 密钥放入源代码控制中,这可能会很有帮助。

使用上面的 Info.plist 语法与 ${APP_ID} 键,只需将此行添加到 build.xcconfig

APP_ID = YOUR-HOCKYSDK-APP-ID

在构建过程中,build.xcconfig 中的值将替换 Info.plist 中的 ${APP_ID} 键。

Android

将 HockeyApp 的 APP_ID 添加到 /app/App_Resources/Android/AndroidManifest.xml 文件

<meta-data android:name="net.hockeyapp.android.appIdentifier" android:value="${APP_ID}" />

使用

在插件安装并配置了 APP_ID 之后,只需导入并初始化插件。

import { HockeyApp } from 'nativescript-hockey-sdk';
...
HockeyApp.init();
HockeyApp.trackEvent("LOG_IN");

要在应用启动时初始化,在 app.tsapp.js 文件的 launchEvent 处理程序中导入并初始化

app.on(app.launchEvent, function(context) {
HockeyApp.init();
});

如果您使用 Angular,则可以使用 AppModule 构造函数

export class AppModule {
constructor() {
HockeyApp.init();
HockeyApp.trackEvent("LAUNCH");
}
}

重大更改

v1.0.0

  • APP_ID 键现在在 iOS/Android 配置文件中期望

待办事项

  • 添加 CocoaPod 类型 TypeScript 定义

许可

MIT