Skip to content

Go 事件上报接口

根据上报的事件类型数据,会反应在系统的统计数据中。

方法定义

go
func (client *Client) AppReport(request *AppReportRequest) (_result *AppReportResponse, _err error)

请求参数列表

参数名类型说明
request*AppReportRequest设置具体接口请求参数,请参见 事件上报

返回值列表

返回值名类型说明
result*AppReportResponse接口返回值,当 err 为nil 时有效,具体接口返回参数,请参见 事件上报
errerror请求的状态,当请求失败时,err 不为 nil

示例代码位置

示例代码

您可以使用以下代码上报的事件类型数据。

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)
	}

}