67 lines
2.0 KiB
Go
67 lines
2.0 KiB
Go
package main
|
|
|
|
import (
|
|
"context"
|
|
"encoding/json"
|
|
"fmt"
|
|
|
|
"github.com/perfect-panel/server/pkg/openinstall"
|
|
)
|
|
|
|
func main() {
|
|
fmt.Println("========================================")
|
|
fmt.Println("测试 GetPlatformDownloads 功能")
|
|
fmt.Println("========================================")
|
|
fmt.Println()
|
|
|
|
// 使用真实的 ApiKey
|
|
apiKey := "a7596bc007f31a98ca551e33a75d3bb5997b0b94027c6e988d3c0af1"
|
|
|
|
client := openinstall.NewClient(apiKey)
|
|
|
|
ctx := context.Background()
|
|
|
|
// 调用 GetPlatformDownloads 获取当月数据+ 环比
|
|
platformDownloads, err := client.GetPlatformDownloads(ctx, "")
|
|
if err != nil {
|
|
fmt.Printf("❌ 获取失败: %v\n", err)
|
|
return
|
|
}
|
|
|
|
fmt.Println("✅ 成功获取各端下载量统计!")
|
|
fmt.Println()
|
|
|
|
// 格式化输出
|
|
data, _ := json.MarshalIndent(platformDownloads, "", " ")
|
|
fmt.Println(string(data))
|
|
|
|
fmt.Println()
|
|
fmt.Println("========================================")
|
|
fmt.Println("界面数据展示:")
|
|
fmt.Println("========================================")
|
|
fmt.Printf("\n各端下载量: %d\n", platformDownloads.Total)
|
|
fmt.Println("----------------------------------------")
|
|
fmt.Printf("📱 iPhone/iPad: %d\n", platformDownloads.IOS)
|
|
fmt.Printf("🤖 Android: %d\n", platformDownloads.Android)
|
|
fmt.Printf("💻 Windows: %d\n", platformDownloads.Windows)
|
|
fmt.Printf("🍎 Mac: %d\n\n", platformDownloads.Mac)
|
|
|
|
if platformDownloads.Comparison != nil {
|
|
fmt.Println("相比前一个月:")
|
|
if platformDownloads.Comparison.Change >= 0 {
|
|
fmt.Printf(" 📈 增长 %d (%.2f%%)\n",
|
|
platformDownloads.Comparison.Change,
|
|
platformDownloads.Comparison.ChangePercent)
|
|
} else {
|
|
fmt.Printf(" 📉 下降 %d (%.2f%%)\n",
|
|
-platformDownloads.Comparison.Change,
|
|
-platformDownloads.Comparison.ChangePercent)
|
|
}
|
|
fmt.Printf(" 上月总量: %d\n", platformDownloads.Comparison.LastMonthTotal)
|
|
}
|
|
|
|
fmt.Println("\n========================================")
|
|
fmt.Println("测试完成!")
|
|
fmt.Println("========================================")
|
|
}
|