leopard8352
2023-12-04 8871a733498c8d717714b83bb096b7738224541a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
// Fill out your copyright notice in the Description page of Project Settings.
 
#pragma once
 
#include "CoreMinimal.h"
#include "Kismet/BlueprintFunctionLibrary.h"
#include "TapNativeStatic.generated.h"
 
USTRUCT(BlueprintType)
struct FTapProfile
{
    GENERATED_BODY()
public:
    //{
    //"name":"Leopard",
    //"avatar":"https:\/\/img3.tapimg.com\/default_avatars\/c36204b82aa67d4875d68c8079792c22.jpg?imageMogr2\/auto-orient\/strip\/thumbnail\/!270x270r\/gravity\/Center\/crop\/270x270\/format\/jpg\/interlace\/1\/quality\/80",
    //"openid":"mDs9jeruv\/IREzYq0ZhRHQ==",
    //"unionid":"OtDdtdlp8rWl+VYQtKQJvQ==",
    //"email":"",
    //"email_verified":false}
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString Name;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString Avatar;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString OpenID;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString UnionID;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    FString Email;
    UPROPERTY(EditAnywhere,BlueprintReadWrite)
    bool Email_Verified = false;
};
 
UCLASS()
class TAPTAP_API UTapNativeStatic : public UBlueprintFunctionLibrary
{
    GENERATED_BODY()
public:
    /**
     * @brief Taptap用户是否登录?
     * @return 
     */
    //()Z
    UFUNCTION(BlueprintCallable)
    static bool CheckLogin();
 
 
    /**
     * @brief 初始化TapDB,如果仅初始化登陆,调用InitLogin
     * @param clientId 
     * @param clientToken 
     * @param serverUrl 
     * @param gameChannel 
     * @param gameVersion 
     */
    //(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    UFUNCTION(BlueprintCallable)
    static void InitTapDB(
            FString clientId,
            FString clientToken,
            FString serverUrl,
            FString gameChannel,
            FString gameVersion);
 
    /**
     * @brief 初始化登陆,如果需要用数据分析,调用InitTapDB
     * @param clientId 
     * @param clientToken 
     * @param serverUrl 
     */
    //(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
    UFUNCTION(BlueprintCallable)
    static void InitLogin(
        FString clientId,
        FString clientToken,
        FString serverUrl);
 
    /**
     * @brief 登陆
     */
    // ()V
    UFUNCTION(BlueprintCallable)
    static void Login();
 
    /**
     * @brief 获取用户数据
     * @return 
     */
    // ()Ljava/lang/String;
    UFUNCTION(BlueprintCallable)
    static FString GetCurrentProfile();
 
    UFUNCTION(BlueprintCallable)
    static FTapProfile TapProfileStringToStruct(FString profileString);
 
    /**
     * @brief 退出登录
     */
    //()V
    UFUNCTION(BlueprintCallable)
    static void Logout();
 
    /**
     * @brief 上报事件
     * @param eventName 
     * @param jsonObject 
     */
    //(Ljava/lang/String;Ljava/lang/String;)V
    UFUNCTION(BlueprintCallable)
    static void TapDBTraceEvent(FString eventName,FString jsonObject);
};