@nativescript/app-center
先决条件 / 要求
前往 https://appcenter.ms 登录并创建您的应用(可以是安卓或 iOS)。
为了启动插件,您需要 App Secret 密钥。App Secret 可以在 App Center 站点的“入门”页面或“设置”页面找到。
安装
ns plugin add @skhye05/app-center
用法
在 Android 中使用插件
在您的视图模型或组件中添加代码(确保在上面的代码示例中将 {您的 App Secret} 替换为您的 App Secret。)
TypeScript
import { AppCenter } from 'nativescript-app-center';
let appCenter = new AppCenter();
// To Analytics Callbacks
appCenter.onAnalyticsListener({
onBeforeSending: (report: any) => {
console.log('before');
},
onSendingFailed: (log: any) => {
console.log('failed');
},
onSendingSucceeded: (log: any) => {
console.log('success');
}
});
// To Add Crashes Callbacks
appCenter.onCrashesListener({
shouldProcess: (report: ErrorReport) => {
console.log('should Process');
return true;
},
shouldAwaitUserConfirmation: () => {
console.log('Confirm');
return false;
},
getErrorAttachments: (report: ErrorReport) => {
return null;
},
onBeforeSending: (report: ErrorReport) => {
console.log('before');
},
onSendingFailed: (report: ErrorReport, e: any) => {
console.log('failed');
},
onSendingSucceeded: (report: ErrorReport) => {
console.log('success');
}
});
// Start App Center
appCenter.start({
analytics: true,
crashes: true,
appSecret: '{Your App Secret}'
});
// To Track Event Add
trackEvent(): void {
let property: Array<PropertyOption> = new Array<PropertyOption>();
property.push({ key: "firstname", value: "john" }, { key: "surname", value: "doe" });
appCenter.trackEvent('Clicked', property);
}
// To Test Crashes
testCrash(): void {
appCenter.testCraches();
}
JavaScript
var AppCenter = require("@nativescript/app-center");
var appCenter = new AppCenter();
// To Analytics Callbacks
appCenter.onAnalyticsListener({
onBeforeSending: (report: any) => {
console.log('before');
},
onSendingFailed: (log: any) => {
console.log('failed');
},
onSendingSucceeded: (log: any) => {
console.log('success');
}
});
// To Add Crashes Callbacks
appCenter.onCrashesListener({
shouldProcess: (report: ErrorReport) => {
console.log('should Process');
return true;
},
shouldAwaitUserConfirmation: () => {
console.log('Confirm');
return false;
},
getErrorAttachments: (report: ErrorReport) => {
return null;
},
onBeforeSending: (report: ErrorReport) => {
console.log('before');
},
onSendingFailed: (report: ErrorReport, e: any) => {
console.log('failed');
},
onSendingSucceeded: (report: ErrorReport) => {
console.log('success');
}
});
// Start App Center
appCenter.start({
analytics: true,
crashes: true,
push: false,
distribute: false,
appSecret: '{Your App Secret}'
});
// To Track Event Add
appCenter.trackEvent = function() {
var property = [];
property.push({ key: "firstname", value: "john" }, { key: "surname", value: "doe" });
appCenter.trackEvent('Clicked', property);
}
// To Raised an Error Manually
appCenter.trackError = function() {
const properties: Array<PropertyOption> = new Array<PropertyOption>();
properties.push({ key: "test-email", value: "[email protected]" });
properties.push({ key: "test-error-name", value: "error name" });
const text = `App Center error text...`;
const attachment = ACErrorAttachmentLog.attachmentWithText(text, 'error.txt');
this.appCenter.trackError('Error', properties, [attachment]).then((response) => {
console.log('response-->', response);
}, (error) => {
console.log('error-->', error);
});
}
// To Test Crashes
appCenter.testCrash = function() {
appCenter.testCraches();
}
- 在手机或仿真器上运行应用程序
tns run android
API
属性
InitOption
属性 |
类型 |
描述 |
analytics |
布尔值 |
将此设置为 true 以向您的应用添加 App Center 分析 |
crashes |
布尔值 |
将此设置为 true 以向您的应用添加 App Center Crashes,以在应用崩溃时生成崩溃日志 |
appSecret |
字符串 |
这指的是您的应用 App Center 的值 |
PropertyOption
属性 |
类型 |
描述 |
key |
字符串 |
属性标识符 |
value |
字符串 |
属性实际值 |
AnalyticsListener(仅限 Android)
属性 |
类型 |
描述 |
onBeforeSending |
回调函数 |
在发送日志之前调用。回调可以根据日志数量多次调用。 |
onSendingFailed |
回调函数 |
在发送日志失败时调用。 |
onSendingSucceeded |
回调函数 |
在成功发送日志时调用。 |
CrashesListener(仅限 Android)
属性 |
类型 |
描述 |
shouldProcess |
回调函数 |
用于确定是否在发送崩溃报告之前等待用户确认(如果崩溃报告应处理,则返回 true,否则返回 false)。 |
shouldAwaitUserConfirmation |
回调函数 |
用于确定是否在发送崩溃报告之前等待用户确认(如果您刚刚构建了一个用于用户同意的 UI 并等待对该自定义 UI 的用户输入,则返回 true,否则返回 false)。) |
getErrorAttachments |
回调函数 |
用于获取作为单独 ErrorAttachmentLog 日志发送的附加信息。 |
onBeforeSending |
回调函数 |
在发送崩溃报告之前调用。根据崩溃报告的数量多次调用回调。 |
onSendingFailed |
回调函数 |
在发送崩溃报告失败时调用。 |
onSendingSucceeded |
回调函数 |
在成功发送崩溃报告时调用。 |
方法
方法 |
类型 |
参数 |
描述 |
start() |
void |
(InitOption) |
使用要启动的服务列表配置 SDK。这只能在应用程序进程生命周期中调用一次。 |
Analytics 方法
方法 |
类型 |
参数 |
描述 |
trackEvent() |
void |
(eventName: string , poperty?: PropertyOption) |
使用名称跟踪自定义事件。 |
trackError() |
Promise<boolean> |
(exceptionMessage: string , properties?: PropertyOption[]) , attachments?: any[]) |
手动引发错误。 |
isAnalyticsEnabled |
Promise<boolean> |
none |
检查 Analytics 服务是否启用。 (返回一个布尔值 ) |
isAnalyticsEnabledSync |
布尔值 |
none |
检查 Analytics 服务是否启用。 返回一个布尔值 |
setAnalyticsEnabled |
void |
(value: boolean) |
启用或禁用分析服务。 |
onAnalyticsListener |
void |
(回调:AnalyticsListener ) |
设置分析回调监听器。(仅限Android) |
崩溃方法
方法 |
类型 |
参数 |
描述 |
testCrash() |
void |
none |
生成崩溃测试。 |
hasCrashedInLastSession() |
Promise<boolean> |
none |
检查应用在最后会话中是否崩溃。(返回一个布尔值 )。 (仅限Android) |
hasCrashedInLastSessionSync() |
布尔值 |
none |
检查应用在最后会话中是否崩溃。 返回一个布尔值 。 (仅限Android) |
isCrashedEnabledSync() |
Promise<boolean> |
none |
检查崩溃服务是否已启用。(返回一个布尔值 ) |
isCrashedEnabled() |
布尔值 |
none |
检查分析崩溃是否已启用。返回一个布尔值 |
setCrashesEnabled() |
void |
(value: boolean) |
启用或禁用崩溃服务。 |
onCrashesListener() |
void |
(回调:AnalyticsListener) |
设置崩溃回调监听器。(仅限Android) |
crashesNotifyUserConfirmationDontSend() |
void |
none |
通知插件确认不发送和处理崩溃报告。(仅限Android) |
crashesNotifyUserConfirmationSend() |
void |
none |
通知插件确认发送和处理崩溃报告。(仅限Android) |
crashesNotifyUserConfirmationAlwaysSend() |
void |
none |
通知插件确认始终发送和处理崩溃报告。(仅限Android) |
作者
Jonathan Mayunga, [email protected]
许可证
Apache许可证版本2.0,