主题
Go 事件上报接口
根据上报的事件类型数据,会反应在系统的统计数据中。
方法定义
go
func (client *Client) AppReport(request *AppReportRequest) (_result *AppReportResponse, _err error)
请求参数列表
参数名 | 类型 | 说明 |
---|---|---|
request | *AppReportRequest | 设置具体接口请求参数,请参见 事件上报 |
返回值列表
返回值名 | 类型 | 说明 |
---|---|---|
result | *AppReportResponse | 接口返回值,当 err 为nil 时有效,具体接口返回参数,请参见 事件上报 |
err | error | 请求的状态,当请求失败时,err 不为 nil |
示例代码位置
- github: https://github.com/toolsetlink/upgradelink-api-go/blob/main/test/client_test.go
- gitee: https://gitee.com/toolsetlink/upgradelink-api-go/blob/main/test/client_test.go
示例代码
您可以使用以下代码上报的事件类型数据。
go
package test
import (
"fmt"
"testing"
"github.com/toolsetlink/upgradelink-api-go/client"
)
// 上报事件
func TestPostAppReport(t *testing.T) {
accessKey := "mui2W50H1j-OC4xD6PgQag"
accessSecret := "PEbdHFGC0uO_Pch7XWBQTMsFRxKPQAM2565eP8LJ3gc"
var config = client.Config{
AccessKey: &accessKey,
AccessSecret: &accessSecret,
}
Client, err := client.NewClient(&config)
if err != nil {
return
}
/* app_start 应用-启动事件 */
//eventType := client.EventTypeAppStart
//appKey := "LOYlLXNy7wV3ySuh0XgtSg"
//devModelKey := ""
//devKey := ""
//versionCode := 1
//timestamp := client.TimeRFC3339()
//launchTime := client.TimeRFC3339()
//eventData := &client.AppReportRequestEventData{
// LaunchTime: launchTime,
//}
/* app_upgrade_download 应用升级-下载事件 */
//eventType := client.EventTypeAppUpgradeDownload
//appKey := "LOYlLXNy7wV3ySuh0XgtSg"
//devModelKey := ""
//devKey := ""
//versionCode := 1
//timestamp := client.TimeRFC3339()
//downloadVersionCode := 10
//code := client.EventTypeCodeError
//eventData := &client.AppReportRequestEventData{
// Code: &code,
// DownloadVersionCode: &downloadVersionCode,
//}
/* app_upgrade_upgrade 应用升级-升级事件 */
eventType := client.EventTypeAppUpgradeUpgrade
appKey := "LOYlLXNy7wV3ySuh0XgtSg"
devModelKey := ""
devKey := ""
versionCode := 1
timestamp := client.TimeRFC3339()
upgradeVersionCode := 10
code := client.EventTypeCodeSuccess
eventData := &client.AppReportRequestEventData{
Code: &code,
UpgradeVersionCode: &upgradeVersionCode,
}
// 接口调用
request := &client.AppReportRequest{
EventType: &eventType,
AppKey: &appKey,
DevModelKey: &devModelKey,
DevKey: &devKey,
VersionCode: &versionCode,
Timestamp: timestamp,
EventData: eventData,
}
Info, err := Client.AppReport(request)
if err != nil {
fmt.Println("err: ", err)
} else {
fmt.Println("info: ", Info)
}
}