Compare commits
17 Commits
dev_video
...
c105818f00
| Author | SHA1 | Date | |
|---|---|---|---|
| c105818f00 | |||
| 6e7bd262de | |||
| 7d59d4abc4 | |||
| 8082433feb | |||
| 6866b7fca9 | |||
| 9f5151c54c | |||
| 62046f4bdc | |||
| a6db6d438c | |||
| f233be2646 | |||
| 4636ddc74e | |||
| 39a3505ce9 | |||
| 5410f88c6c | |||
| b3869d3488 | |||
| 9f1379c465 | |||
| 333d8fa6f7 | |||
| 29bac5b580 | |||
| 13b931eb8e |
@@ -6,7 +6,9 @@
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||
<application android:extractNativeLibs="true" android:name="com.unity3d.player.TYApp" android:usesCleartextTraffic="true">
|
||||
<application android:extractNativeLibs="true" android:name="com.unity3d.player.TYApp"
|
||||
tools:replace="android:usesCleartextTraffic"
|
||||
android:usesCleartextTraffic="true">
|
||||
<activity android:name="com.unity3d.player.TYUnityActivity"
|
||||
android:theme="@style/UnityThemeSelector">
|
||||
<intent-filter>
|
||||
|
||||
@@ -7,23 +7,94 @@ import com.tuyoo.gamesdk.api.SDKAPI;
|
||||
import com.tuyoo.gamesdk.api.SDKAPIConstant;
|
||||
import com.tuyoo.gamesdk.api.SDKCallBack;
|
||||
import com.tuyoo.gamesdk.api.SDKWrapper;
|
||||
import com.tuyoo.gamesdk.login.model.SnsInfo;
|
||||
|
||||
import org.json.JSONException;
|
||||
import org.json.JSONObject;
|
||||
|
||||
public class SnsTest {
|
||||
static final String TAG = "SNSTEST";
|
||||
static final String GOName = "SDKTest";
|
||||
|
||||
public static void Bind(String type, String guserId)
|
||||
static SnsInfo tmpSnsInfo = null;
|
||||
|
||||
public static void Bind(String type, String userId)
|
||||
{
|
||||
SDKAPI.getIns().getSnsInfo(type, (snscode, snsInfo, snsmsg) ->{
|
||||
if(snscode == SDKCallBack.CODE_SUCCESS && snsInfo !=null)
|
||||
if(snscode == SDKCallBack.CODE_SUCCESS && snsInfo != null)
|
||||
{
|
||||
SDKAPI.getIns().bindBySnsId(snsInfo, guserId, (bindcode, bindmsg)->{
|
||||
SDKAPI.getIns().bindBySnsId(snsInfo, userId, (bindcode, bindmsg)->{
|
||||
if(bindcode == SDKCallBack.CODE_SUCCESS)
|
||||
{
|
||||
Log.i(TAG, "LinkSns success");
|
||||
try {
|
||||
JSONObject result = new JSONObject();
|
||||
result.put("code", bindcode);
|
||||
result.put("userId", userId);
|
||||
|
||||
JSONObject serverResponse = new JSONObject(bindmsg);
|
||||
JSONObject userInfo = serverResponse.getJSONObject("result");
|
||||
result.put("loginData", userInfo);
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", result.toString());
|
||||
|
||||
} catch (JSONException e) {
|
||||
String msg = "{\"code\":1, \"userId\": 0}";
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", msg);
|
||||
}
|
||||
}
|
||||
else if(bindcode == SDKCallBack.CODE_FAILED)
|
||||
{
|
||||
try
|
||||
{
|
||||
JSONObject bindMsgObj = new JSONObject(bindmsg);
|
||||
JSONObject bindMsgResult = bindMsgObj.getJSONObject("result");
|
||||
int bindMsgResultCode = bindMsgResult.getInt("code");
|
||||
if(bindMsgResultCode == 4)
|
||||
{
|
||||
SDKAPI.getIns().checkSnsInfo(snsInfo, (checkcode, checkMsg ) -> {
|
||||
if(checkcode != SDKCallBack.CODE_SUCCESS)
|
||||
{
|
||||
Log.w(TAG, checkMsg);
|
||||
String msg = "{\"code\":1, \"userId\": 0}";
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", msg);
|
||||
return;
|
||||
}
|
||||
try {
|
||||
tmpSnsInfo = snsInfo;
|
||||
JSONObject checkMsgObj = new JSONObject(checkMsg);
|
||||
JSONObject checkResult = checkMsgObj.getJSONObject("result");
|
||||
String bindInfo = checkResult.getString("bindInfo");
|
||||
int bindUserId = checkResult.getInt("userId");
|
||||
JSONObject callbackMsg = new JSONObject();
|
||||
callbackMsg.put("code", -1);
|
||||
callbackMsg.put("userId", bindUserId);
|
||||
callbackMsg.put("bindInfo", bindInfo);
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", callbackMsg.toString());
|
||||
} catch (JSONException e) {
|
||||
Log.i(TAG, e.toString());
|
||||
String msg = "{\"code\":1, \"userId\": 0}";
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.w(TAG, bindmsg);
|
||||
String msg = "{\"code\":1, \"userId\": 0}";
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", msg);
|
||||
}
|
||||
}
|
||||
catch (JSONException e)
|
||||
{
|
||||
Log.i(TAG, e.toString());
|
||||
String msg = "{\"code\":1, \"userId\": 0}";
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", msg);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Log.i(TAG, String.format("LinkSns failed, code: %d, msg: %s", bindcode, bindmsg));
|
||||
Log.w(TAG, bindmsg);
|
||||
String msg = "{\"code\":1, \"userId\": 0}";
|
||||
UnityPlayer.UnitySendMessage(GOName, "BindCallback", msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -34,8 +105,32 @@ public class SnsTest {
|
||||
});
|
||||
}
|
||||
|
||||
public static void Unbind(String type, int userId)
|
||||
public static void ChangeBind(int unbindUserId, int bindUserId)
|
||||
{
|
||||
if(tmpSnsInfo == null)
|
||||
{
|
||||
Log.i(TAG, "tmpSnsInfo is null");
|
||||
return ;
|
||||
}
|
||||
|
||||
SDKAPI.getIns().unbindBySnsId(tmpSnsInfo, String.valueOf(unbindUserId), (unbindCode, unbindMsg) -> {
|
||||
Log.i(TAG, "unbindBySnsId code: " + unbindCode + " msg: " + unbindMsg);
|
||||
if(unbindCode == SDKCallBack.CODE_SUCCESS)
|
||||
{
|
||||
SDKAPI.getIns().bindBySnsId(tmpSnsInfo, String.valueOf(bindUserId), (bindCode, bindMsg) -> {
|
||||
Log.i(TAG, "bindBySnsId code: " + bindCode + " msg: " + bindMsg);
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void RmSns()
|
||||
{
|
||||
tmpSnsInfo = null;
|
||||
}
|
||||
|
||||
public static void GetSns(String accountType)
|
||||
{
|
||||
Log.i(TAG, "GetSns accountType: " + accountType);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M
|
||||
org.gradle.parallel=true
|
||||
unityStreamingAssets=**STREAMING_ASSETS**
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
# Android Resolver Properties Start
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
# Android Resolver Properties End
|
||||
|
||||
android.suppressUnsupportedCompileSdk=35
|
||||
|
||||
**ADDITIONAL_PROPERTIES**
|
||||
|
||||
@@ -17,6 +17,7 @@ android {
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_11
|
||||
targetCompatibility JavaVersion.VERSION_11
|
||||
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
@@ -28,6 +29,14 @@ android {
|
||||
}
|
||||
versionCode **VERSIONCODE**
|
||||
versionName '**VERSIONNAME**'
|
||||
|
||||
// ↓↓↓ 这里放你的 VK ID 占位符 ↓↓↓
|
||||
manifestPlaceholders = [
|
||||
VKIDRedirectHost : "vk.ru",
|
||||
VKIDRedirectScheme: "vk54432404",
|
||||
VKIDClientID : "54432404",
|
||||
VKIDClientSecret : "WD6BO0CwPXsKMaaFX8Qq"
|
||||
]
|
||||
}
|
||||
|
||||
aaptOptions {
|
||||
|
||||
@@ -59,6 +59,13 @@ dependencies {
|
||||
implementation "androidx.credentials:credentials-play-services-auth:1.3.0"
|
||||
implementation "com.google.android.libraries.identity.googleid:googleid:1.1.1"
|
||||
|
||||
|
||||
implementation(platform("ru.rustore.sdk:bom:2025.11.01"))
|
||||
implementation("ru.rustore.sdk:pay")
|
||||
implementation "ru.rustore.sdk:review:10.0.0"
|
||||
implementation "com.vk.id:vkid:2.5.1"
|
||||
coreLibraryDesugaring "com.android.tools:desugar_jdk_libs:2.1.2"
|
||||
|
||||
// Android Resolver Dependencies Start
|
||||
implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7
|
||||
implementation 'com.applovin.mediation:facebook-adapter:[6.18.0.1]' // Assets/MaxSdk/Mediation/Facebook/Editor/Dependencies.xml:8
|
||||
@@ -95,6 +102,7 @@ android {
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_11
|
||||
targetCompatibility JavaVersion.VERSION_11
|
||||
coreLibraryDesugaringEnabled true
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
@@ -103,6 +111,7 @@ android {
|
||||
ndk {
|
||||
abiFilters **ABIFILTERS**
|
||||
}
|
||||
|
||||
versionCode **VERSIONCODE**
|
||||
versionName '**VERSIONNAME**'
|
||||
consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD**
|
||||
|
||||
@@ -16,6 +16,17 @@ dependencyResolutionManagement {
|
||||
**ARTIFACTORYREPOSITORY**
|
||||
google()
|
||||
mavenCentral()
|
||||
|
||||
maven{
|
||||
url "https://artifactory-external.vkpartner.ru/artifactory/vkid-sdk-android/"
|
||||
}
|
||||
maven{
|
||||
url "https://artifactory-external.vkpartner.ru/artifactory/maven/"
|
||||
}
|
||||
maven{
|
||||
url "https://artifactory-external.vkpartner.ru/artifactory/vk-id-captcha/android/"
|
||||
}
|
||||
|
||||
// Android Resolver Repos Start
|
||||
def unityProjectPath = $/file:///**DIR_UNITYPROJECT**/$.replace("\\", "/")
|
||||
maven {
|
||||
|
||||
@@ -38,7 +38,6 @@ RenderSettings:
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
m_IndirectSpecularColor: {r: 0.12733836, g: 0.13418846, b: 0.12118524, a: 1}
|
||||
m_UseRadianceAmbientProbe: 0
|
||||
--- !u!157 &3
|
||||
LightmapSettings:
|
||||
@@ -123,6 +122,85 @@ NavMeshSettings:
|
||||
debug:
|
||||
m_Flags: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &9113281
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 9113282}
|
||||
- component: {fileID: 9113284}
|
||||
- component: {fileID: 9113283}
|
||||
m_Layer: 5
|
||||
m_Name: Text (Legacy)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &9113282
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 9113281}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 678940590}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &9113283
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 9113281}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 33
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 1
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 0
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: Review
|
||||
--- !u!222 &9113284
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 9113281}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &29523098
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -365,6 +443,85 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 120435829}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &159485066
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 159485067}
|
||||
- component: {fileID: 159485069}
|
||||
- component: {fileID: 159485068}
|
||||
m_Layer: 5
|
||||
m_Name: Text (Legacy)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &159485067
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 159485066}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 1113066541}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &159485068
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 159485066}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 33
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 1
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 0
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: L_VK
|
||||
--- !u!222 &159485069
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 159485066}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &174456813
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -591,6 +748,127 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 231808344}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &263924338
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 263924339}
|
||||
- component: {fileID: 263924341}
|
||||
- component: {fileID: 263924340}
|
||||
- component: {fileID: 263924342}
|
||||
m_Layer: 5
|
||||
m_Name: VkLogin
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &263924339
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 263924338}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 959891290}
|
||||
m_Father: {fileID: 1044920373}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!114 &263924340
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 263924338}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &263924341
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 263924338}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!114 &263924342
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 263924338}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_WrapAround: 0
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_SelectedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_SelectedTrigger: Selected
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 263924340}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!1 &276006784
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -801,12 +1079,12 @@ MonoBehaviour:
|
||||
m_RequiresColorTexture: 0
|
||||
m_Version: 2
|
||||
m_TaaSettings:
|
||||
quality: 3
|
||||
frameInfluence: 0.1
|
||||
jitterScale: 1
|
||||
mipBias: 0
|
||||
varianceClampScale: 0.9
|
||||
contrastAdaptiveSharpening: 0
|
||||
m_Quality: 3
|
||||
m_FrameInfluence: 0.1
|
||||
m_JitterScale: 1
|
||||
m_MipBias: 0
|
||||
m_VarianceClampScale: 0.9
|
||||
m_ContrastAdaptiveSharpening: 0
|
||||
--- !u!1 &340278280
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -965,6 +1243,127 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 354913240}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &365226264
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 365226265}
|
||||
- component: {fileID: 365226268}
|
||||
- component: {fileID: 365226267}
|
||||
- component: {fileID: 365226266}
|
||||
m_Layer: 5
|
||||
m_Name: CVk
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &365226265
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 365226264}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 425077563}
|
||||
m_Father: {fileID: 1044920373}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!114 &365226266
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 365226264}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_WrapAround: 0
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_SelectedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_SelectedTrigger: Selected
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 365226267}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &365226267
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 365226264}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &365226268
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 365226264}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &407966797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1044,6 +1443,85 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 407966797}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &425077562
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 425077563}
|
||||
- component: {fileID: 425077565}
|
||||
- component: {fileID: 425077564}
|
||||
m_Layer: 5
|
||||
m_Name: Text (Legacy)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &425077563
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 425077562}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 365226265}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &425077564
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 425077562}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 33
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 1
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 0
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: C_VK
|
||||
--- !u!222 &425077565
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 425077562}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &571824850
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1165,6 +1643,127 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 571824850}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &678940589
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 678940590}
|
||||
- component: {fileID: 678940593}
|
||||
- component: {fileID: 678940592}
|
||||
- component: {fileID: 678940591}
|
||||
m_Layer: 5
|
||||
m_Name: Review
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &678940590
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 678940589}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 9113282}
|
||||
m_Father: {fileID: 1044920373}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!114 &678940591
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 678940589}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_WrapAround: 0
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_SelectedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_SelectedTrigger: Selected
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 678940592}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &678940592
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 678940589}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &678940593
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 678940589}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &686445508
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -2044,6 +2643,85 @@ MonoBehaviour:
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!1 &959891289
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 959891290}
|
||||
- component: {fileID: 959891292}
|
||||
- component: {fileID: 959891291}
|
||||
m_Layer: 5
|
||||
m_Name: Text (Legacy)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &959891290
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 959891289}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 263924339}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &959891291
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 959891289}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 33
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 1
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 0
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: VK
|
||||
--- !u!222 &959891292
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 959891289}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1033367769
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -2276,11 +2954,14 @@ RectTransform:
|
||||
- {fileID: 1956900235}
|
||||
- {fileID: 1910171036}
|
||||
- {fileID: 1188788676}
|
||||
- {fileID: 263924339}
|
||||
- {fileID: 1627053315}
|
||||
- {fileID: 1668967320}
|
||||
- {fileID: 834002869}
|
||||
- {fileID: 1094138236}
|
||||
- {fileID: 698899140}
|
||||
- {fileID: 1113066541}
|
||||
- {fileID: 365226265}
|
||||
- {fileID: 948068709}
|
||||
- {fileID: 1033467961}
|
||||
- {fileID: 571824851}
|
||||
@@ -2293,6 +2974,7 @@ RectTransform:
|
||||
- {fileID: 1686948820}
|
||||
- {fileID: 827533342}
|
||||
- {fileID: 1240291498}
|
||||
- {fileID: 678940590}
|
||||
m_Father: {fileID: 1451597222}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
@@ -2766,6 +3448,127 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1110300852}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1113066540
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1113066541}
|
||||
- component: {fileID: 1113066544}
|
||||
- component: {fileID: 1113066543}
|
||||
- component: {fileID: 1113066542}
|
||||
m_Layer: 5
|
||||
m_Name: LVK
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1113066541
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1113066540}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 159485067}
|
||||
m_Father: {fileID: 1044920373}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!114 &1113066542
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1113066540}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_WrapAround: 0
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_SelectedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_SelectedTrigger: Selected
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 1113066543}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &1113066543
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1113066540}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &1113066544
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1113066540}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1156426215
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -4143,9 +4946,12 @@ MonoBehaviour:
|
||||
_InitBtn: {fileID: 1956900236}
|
||||
_loginGuestBtn: {fileID: 1910171037}
|
||||
_loginGoogleBtn: {fileID: 1188788679}
|
||||
_loginVkBtn: {fileID: 263924342}
|
||||
_loginFbBtn: {fileID: 1627053318}
|
||||
_loginAppleBtn: {fileID: 1668967321}
|
||||
_loginTokenBtn: {fileID: 834002870}
|
||||
_linkVkBtn: {fileID: 1113066542}
|
||||
_checkVkBtn: {fileID: 365226266}
|
||||
_linkGoogleBtn: {fileID: 1094138239}
|
||||
_checkGoogleBtn: {fileID: 698899143}
|
||||
_linkFacbookBtn: {fileID: 948068712}
|
||||
@@ -4160,6 +4966,7 @@ MonoBehaviour:
|
||||
_signoutBtn: {fileID: 1686948823}
|
||||
_fbShareLinkBtn: {fileID: 827533345}
|
||||
_mfbShareLinkBtn: {fileID: 1240291501}
|
||||
_reviewBtn: {fileID: 678940591}
|
||||
_messageTxt: {fileID: 2070325010}
|
||||
--- !u!4 &1788702880
|
||||
Transform:
|
||||
|
||||
@@ -513,6 +513,127 @@ MonoBehaviour:
|
||||
m_MipBias: 0
|
||||
m_VarianceClampScale: 0.9
|
||||
m_ContrastAdaptiveSharpening: 0
|
||||
--- !u!1 &385330068
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 385330072}
|
||||
- component: {fileID: 385330071}
|
||||
- component: {fileID: 385330070}
|
||||
- component: {fileID: 385330069}
|
||||
m_Layer: 5
|
||||
m_Name: changebind
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &385330069
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 385330068}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_WrapAround: 0
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_SelectedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_SelectedTrigger: Selected
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 385330070}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &385330070
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 385330068}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &385330071
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 385330068}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!224 &385330072
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 385330068}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 465819806}
|
||||
m_Father: {fileID: 1044920373}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!1 &393321311
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -549,6 +670,85 @@ RectTransform:
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: -20, y: -20}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!1 &465819805
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 465819806}
|
||||
- component: {fileID: 465819808}
|
||||
- component: {fileID: 465819807}
|
||||
m_Layer: 5
|
||||
m_Name: Text (Legacy)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &465819806
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 465819805}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 385330072}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &465819807
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 465819805}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 33
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 1
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 0
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: CBind
|
||||
--- !u!222 &465819808
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 465819805}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &471181945
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -670,7 +870,7 @@ GameObject:
|
||||
- component: {fileID: 514656874}
|
||||
- component: {fileID: 514656873}
|
||||
m_Layer: 5
|
||||
m_Name: Check sns
|
||||
m_Name: rm sns
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
@@ -1315,6 +1515,127 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 757589085}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &839565401
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 839565402}
|
||||
- component: {fileID: 839565405}
|
||||
- component: {fileID: 839565404}
|
||||
- component: {fileID: 839565403}
|
||||
m_Layer: 5
|
||||
m_Name: LoginBySns
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &839565402
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 839565401}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children:
|
||||
- {fileID: 1387388941}
|
||||
m_Father: {fileID: 1044920373}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 0, y: 0}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 1}
|
||||
--- !u!114 &839565403
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 839565401}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Navigation:
|
||||
m_Mode: 3
|
||||
m_WrapAround: 0
|
||||
m_SelectOnUp: {fileID: 0}
|
||||
m_SelectOnDown: {fileID: 0}
|
||||
m_SelectOnLeft: {fileID: 0}
|
||||
m_SelectOnRight: {fileID: 0}
|
||||
m_Transition: 1
|
||||
m_Colors:
|
||||
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}
|
||||
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
|
||||
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
|
||||
m_ColorMultiplier: 1
|
||||
m_FadeDuration: 0.1
|
||||
m_SpriteState:
|
||||
m_HighlightedSprite: {fileID: 0}
|
||||
m_PressedSprite: {fileID: 0}
|
||||
m_SelectedSprite: {fileID: 0}
|
||||
m_DisabledSprite: {fileID: 0}
|
||||
m_AnimationTriggers:
|
||||
m_NormalTrigger: Normal
|
||||
m_HighlightedTrigger: Highlighted
|
||||
m_PressedTrigger: Pressed
|
||||
m_SelectedTrigger: Selected
|
||||
m_DisabledTrigger: Disabled
|
||||
m_Interactable: 1
|
||||
m_TargetGraphic: {fileID: 839565404}
|
||||
m_OnClick:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
--- !u!114 &839565404
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 839565401}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 1, g: 1, b: 1, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_Sprite: {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_Type: 1
|
||||
m_PreserveAspect: 0
|
||||
m_FillCenter: 1
|
||||
m_FillMethod: 4
|
||||
m_FillAmount: 1
|
||||
m_FillClockwise: 1
|
||||
m_FillOrigin: 0
|
||||
m_UseSpriteMesh: 0
|
||||
m_PixelsPerUnitMultiplier: 1
|
||||
--- !u!222 &839565405
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 839565401}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &845062987
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1506,7 +1827,7 @@ MonoBehaviour:
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: CSNS
|
||||
m_Text: RM SNS
|
||||
--- !u!222 &875109649
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -1706,11 +2027,13 @@ RectTransform:
|
||||
- {fileID: 1956900235}
|
||||
- {fileID: 1299164145}
|
||||
- {fileID: 1472314934}
|
||||
- {fileID: 839565402}
|
||||
- {fileID: 1274822429}
|
||||
- {fileID: 1095319726}
|
||||
- {fileID: 514656872}
|
||||
- {fileID: 599093755}
|
||||
- {fileID: 730871748}
|
||||
- {fileID: 385330072}
|
||||
m_Father: {fileID: 1451597222}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
@@ -2276,6 +2599,87 @@ CanvasRenderer:
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1299164144}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1387388940
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
serializedVersion: 6
|
||||
m_Component:
|
||||
- component: {fileID: 1387388941}
|
||||
- component: {fileID: 1387388943}
|
||||
- component: {fileID: 1387388942}
|
||||
m_Layer: 5
|
||||
m_Name: Text (Legacy)
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!224 &1387388941
|
||||
RectTransform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1387388940}
|
||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_ConstrainProportionsScale: 0
|
||||
m_Children: []
|
||||
m_Father: {fileID: 839565402}
|
||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||
m_AnchorMin: {x: 0, y: 0}
|
||||
m_AnchorMax: {x: 1, y: 1}
|
||||
m_AnchoredPosition: {x: 0, y: 0}
|
||||
m_SizeDelta: {x: 0, y: 0}
|
||||
m_Pivot: {x: 0.5, y: 0.5}
|
||||
--- !u!114 &1387388942
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1387388940}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
m_Material: {fileID: 0}
|
||||
m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1}
|
||||
m_RaycastTarget: 1
|
||||
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
|
||||
m_Maskable: 1
|
||||
m_OnCullStateChanged:
|
||||
m_PersistentCalls:
|
||||
m_Calls: []
|
||||
m_FontData:
|
||||
m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_FontSize: 33
|
||||
m_FontStyle: 0
|
||||
m_BestFit: 1
|
||||
m_MinSize: 10
|
||||
m_MaxSize: 40
|
||||
m_Alignment: 4
|
||||
m_AlignByGeometry: 0
|
||||
m_RichText: 0
|
||||
m_HorizontalOverflow: 0
|
||||
m_VerticalOverflow: 0
|
||||
m_LineSpacing: 1
|
||||
m_Text: 'loginSNS
|
||||
|
||||
'
|
||||
--- !u!222 &1387388943
|
||||
CanvasRenderer:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 1387388940}
|
||||
m_CullTransparentMesh: 1
|
||||
--- !u!1 &1422461756
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
@@ -2871,9 +3275,10 @@ MonoBehaviour:
|
||||
loginBtn: {fileID: 1472314935}
|
||||
logoutBtn: {fileID: 1274822430}
|
||||
getSnsBtn: {fileID: 1095319727}
|
||||
checkSnsBtn: {fileID: 514656873}
|
||||
rmSnsBtn: {fileID: 514656873}
|
||||
loginBySns: {fileID: 839565403}
|
||||
bindBtn: {fileID: 599093756}
|
||||
unbindBtn: {fileID: 730871749}
|
||||
changeBindBtn: {fileID: 385330069}
|
||||
--- !u!1 &1905578657
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
|
||||
@@ -16,6 +16,8 @@ public class SDKTest : MonoBehaviour
|
||||
private Button _loginGuestBtn;
|
||||
[SerializeField]
|
||||
private Button _loginGoogleBtn;
|
||||
[SerializeField] // 海外VkId 登陆
|
||||
private Button _loginVkBtn;
|
||||
[SerializeField]
|
||||
private Button _loginFbBtn;
|
||||
[SerializeField]
|
||||
@@ -23,6 +25,10 @@ public class SDKTest : MonoBehaviour
|
||||
[SerializeField]
|
||||
private Button _loginTokenBtn;
|
||||
[SerializeField]
|
||||
private Button _linkVkBtn;
|
||||
[SerializeField]
|
||||
private Button _checkVkBtn;
|
||||
[SerializeField]
|
||||
private Button _linkGoogleBtn;
|
||||
[SerializeField]
|
||||
private Button _checkGoogleBtn;
|
||||
@@ -50,6 +56,10 @@ public class SDKTest : MonoBehaviour
|
||||
private Button _fbShareLinkBtn;
|
||||
[SerializeField]
|
||||
private Button _mfbShareLinkBtn;
|
||||
|
||||
[SerializeField]
|
||||
private Button _reviewBtn;
|
||||
|
||||
[SerializeField]
|
||||
private Text _messageTxt;
|
||||
|
||||
@@ -64,7 +74,7 @@ public class SDKTest : MonoBehaviour
|
||||
//===============================================================================
|
||||
//====================== Test Server ===========================
|
||||
// UnityBridgeFunc.UnityResetServerUrl("https://128-hwsfsdk-sdk-test01.qijihdhk.com");
|
||||
// config.Set("AGG_SERVER", "https://128-hwsfsdk-sdk-test01.qijihdhk.com");
|
||||
config.Set("AGG_SERVER", "https://128-hwsfsdk-sdk-test01.qijihdhk.com");
|
||||
//====================== Test Server ===========================
|
||||
//===============================================================================
|
||||
//
|
||||
@@ -72,6 +82,8 @@ public class SDKTest : MonoBehaviour
|
||||
_loginGuestBtn.onClick.AddListener(() => OnLogin(EAccoutType.hwGuest));
|
||||
_loginGoogleBtn.onClick.AddListener(() => OnLogin(EAccoutType.hwGoogle));
|
||||
_loginFbBtn.onClick.AddListener(() => OnLogin(EAccoutType.hwFacebook));
|
||||
_loginVkBtn.onClick.AddListener(()=> OnLogin(EAccoutType.hwVkid));
|
||||
|
||||
#if UNITY_IOS
|
||||
_loginAppleBtn.onClick.AddListener(() => OnLogin(EAccoutType.Apple));
|
||||
#endif
|
||||
@@ -79,6 +91,8 @@ public class SDKTest : MonoBehaviour
|
||||
_logOutBtn.onClick.AddListener(OnLogout);
|
||||
_linkGoogleBtn.onClick.AddListener(OnLinkGoogle);
|
||||
_checkGoogleBtn.onClick.AddListener(OncheckGoogle);
|
||||
_linkVkBtn.onClick.AddListener(OnLinkVkId);
|
||||
_checkVkBtn.onClick.AddListener(OnCheckVKId);
|
||||
_linkFacbookBtn.onClick.AddListener(OnLinkFacebook);
|
||||
_linkAppleBtn.onClick.AddListener(OnLinkApple);
|
||||
_checkFacbookBtn.onClick.AddListener(OncheckFacebook);
|
||||
@@ -90,6 +104,7 @@ public class SDKTest : MonoBehaviour
|
||||
_signoutBtn.onClick.AddListener(OnSignoutBtn);
|
||||
_fbShareLinkBtn.onClick.AddListener(OnFBShareLinkBtn);
|
||||
_mfbShareLinkBtn.onClick.AddListener(OnMessengerShareLinkBtn);
|
||||
_reviewBtn.onClick.AddListener(OnReview);
|
||||
Debug.Log("SDKTest Started");
|
||||
}
|
||||
|
||||
@@ -112,8 +127,8 @@ public class SDKTest : MonoBehaviour
|
||||
var customId = TDAnalytics.GetDistinctId();
|
||||
var customId_2 = TDAnalytics.GetDistinctId("0caf287574bd4a9bb08be8995705ef6f");
|
||||
Debug.Log($"customId = {customId}, customId_2 = {customId_2}");
|
||||
|
||||
UnityBridgeFunc.UnityResetServerUrl("https://128-hwsfsdk-sdk-test01.qijihdhk.com");
|
||||
|
||||
// UnityBridgeFunc.UnityResetServerUrl("https://128-hwsfsdk-sdk-test01.qijihdhk.com");
|
||||
}
|
||||
|
||||
int retryAttempt;
|
||||
@@ -185,9 +200,11 @@ public class SDKTest : MonoBehaviour
|
||||
#endif
|
||||
|
||||
var purchaseInfo = new JObject();
|
||||
// purchaseInfo["ver"] = 2;
|
||||
purchaseInfo["pfid"] = "TestPlayer";
|
||||
// purchaseInfo["sum"] = sku.ProdPrice;
|
||||
purchaseInfo["customData"] = "{\"test\":\"test\"}";
|
||||
|
||||
// purchaseInfo[]
|
||||
|
||||
PaymentInfo payResult = await TYSdkFacade.Instance.Pay(sku, 1, sku.ProdPrice, purchaseInfo);
|
||||
_messageTxt.text = "\n" + $"Success : {payResult.isSuccess}";
|
||||
@@ -206,6 +223,7 @@ public class SDKTest : MonoBehaviour
|
||||
_messageTxt.text = "products count:::" + result.products.Count;
|
||||
_messageTxt.text += "\n" + result.products[0].ToString();
|
||||
sku = result.products[0];
|
||||
Debug.Log($"sku = {sku}");
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -328,6 +346,12 @@ eb68f93a08156e04
|
||||
Debug.Log($"[AD LOG]Rewarded ad revenue paid \n {adInfo.ToString()}");
|
||||
}
|
||||
|
||||
private async void OnLinkVkId()
|
||||
{
|
||||
_messageTxt.text = string.Empty;
|
||||
var isSuccess = await TYSdkFacade.Instance.LinkAccount(EAccoutType.hwVkid);
|
||||
_messageTxt.text = $"\n link VkId account : {isSuccess} {isSuccess.code}";
|
||||
}
|
||||
|
||||
private async void OnLinkGoogle()
|
||||
{
|
||||
@@ -350,6 +374,12 @@ eb68f93a08156e04
|
||||
_messageTxt.text = $"\n link facebook account : {isSuccess}";
|
||||
}
|
||||
|
||||
private async void OnCheckVKId()
|
||||
{
|
||||
_messageTxt.text = string.Empty;
|
||||
var isSuccess = await TYSdkFacade.Instance.LinkCheck(EAccoutType.hwVkid);
|
||||
_messageTxt.text = $"\n google account linked : {isSuccess}";
|
||||
}
|
||||
private async void OncheckGoogle()
|
||||
{
|
||||
_messageTxt.text = string.Empty;
|
||||
@@ -379,6 +409,11 @@ eb68f93a08156e04
|
||||
UnityBridgeFunc.MessengerShareLink("title", "content", "https://www.baidu.com");
|
||||
}
|
||||
|
||||
private void OnReview()
|
||||
{
|
||||
UnityBridgeFunc.Review();
|
||||
}
|
||||
|
||||
/*
|
||||
public void OnTaBtn()
|
||||
{
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Newtonsoft.Json.Linq;
|
||||
using tysdk;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
@@ -28,13 +29,17 @@ public class UnbindTest : MonoBehaviour
|
||||
private Button getSnsBtn;
|
||||
|
||||
[SerializeField]
|
||||
private Button checkSnsBtn;
|
||||
private Button rmSnsBtn;
|
||||
|
||||
|
||||
[SerializeField]
|
||||
private Button loginBySns;
|
||||
|
||||
[SerializeField]
|
||||
private Button bindBtn;
|
||||
|
||||
[SerializeField]
|
||||
private Button unbindBtn;
|
||||
private Button changeBindBtn;
|
||||
|
||||
private EAccoutType accoutType;
|
||||
|
||||
@@ -56,9 +61,10 @@ public class UnbindTest : MonoBehaviour
|
||||
}); loginBtn.onClick.AddListener(OnLogin);
|
||||
logoutBtn.onClick.AddListener(OnLogout);
|
||||
getSnsBtn.onClick.AddListener(OnGetSns);
|
||||
checkSnsBtn.onClick.AddListener(OnCheckSns);
|
||||
rmSnsBtn.onClick.AddListener(OnRmSns);
|
||||
loginBySns.onClick.AddListener(OnLoginBySns);
|
||||
bindBtn.onClick.AddListener(OnBind);
|
||||
unbindBtn.onClick.AddListener(OnUnbind);
|
||||
changeBindBtn.onClick.AddListener(OnChangeBind);
|
||||
Debug.Log("========== Init =============");
|
||||
TYSdkFacade.Instance.Init();
|
||||
Debug.Log($"AccoutType {accoutType}");
|
||||
@@ -96,7 +102,14 @@ public class UnbindTest : MonoBehaviour
|
||||
t.CallStatic("GetSns", accoutType.ToString());
|
||||
}
|
||||
|
||||
private async void OnCheckSns()
|
||||
private void OnRmSns()
|
||||
{
|
||||
Debug.Log("========== Get SNS =============");
|
||||
using var t = new AndroidJavaClass(Cls);
|
||||
t.CallStatic("RmSns") ;
|
||||
}
|
||||
|
||||
private async void OnLoginBySns()
|
||||
{
|
||||
try
|
||||
{
|
||||
@@ -115,6 +128,7 @@ public class UnbindTest : MonoBehaviour
|
||||
}
|
||||
}
|
||||
|
||||
private int buserId;
|
||||
private async void OnBind()
|
||||
{
|
||||
try
|
||||
@@ -126,6 +140,7 @@ public class UnbindTest : MonoBehaviour
|
||||
{
|
||||
var info = await PlayFabTool.GetPFPlayerInfoBySDKId(linkResult.userId, "6DC6D");
|
||||
Debug.Log(info?.ToString() ?? "[UnbindTest::OnBind] info is null");
|
||||
buserId = linkResult.userId;
|
||||
}
|
||||
}
|
||||
catch (Exception e)
|
||||
@@ -134,21 +149,17 @@ public class UnbindTest : MonoBehaviour
|
||||
}
|
||||
}
|
||||
|
||||
public void BindCallback(string message)
|
||||
private async void OnChangeBind()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
private void OnUnbind()
|
||||
{
|
||||
using (var t = new AndroidJavaClass(Cls))
|
||||
try
|
||||
{
|
||||
t.CallStatic("Unbind");
|
||||
Debug.Log("========== Change Bind =============");
|
||||
var result = await TYSdkFacade.Instance.ChangeLinkAccount(accoutType, buserId, loginInfo.userId);
|
||||
Debug.Log($"Change Bind Result Code:{result.code}, UserId:{result.userId}, msg:{result.msg}");
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.LogException(e);
|
||||
}
|
||||
}
|
||||
|
||||
public void UnbindCallback(string message)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@@ -76,6 +76,12 @@ MonoBehaviour:
|
||||
type: 3}
|
||||
dataDrivenLensFlare: {fileID: 4800000, guid: 6cda457ac28612740adb23da5d39ea92,
|
||||
type: 3}
|
||||
terrainDetailLitPS: {fileID: 4800000, guid: f6783ab646d374f94b199774402a5144,
|
||||
type: 3}
|
||||
terrainDetailGrassPS: {fileID: 4800000, guid: e507fdfead5ca47e8b9a768b51c291a1,
|
||||
type: 3}
|
||||
terrainDetailGrassBillboardPS: {fileID: 4800000, guid: 29868e73b638e48ca99a19ea58c48d90,
|
||||
type: 3}
|
||||
m_AssetVersion: 2
|
||||
m_OpaqueLayerMask:
|
||||
serializedVersion: 2
|
||||
|
||||
@@ -7,7 +7,7 @@ public class ConfigManager {
|
||||
public static String SDK_GAMEID = "20587";
|
||||
public static String SDK_PROJECTID = "20587";
|
||||
public static String SDK_CLOUDID = "128";
|
||||
public static String SDK_CLIENTID = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.googleplay.FishingMaster";
|
||||
public static String SDK_CLIENTID = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.rustore.FishingTravel";
|
||||
|
||||
public static String SDK_LOGIN_SERVER_URL = "https://128-hwsfsdk-sdk-online01.qijihdhk.com";
|
||||
|
||||
@@ -22,10 +22,11 @@ public class ConfigManager {
|
||||
public static final String UNITY_FACADE_NAME = "TYSdkFacade";
|
||||
public static final String LOGIN_CALLBACK_FUNCTION_NAME = "LoginResult";
|
||||
public static final String LINKACCOUT_CALLBACK_FUNCTION_NAME = "LinkAccoutResult";
|
||||
public static final String CHANGELINK_CALLBACK_FUNCTION_NAME = "ChangeLinkAccountResult";
|
||||
public static final String CHECKLINK_CALLBACK_FUNCTION_NAME = "CheckLinkResult";
|
||||
public static final String PAY_CALLBACK_FUNCTION_NAME = "PayResult";
|
||||
public static final String PAY_TYPE_CALLBACK_FUNCTION_NAME = "SKUListResult";
|
||||
public static final String FCM_NOTICE_FUNCTION_NAME = "FCMCallback";
|
||||
public static final String FCM_REALNAME_CALLBACK_FUNCTION_NAME = "RealNameCallback";
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -266,6 +266,41 @@ public class SDKManager {
|
||||
tmpSnsInfo = null;
|
||||
}
|
||||
|
||||
public static void ChangeLinkAccount(String type, int oldUserId, int newUserId)
|
||||
{
|
||||
if(tmpSnsInfo == null)
|
||||
{
|
||||
String msg = "{\"code\":1, \"userId\": 0, \"msg\": \"tmpSnsInfo is null\"}";
|
||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.CHANGELINK_CALLBACK_FUNCTION_NAME, msg);
|
||||
return;
|
||||
}
|
||||
|
||||
SDKAPI.getIns().unbindBySnsId(tmpSnsInfo, String.valueOf(oldUserId), (unbindCode, unbindMsg) -> {
|
||||
Log.i(TAG, "unbindBySnsId code: " + unbindCode + " msg: " + unbindMsg);
|
||||
if(unbindCode == SDKCallBack.CODE_SUCCESS)
|
||||
{
|
||||
SDKAPI.getIns().bindBySnsId(tmpSnsInfo, String.valueOf(newUserId), (bindCode, bindMsg) -> {
|
||||
Log.i(TAG, "bindBySnsId code: " + bindCode + " msg: " + bindMsg);
|
||||
if(bindCode == SDKCallBack.CODE_SUCCESS)
|
||||
{
|
||||
String msg = "{\"code\":0, \"userId\": " + newUserId + ", \"msg\": \"success\"}";
|
||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.CHANGELINK_CALLBACK_FUNCTION_NAME, msg);
|
||||
}
|
||||
else
|
||||
{
|
||||
String msg = String.format("{\"code\":-1, \"userId\": 0, \"msg\": \"%s\"}", bindMsg);
|
||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.CHANGELINK_CALLBACK_FUNCTION_NAME, msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
else
|
||||
{
|
||||
String msg = String.format("{\"code\":1, \"userId\": 0, \"msg\": \"%s\"}", unbindMsg);
|
||||
UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.CHANGELINK_CALLBACK_FUNCTION_NAME, msg);
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void LinkCheck(String type)
|
||||
{
|
||||
SDKAPI.getIns().getSnsInfo(type, (code, snsInfo, msg) -> {
|
||||
@@ -476,20 +511,125 @@ public class SDKManager {
|
||||
|
||||
public static void Review()
|
||||
{
|
||||
ReviewManager manager = ReviewManagerFactory.create(SDKWrapper.getInstance().getContext());
|
||||
Task<ReviewInfo> request = manager.requestReviewFlow();
|
||||
request.addOnCompleteListener(reqTask -> {
|
||||
if (reqTask.isSuccessful()) {
|
||||
ReviewInfo reviewInfo = reqTask.getResult();
|
||||
Activity activity = UnityPlayer.currentActivity;
|
||||
manager.launchReviewFlow(activity, reviewInfo);
|
||||
} else {
|
||||
@ReviewErrorCode int reviewErrorCode = ((ReviewException) request.getException()).getErrorCode();
|
||||
Log.e(TAG,"Review Error code: " + reviewErrorCode);
|
||||
// ReviewManager manager = ReviewManagerFactory.create(SDKWrapper.getInstance().getContext());
|
||||
// Task<ReviewInfo> request = manager.requestReviewFlow();
|
||||
// request.addOnCompleteListener(reqTask -> {
|
||||
// if (reqTask.isSuccessful()) {
|
||||
// ReviewInfo reviewInfo = reqTask.getResult();
|
||||
// Activity activity = UnityPlayer.currentActivity;
|
||||
// manager.launchReviewFlow(activity, reviewInfo);
|
||||
// } else {
|
||||
// @ReviewErrorCode int reviewErrorCode = ((ReviewException) request.getException()).getErrorCode();
|
||||
// Log.e(TAG,"Review Error code: " + reviewErrorCode);
|
||||
// }
|
||||
// });
|
||||
// Runnable
|
||||
RuStoreReview();
|
||||
}
|
||||
//- Rustore相关接口
|
||||
public interface ReviewResultCallback {
|
||||
void onReviewSuccess(JSONObject result);
|
||||
void onReviewError(int code, String msg);
|
||||
}
|
||||
// # 第一步 请求评分request
|
||||
public static void RequestRustoreReView(ReviewResultCallback callback) {
|
||||
|
||||
JSONObject json = new JSONObject();
|
||||
try {
|
||||
json.put("action", "ACTION_REQUEST_REVIEW");
|
||||
} catch (JSONException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
SDKAPI.getIns().thirdExtend(json.toString(), (code, msg) -> {
|
||||
Log.e(TAG, "====>RequestRustoreReView code= " + code + " msg= " + msg);
|
||||
JSONObject result = new JSONObject();
|
||||
|
||||
try {
|
||||
result.put("code", code);
|
||||
if (code == SDKCallBack.Extend.EXTEND_CODE_SUCCESS) {
|
||||
Log.e(TAG, "RequestRustoreReView Success: " + msg);
|
||||
//获取成功,msg即为对应的json字符串
|
||||
// 成功时调用回调
|
||||
if (callback != null) {
|
||||
callback.onReviewSuccess(result);
|
||||
}
|
||||
} else {
|
||||
Log.e(TAG, "RequestRustoreReView Failed: " + msg);
|
||||
result.put("thirdExtend_errStr", msg);
|
||||
// 失败时调用回调
|
||||
if (callback != null) {
|
||||
callback.onReviewError(code, msg);
|
||||
}
|
||||
}
|
||||
//code 说明:
|
||||
// 0 : 获取成功
|
||||
// 26012001 : RuStoreNotInstalledException
|
||||
// 26012002 : RuStoreOutdatedException
|
||||
// 26012003 : RuStoreUserUnauthorizedException
|
||||
// 26012004 : RuStoreUserBannedException
|
||||
// 26012005 : RuStoreApplicationBannedException
|
||||
// 26012006 : RuStoreRequestLimitReached
|
||||
// 26012007 : RuStoreReviewExists
|
||||
// 26012008 : RuStoreInvalidReviewInfo
|
||||
// 26012009 : RuStoreException
|
||||
// -1 : 其他未知异常
|
||||
// msg 说明:
|
||||
// 失败时为error msg
|
||||
// UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.RUSTORE_REVIEW_CALLBACK, result.toString());
|
||||
} catch (Exception e) {
|
||||
|
||||
SDKLog.e("SDKManager-RequestRustoreReView-Exception" + e);
|
||||
// UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.RUSTORE_REVIEW_CALLBACK, result.toString());
|
||||
}
|
||||
});
|
||||
}
|
||||
// # 第二步,展示评分UI 。请求评分request成功后,调用,且一次成功的request只能调用一次展示
|
||||
public static void LaunchRustoreView(){
|
||||
|
||||
JSONObject json = new JSONObject();
|
||||
try {
|
||||
json.put("action", "ACTION_LAUNCH_REVIEW");
|
||||
} catch (JSONException e) {
|
||||
throw new RuntimeException(e);
|
||||
}
|
||||
SDKAPI.getIns().thirdExtend(json.toString(), (code, msg) -> {
|
||||
Log.e(TAG, "====>LaunchRustoreView code= " + code + " msg= " + msg);
|
||||
JSONObject result = new JSONObject();
|
||||
try {
|
||||
result.put("code", code);
|
||||
if (code == SDKCallBack.Extend.EXTEND_CODE_SUCCESS) {
|
||||
Log.e(TAG, "LaunchRustoreView Success: " + msg);
|
||||
//获取成功,msg即为对应的json字符串
|
||||
// UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.RUSTORE_LAUNCH_REVIEW, result.toString());
|
||||
|
||||
} else {
|
||||
Log.e(TAG, "LaunchRustoreView Failed: " + msg);
|
||||
result.put("thirdExtend_errStr", msg);
|
||||
}
|
||||
// UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.RUSTORE_LAUNCH_REVIEW, result.toString());
|
||||
} catch (Exception e) {
|
||||
|
||||
SDKLog.e("SDKManager-LaunchRustoreReView-Exception" + e);
|
||||
// UnityPlayer.UnitySendMessage(ConfigManager.UNITY_FACADE_NAME, ConfigManager.RUSTORE_LAUNCH_REVIEW, result.toString());
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
}
|
||||
public static void RuStoreReview(){
|
||||
|
||||
RequestRustoreReView(new ReviewResultCallback() {
|
||||
@Override
|
||||
public void onReviewSuccess(JSONObject result) {
|
||||
LaunchRustoreView();
|
||||
}
|
||||
@Override
|
||||
public void onReviewError(int code, String msg) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
public static void FBShareLink(String title, String content, String url)
|
||||
{
|
||||
Log.e(TAG,"FBShareLink : " + title + " " + content + " " + url);
|
||||
|
||||
Binary file not shown.
@@ -147,6 +147,20 @@ extern "C" {
|
||||
}
|
||||
}
|
||||
|
||||
NSInteger LoginTypeToBindType(NSInteger loginType)
|
||||
{
|
||||
switch (loginType) {
|
||||
case XYLoginWithApple:
|
||||
return XYBindApple;
|
||||
case XYLoginWithFB:
|
||||
return XYBindFB;
|
||||
case XYLoginWithGoogle:
|
||||
return XYBindGoodle;
|
||||
default:
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
const char* UnityLoginBySnsInfo()
|
||||
{
|
||||
NSLog(@"TYSdkInterface UnityLoginBySnsInfo");
|
||||
@@ -387,10 +401,6 @@ extern "C" {
|
||||
}];
|
||||
}
|
||||
|
||||
void UnlinkGoogle()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void LinkFacebook(const int userId)
|
||||
{
|
||||
@@ -412,10 +422,6 @@ extern "C" {
|
||||
}];
|
||||
}
|
||||
|
||||
void UnlinkFacebook()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void LinkApple(const int userId)
|
||||
{
|
||||
@@ -437,11 +443,60 @@ extern "C" {
|
||||
}];
|
||||
}
|
||||
|
||||
void UnlinkApple()
|
||||
void ChangeLinkAccount(const int accoutType, const int oldUserId, const int newUserId)
|
||||
{
|
||||
NSLog(@"TYSdkInterface ChangeLinkAccount accoutType:%d oldUserId:%d newUserId:%d", accoutType, oldUserId, newUserId);
|
||||
|
||||
if (g_snsLoginType == -1)
|
||||
{
|
||||
UnitySendMessage("TYSdkFacade", "ChangeLinkAccountResult",
|
||||
"{\"code\":1, \"userId\": 0, \"msg\": \"g_snsLoginType is invalid\"}");
|
||||
return;
|
||||
}
|
||||
|
||||
NSInteger bindTypeValue = LoginTypeToBindType(g_snsLoginType);
|
||||
if (bindTypeValue == -1)
|
||||
{
|
||||
UnitySendMessage("TYSdkFacade", "ChangeLinkAccountResult",
|
||||
"{\"code\":1, \"userId\": 0, \"msg\": \"unsupported account type\"}");
|
||||
return;
|
||||
}
|
||||
|
||||
XYBindType bindType = (XYBindType)bindTypeValue;
|
||||
|
||||
XYBindReq *unbindReq = [XYBindReq initUnBindWithPlatform:bindType UserId:(NSUInteger)oldUserId];
|
||||
[XYApi XYUnBindByBindReq:unbindReq completionHandler:^(XYResp * _Nonnull unbindResp) {
|
||||
NSLog(@"TYSdkInterface ChangeLinkAccount unbind code:%ld msg:%@", (long)unbindResp.errCode, unbindResp.errStr);
|
||||
|
||||
if (unbindResp.errCode == XYSuccess)
|
||||
{
|
||||
XYBindReq *bindReq = [XYBindReq initBindWithPlatform:bindType UserId:(NSUInteger)newUserId];
|
||||
[XYApi XYBindByBindReq:bindReq isUnbindGuest:@"false" completionHandler:^(XYResp * _Nonnull bindResp) {
|
||||
NSLog(@"TYSdkInterface ChangeLinkAccount bind code:%ld msg:%@", (long)bindResp.errCode, bindResp.errStr);
|
||||
|
||||
if (bindResp.errCode == XYSuccess)
|
||||
{
|
||||
NSString *msg = [NSString stringWithFormat:@"{\"code\":0, \"userId\": %d, \"msg\": \"success\"}", newUserId];
|
||||
UnitySendMessage("TYSdkFacade", "ChangeLinkAccountResult", AllocCString(msg));
|
||||
}
|
||||
else
|
||||
{
|
||||
NSString *errStr = bindResp.errStr ? bindResp.errStr : @"bind failed";
|
||||
NSString *msg = [NSString stringWithFormat:@"{\"code\":-1, \"userId\": 0, \"msg\": \"%@\"}", errStr];
|
||||
UnitySendMessage("TYSdkFacade", "ChangeLinkAccountResult", AllocCString(msg));
|
||||
}
|
||||
}];
|
||||
}
|
||||
else
|
||||
{
|
||||
NSString *errStr = unbindResp.errStr ? unbindResp.errStr : @"unbind failed";
|
||||
NSString *msg = [NSString stringWithFormat:@"{\"code\":1, \"userId\": 0, \"msg\": \"%@\"}", errStr];
|
||||
UnitySendMessage("TYSdkFacade", "ChangeLinkAccountResult", AllocCString(msg));
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
|
||||
void FBShareLink(const char* title, const char* content, const char* url)
|
||||
{
|
||||
NSLog(@"TYSdkInterface FBShareLink");
|
||||
|
||||
@@ -71,6 +71,49 @@ namespace tysdk
|
||||
return tcs.Task;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 重置已注册 callback 的超时时间:取消先前安排的延时 <see cref="CancellationTokenSource.Cancel"/>,
|
||||
/// 并从<strong>当前时刻</strong>起在 <paramref name="newTimeout"/> 后触发取消(与构造时传入的延时等价,见 <see cref="CancellationTokenSource.CancelAfter(System.TimeSpan)"/>)。
|
||||
/// </summary>
|
||||
/// <typeparam name="T">Callback 数据类型</typeparam>
|
||||
/// <param name="newTimeout">新的超时时间;若需立即按超时处理可使用 <see cref="TimeSpan.Zero"/></param>
|
||||
/// <returns>找到未完成 pending 并成功重置则为 true</returns>
|
||||
public bool ResetCallbackTimeout<T>(TimeSpan newTimeout) where T : class
|
||||
{
|
||||
if (_disposed)
|
||||
throw new ObjectDisposedException(nameof(TYSDKCallbackManager));
|
||||
|
||||
var callbackId = typeof(T).Name;
|
||||
|
||||
if (!_callbacks.TryGetValue(callbackId, out var entry))
|
||||
{
|
||||
UnityEngine.Debug.LogWarning($"[TYSDKCallbackManager] No pending callback found for type: {callbackId}");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (entry.Task.IsCompleted)
|
||||
{
|
||||
UnityEngine.Debug.LogWarning($"[TYSDKCallbackManager] Callback {callbackId} already completed, cannot reset timeout");
|
||||
return false;
|
||||
}
|
||||
|
||||
var cts = entry.CancellationTokenSource;
|
||||
if (cts == null)
|
||||
return false;
|
||||
|
||||
try
|
||||
{
|
||||
cts.CancelAfter(newTimeout);
|
||||
UnityEngine.Debug.Log($"[TYSDKCallbackManager] Reset timeout for {callbackId} to {newTimeout.TotalSeconds}s");
|
||||
return true;
|
||||
}
|
||||
catch (ObjectDisposedException)
|
||||
{
|
||||
UnityEngine.Debug.LogWarning($"[TYSDKCallbackManager] CancellationTokenSource already disposed for {callbackId}");
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 触发callback
|
||||
/// </summary>
|
||||
|
||||
@@ -38,7 +38,9 @@ namespace tysdk
|
||||
{"google", EAccoutType.hwGoogle},
|
||||
{"fb", EAccoutType.hwFacebook},
|
||||
{"tyGuest", EAccoutType.hwGuest},
|
||||
{"ios13", EAccoutType.Apple}
|
||||
{"ios13", EAccoutType.Apple},
|
||||
{"vk.global.app",EAccoutType.hwVkid},
|
||||
|
||||
};
|
||||
|
||||
private static EAccoutType ConvertAccoutType(string accountType)
|
||||
@@ -138,6 +140,11 @@ namespace tysdk
|
||||
|
||||
|
||||
public static bool IsLoggedIn => _accountInfo != null;
|
||||
|
||||
// 记录一下渠道,保证客户端可以调用
|
||||
public static string Channel => "hwVkid";
|
||||
|
||||
//-
|
||||
|
||||
public void Logout()
|
||||
{
|
||||
@@ -159,6 +166,7 @@ namespace tysdk
|
||||
|
||||
var userId = (int)ulong.Parse(deviceId, System.Globalization.NumberStyles.HexNumber);
|
||||
|
||||
Debug.Log($"userId -> {userId}");
|
||||
_accountInfo = new AccountInfo()
|
||||
{
|
||||
userId = userId,
|
||||
@@ -171,7 +179,7 @@ namespace tysdk
|
||||
};
|
||||
|
||||
#elif UNITY_ANDROID || UNITY_IOS
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<LoginInfo>(TimeSpan.FromSeconds(30));
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<LoginInfo>(TimeSpan.FromSeconds(120));
|
||||
|
||||
UnityBridgeFunc.UnityLogin(accoutType);
|
||||
|
||||
@@ -364,6 +372,43 @@ namespace tysdk
|
||||
UnityBridgeFunc.CleanLinkTmpSnsInfo();
|
||||
}
|
||||
|
||||
public async Task<ChangeLinkResult> ChangeLinkAccount(EAccoutType accoutType, int oldUserId, int newUserId)
|
||||
{
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<ChangeLinkResult>(TimeSpan.FromSeconds(30));
|
||||
UnityBridgeFunc.ChangeLinkAccount(accoutType, oldUserId, newUserId);
|
||||
try
|
||||
{
|
||||
var result = await task;
|
||||
if (result.code == 0)
|
||||
{
|
||||
_accountInfo.AddLinkedAccount(accoutType);
|
||||
_accountInfo.Save();
|
||||
}
|
||||
return result;
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
Debug.LogWarning($"[TYSdkFacade] Change link account failed: {e}");
|
||||
return new ChangeLinkResult() { code = 1 };
|
||||
}
|
||||
finally
|
||||
{
|
||||
CleanLinkTempSnSInfo();
|
||||
}
|
||||
}
|
||||
|
||||
public void ChangeLinkAccountResult(string message)
|
||||
{
|
||||
JObject data = JObject.Parse(message);
|
||||
var result = new ChangeLinkResult()
|
||||
{
|
||||
code = (int)data["code"],
|
||||
userId = (int)data["userId"],
|
||||
msg = (string)data["msg"]
|
||||
};
|
||||
TYSDKCallbackManager.Instance.TryTriggerCallback(result);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 检查是否已经绑定
|
||||
/// <returns>
|
||||
@@ -432,7 +477,7 @@ namespace tysdk
|
||||
list.Add(appid);
|
||||
|
||||
#if UNITY_ANDROID
|
||||
string clientid = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.googleplay.FishingMaster";
|
||||
string clientid = "Android_5.00_tyGuest,facebook.googleplay.0-hall20587.googleplay.FishingMaster";
|
||||
#elif UNITY_IOS
|
||||
string clientid = "IOS_5.00_tyGuest,facebook,appStore.appStore.0-hall20587.appStore.FishingMaster";
|
||||
#endif
|
||||
|
||||
@@ -20,6 +20,8 @@ namespace tysdk
|
||||
|___/
|
||||
=================================================*/
|
||||
|
||||
private bool _payFirstNegativeHandled;
|
||||
|
||||
//public async Task<PaymentInfo> Pay(string prodId, string prodPrice, string prodName, int count, string pType, string price_amount_micros =null)
|
||||
public async Task<PaymentInfo> Pay(SKUDetail prod, int count, float usdprice, JObject purchaseInfo)
|
||||
{
|
||||
@@ -49,16 +51,13 @@ namespace tysdk
|
||||
orderId = orderId,
|
||||
productId = prodId,
|
||||
price = prodPrice
|
||||
};
|
||||
|
||||
|
||||
};
|
||||
return result;
|
||||
#elif UNITY_ANDROID
|
||||
|
||||
var pType = "googleiab.global.app";
|
||||
|
||||
// var pType = "googleiab.global.app";
|
||||
var pType = tysdk.AccountInfo.hwPayType;
|
||||
var task = TYSDKCallbackManager.Instance.RegisterCallback<PaymentInfo>(TimeSpan.FromSeconds(30));
|
||||
|
||||
try
|
||||
{
|
||||
//UnityBridgeFunc.UnityKnow(prodId, prodName, count.ToString(), orderId, extraInfo);
|
||||
@@ -76,6 +75,10 @@ namespace tysdk
|
||||
Debug.LogWarning($"[TYSdkFacade::Pay] Faild {e.Message}");
|
||||
return new PaymentInfo(){code = "-1"};
|
||||
}
|
||||
finally
|
||||
{
|
||||
_payFirstNegativeHandled = false;
|
||||
}
|
||||
|
||||
|
||||
#elif UNITY_IOS
|
||||
@@ -95,6 +98,10 @@ namespace tysdk
|
||||
Debug.LogWarning($"[TYSdkFacade::Pay] Faild {e.Message}");
|
||||
return new PaymentInfo(){code = "-1"};
|
||||
}
|
||||
finally
|
||||
{
|
||||
_payFirstNegativeHandled = false;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -108,7 +115,16 @@ namespace tysdk
|
||||
result.msg = jresult["errStr"].ToString();
|
||||
if(result.code == "-1")
|
||||
{
|
||||
Debug.Log("[TYSdkFacade] pay failed: waiting next pay callback");
|
||||
if (!_payFirstNegativeHandled)
|
||||
{
|
||||
_payFirstNegativeHandled = true;
|
||||
TYSDKCallbackManager.Instance.ResetCallbackTimeout<PaymentInfo>(TimeSpan.FromSeconds(5));
|
||||
Debug.Log("[TYSdkFacade] pay failed (first time): reset timeout to 5s, waiting next pay callback");
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.Log("[TYSdkFacade] pay failed: waiting next pay callback");
|
||||
}
|
||||
return;
|
||||
}
|
||||
TYSDKCallbackManager.Instance.TryTriggerCallback(result);
|
||||
@@ -135,7 +151,7 @@ namespace tysdk
|
||||
//商品列表的回调
|
||||
public void SKUListResult(string json)
|
||||
{
|
||||
Debug.Log("[TYSdkFacade] GetSKUList callback");
|
||||
Debug.Log($"[TYSdkFacade] GetSKUList callback -> accountChannel: {_accountInfo.channel}");
|
||||
var jresult = JObject.Parse(json);
|
||||
int code = int.Parse(jresult["code"].ToString());
|
||||
var result = new ProductListInfo();
|
||||
@@ -144,11 +160,26 @@ namespace tysdk
|
||||
string productStr = jresult["respObj"].ToString();
|
||||
result.code = code;
|
||||
#if UNITY_ANDROID && !UNITY_EDITOR
|
||||
|
||||
var jsonObjList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SKUDetail>>(productStr);
|
||||
result.products = jsonObjList;
|
||||
|
||||
// var accountChannel = _accountInfo.channel;
|
||||
// if (accountChannel == EAccoutType.hwVkid)
|
||||
// {
|
||||
// result.ReadSkuFromData(productStr, accountChannel);
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// // var jsonObjList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<SKUDetail>>(productStr);
|
||||
// // result.products = jsonObjList;
|
||||
// result.BaseReadSkuFromData(productStr);
|
||||
// }
|
||||
// result.BaseReadSkuFromData(productStr);
|
||||
#elif UNITY_IOS && !UNITY_EDITOR
|
||||
result.ReadSKUFromJson(productStr);
|
||||
#endif
|
||||
|
||||
}
|
||||
|
||||
TYSDKCallbackManager.Instance.TryTriggerCallback(result);
|
||||
|
||||
@@ -1,6 +1,8 @@
|
||||
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using Newtonsoft.Json;
|
||||
using Newtonsoft.Json.Linq;
|
||||
|
||||
namespace tysdk
|
||||
{
|
||||
@@ -8,11 +10,18 @@ namespace tysdk
|
||||
{
|
||||
hwGoogle,
|
||||
hwFacebook,
|
||||
hwGuest,
|
||||
hwVkid,
|
||||
hwGuest,
|
||||
hwVkid,
|
||||
Apple,
|
||||
none
|
||||
}
|
||||
public static class AccountInfo
|
||||
{
|
||||
public static string hwVkid = "vk.global.app";
|
||||
public static string hwPayType = "rustore.global.app";
|
||||
public static string googlePayType = "googleiab.global.app";
|
||||
}
|
||||
|
||||
|
||||
public class LoginInfo
|
||||
{
|
||||
@@ -34,6 +43,13 @@ namespace tysdk
|
||||
public Dictionary<string, string> bindInfo;
|
||||
}
|
||||
|
||||
public class ChangeLinkResult
|
||||
{
|
||||
public int code;
|
||||
public int userId;
|
||||
public string msg;
|
||||
}
|
||||
|
||||
public class LinkCheckInfo
|
||||
{
|
||||
public int code;
|
||||
@@ -91,6 +107,18 @@ namespace tysdk
|
||||
}
|
||||
#endif
|
||||
|
||||
// public List<SKUDetail> BaseReadSkuFromData(string productData)
|
||||
// {
|
||||
// var jsonObjList = JsonConvert.DeserializeObject<List<SKUDetail>>(productData);
|
||||
// products = jsonObjList;
|
||||
// return jsonObjList;
|
||||
// }
|
||||
// public List<SKUDetail> ReadSkuFromData(string productData, EAccoutType accountChannel)
|
||||
// {
|
||||
// var jsonObjList = JsonConvert.DeserializeObject<List<SKUDetail>>(productData);
|
||||
// products = jsonObjList;
|
||||
// return jsonObjList;
|
||||
// }
|
||||
}
|
||||
|
||||
#if UNITY_IOS
|
||||
@@ -115,30 +143,57 @@ namespace tysdk
|
||||
}
|
||||
}
|
||||
#else
|
||||
public class SKUDetail
|
||||
{
|
||||
public string description;
|
||||
public string ourProductId;
|
||||
public string price;
|
||||
public string price_amount_micros;
|
||||
public string price_currency_code;
|
||||
public string productId;
|
||||
public string title;
|
||||
public string type;
|
||||
|
||||
public override string ToString()
|
||||
// 注意 这个值支持Rustore
|
||||
// #if UNITY_RUSTORE_ANDROID
|
||||
public class SKUDetail
|
||||
{
|
||||
return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
public string description;
|
||||
public string ourProductId;
|
||||
public string productId;
|
||||
public string price;
|
||||
public string title;
|
||||
public string currency;
|
||||
public string price_amount; //- 具体的值
|
||||
//- 防止编译报错
|
||||
public string price_currency_code => currency;
|
||||
|
||||
public string ProdPriceStr => $"₽{ProdPrice}";
|
||||
public float ProdPrice => float.Parse(price) / 100 ;
|
||||
public string ProdID => ourProductId;
|
||||
public string ProdKey => productId;
|
||||
|
||||
public override string ToString()
|
||||
{
|
||||
return JsonConvert.SerializeObject(this);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public string ProdPriceStr => price;
|
||||
public float ProdPrice => float.Parse(price_amount_micros) / 1000000;
|
||||
public string ProdID => ourProductId;
|
||||
public string ProdKey => productId;
|
||||
}
|
||||
// #else
|
||||
// public class SKUDetail
|
||||
// {
|
||||
// public string description;
|
||||
// public string ourProductId;
|
||||
// public string price;
|
||||
// [JsonProperty("price_amount_micros")]
|
||||
// public string price_amount_micros { get; set; }
|
||||
// public string price_currency_code;
|
||||
// public string productId;
|
||||
// public string title;
|
||||
// public string type;
|
||||
//
|
||||
// public override string ToString()
|
||||
// {
|
||||
// return Newtonsoft.Json.JsonConvert.SerializeObject(this);
|
||||
// }
|
||||
//
|
||||
// public string ProdPriceStr => price;
|
||||
// public float ProdPrice => float.Parse(price_amount_micros) / 1000000;
|
||||
//
|
||||
// public string ProdID => ourProductId;
|
||||
// public string ProdKey => productId;
|
||||
// }
|
||||
// #endif
|
||||
#endif
|
||||
|
||||
|
||||
public class ATTInfo
|
||||
{
|
||||
public bool isAccepted;
|
||||
|
||||
@@ -1,445 +1,447 @@
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using UnityEngine;
|
||||
|
||||
namespace tysdk
|
||||
{
|
||||
|
||||
public static class UnityBridgeFunc
|
||||
{
|
||||
|
||||
#if UNITY_EDITOR
|
||||
//初始化sdk
|
||||
public static void InitSDK(){}
|
||||
|
||||
//更新登录支付域名
|
||||
public static void UnityResetServerUrl(string url){}
|
||||
|
||||
//登录
|
||||
public static void UnityLoginByTokenFun(string token){}
|
||||
|
||||
public static string UnityLoginBySnsInfoFun() => null;
|
||||
|
||||
public static void UnityLogin(EAccoutType accoutType){}
|
||||
|
||||
public static void CleanLinkTmpSnsInfo() { }
|
||||
|
||||
|
||||
public static void LinkAccount(EAccoutType accoutType){}
|
||||
public static void UnlinkAccount(EAccoutType accoutType){}
|
||||
public static void LinkCheck(EAccoutType accoutType){}
|
||||
|
||||
public static void UnityGetIdentityFun(string type){}
|
||||
|
||||
public static void UnityLogOutByChannel(EAccoutType accoutType){}
|
||||
//支付new
|
||||
public static void UnityKnowNew(string productId, string productPrice, string productName,
|
||||
string productCount, string prodorderId, string appInfo, string pType) { }
|
||||
|
||||
//支付
|
||||
|
||||
public static void UnityKnow(String productId, String productName, String productCount,
|
||||
String prodorderId, String appInfo) {}
|
||||
|
||||
//获取商品列表
|
||||
public static void GetSKUList() { }
|
||||
|
||||
//打点
|
||||
public static void SetGaUserInfo(string userId){}
|
||||
|
||||
|
||||
public static void SetGaCommonInfo(string SetGaCommonInfo){}
|
||||
|
||||
public static void GAReportParams(int type, string eventstr, string paramstr){}
|
||||
|
||||
//ATT
|
||||
public static void RequestATT(){}
|
||||
|
||||
public static int GetATT() {return 1;}
|
||||
|
||||
public static void Review() { }
|
||||
|
||||
public static void FBShareLink(string title, string content, string url) { }
|
||||
public static void MessengerShareLink(string title, string content, string url) { }
|
||||
|
||||
|
||||
|
||||
#elif UNITY_ANDROID
|
||||
|
||||
private static string SDK_CLASS = "com.unity3d.player.SDKManager";
|
||||
|
||||
//初始化sdk
|
||||
public static void InitSDK(){
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
using(var activityCls = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
|
||||
{
|
||||
var activity = activityCls.GetStatic<AndroidJavaObject>("currentActivity");
|
||||
sdkManager.CallStatic("InitSDK", activity);
|
||||
}
|
||||
}
|
||||
}
|
||||
//更新登录支付域名
|
||||
public static void UnityResetServerUrl(string url)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityResetServerUrl", url);
|
||||
}
|
||||
}
|
||||
|
||||
//登录
|
||||
public static void UnityLoginByTokenFun(string token)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityLoginByTokenFun", token);
|
||||
}
|
||||
}
|
||||
|
||||
public static String UnityLoginBySnsInfoFun()
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
return sdkManager.CallStatic<string>("UnityLoginBySnsInfo");
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnityLogin(EAccoutType accoutType)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityLogin", accoutType.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnityGetIdentityFun(string type)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityGetIdentityFun", type);
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnityLogOutByChannel(EAccoutType accoutType)
|
||||
{
|
||||
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityLogOutByChannel", accoutType.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
public static void LinkAccount(EAccoutType accoutType)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
string userId = TYSdkFacade.TYAccountInfo.strUserId;
|
||||
sdkManager.CallStatic("LinkAccount", accoutType.ToString(), userId);
|
||||
}
|
||||
}
|
||||
|
||||
public static void CleanLinkTmpSnsInfo(){
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
using(var activityCls = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
|
||||
{
|
||||
sdkManager.CallStatic("CleanLinkTmpSnsInfo");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnlinkAccount(EAccoutType accoutType)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnlinkAccount", accoutType.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
public static void LinkCheck(EAccoutType accoutType)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("LinkCheck", accoutType.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
//支付new
|
||||
public static void UnityKnowNew(string productId, string productPrice, string productName,
|
||||
string productCount, string prodorderId, string appInfo,string pType)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityKnowNew", productId, productPrice, productName,
|
||||
productCount, prodorderId, appInfo,pType);
|
||||
}
|
||||
}
|
||||
|
||||
//支付
|
||||
|
||||
public static void UnityKnow(String productId, String productName, String productCount, String prodorderId, String appInfo)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityKnow", productId, productName, productCount, prodorderId, appInfo);
|
||||
}
|
||||
}
|
||||
|
||||
//获取商品列表
|
||||
public static void GetSKUList()
|
||||
{
|
||||
UnityEngine.Debug.Log("UnityBridgeFunc.GetSKUList()");
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("thirdExtend");
|
||||
}
|
||||
}
|
||||
|
||||
//打点
|
||||
public static void SetGaUserInfo(string userId)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("SetGaUserInfo", userId);
|
||||
}
|
||||
}
|
||||
|
||||
public static void SetGaCommonInfo(string SetGaCommonInfo)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("SetGaCommonInfo", SetGaCommonInfo);
|
||||
}
|
||||
}
|
||||
|
||||
public static void GAReportParams(int type, string eventstr, string paramstr)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("GAReportParams", type, eventstr, paramstr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//ATT
|
||||
public static void RequestATT(){}
|
||||
|
||||
public static int GetATT() {return 1;}
|
||||
|
||||
public static void Review()
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("Review");
|
||||
}
|
||||
}
|
||||
|
||||
public static void FBShareLink(string title, string content, string url)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("FBShareLink", title, content, url);
|
||||
}
|
||||
}
|
||||
|
||||
public static void MessengerShareLink(string title, string content, string url)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("MessengerShareLink", title, content, url);
|
||||
}
|
||||
}
|
||||
|
||||
#elif UNITY_IOS
|
||||
|
||||
//更新登录支付域名
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityResetServerUrl(string url);
|
||||
|
||||
//登录
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginByTokenFun(string token);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern IntPtr UnityLoginBySnsInfo();
|
||||
|
||||
public static string UnityLoginBySnsInfoFun()
|
||||
{
|
||||
IntPtr ptr = UnityLoginBySnsInfo();
|
||||
|
||||
if (ptr == IntPtr.Zero)
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
// Convert C string to C# string
|
||||
string result = System.Runtime.InteropServices.Marshal.PtrToStringAnsi(ptr);
|
||||
return result ?? string.Empty;
|
||||
}
|
||||
|
||||
public static void UnityLogin(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
UnityLoginByGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
UnityLoginByFacebook();
|
||||
break;
|
||||
case EAccoutType.hwGuest:
|
||||
UnityLoginByGuest();
|
||||
break;
|
||||
case EAccoutType.Apple:
|
||||
UnityLoginByApple();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginByGuest();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginByGoogle();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginByFacebook();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginByApple();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityGetIdentityFun(string type);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginOut();
|
||||
|
||||
public static void UnityLogOutByChannel(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
UnityLogoutGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
UnityLogoutFacebook();
|
||||
break;
|
||||
case EAccoutType.hwGuest:
|
||||
UnityLogoutGuest();
|
||||
break;
|
||||
case EAccoutType.Apple:
|
||||
UnityLogoutApple();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutGoogle();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutFacebook();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutGuest();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutApple();
|
||||
|
||||
public static void LinkAccount(EAccoutType accoutType)
|
||||
{
|
||||
var userId = TYSdkFacade.TYAccountInfo.userId;
|
||||
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
LinkGoogle(userId);
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
LinkFacebook(userId);
|
||||
break;
|
||||
case EAccoutType.Apple:
|
||||
LinkApple(userId);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnlinkAccount(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
UnlinkGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
UnlinkFacebook();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("__Internal")] private static extern void LinkGoogle(int userId);
|
||||
[DllImport("__Internal")] private static extern void UnlinkGoogle();
|
||||
[DllImport("__Internal")] private static extern void LinkFacebook(int userId);
|
||||
[DllImport("__Internal")] private static extern void UnlinkFacebook();
|
||||
[DllImport("__Internal")] private static extern void LinkApple(int userId);
|
||||
[DllImport("__Internal")] private static extern void UnlinkApple();
|
||||
|
||||
public static void LinkCheck(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
IsLinkedGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
IsLinkedFacebook();
|
||||
break;
|
||||
|
||||
case EAccoutType.Apple:
|
||||
IsLinkedApple();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("__Internal")] public static extern void CleanLinkTmpSnsInfo();
|
||||
|
||||
[DllImport("__Internal")] private static extern void IsLinkedGoogle();
|
||||
[DllImport("__Internal")] private static extern void IsLinkedFacebook();
|
||||
[DllImport("__Internal")] private static extern void IsLinkedApple();
|
||||
|
||||
|
||||
//支付
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityKnow(string userId, string productId, string productPrice, string productName,
|
||||
string productCount, string prodorderId, string appInfo);
|
||||
|
||||
//获取商品列表
|
||||
[DllImport("__Internal")]
|
||||
public static extern void GetSKUList();
|
||||
|
||||
//打点
|
||||
[DllImport("__Internal")]
|
||||
public static extern void SetGaUserInfo(string userId);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void SetGaCommonInfo(string SetGaCommonInfo);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void GAReportParams(int type, string eventstr, string paramstr);
|
||||
|
||||
//ATT
|
||||
[DllImport("__Internal")]
|
||||
public static extern void RequestATT();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern int GetATT();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void FBShareLink(string title, string content, string url);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void MessengerShareLink(string title, string content, string url);
|
||||
|
||||
#endif
|
||||
}
|
||||
}
|
||||
using System;
|
||||
using System.Runtime.InteropServices;
|
||||
using UnityEngine;
|
||||
|
||||
namespace tysdk
|
||||
{
|
||||
|
||||
public static class UnityBridgeFunc
|
||||
{
|
||||
|
||||
#if UNITY_EDITOR
|
||||
//初始化sdk
|
||||
public static void InitSDK(){}
|
||||
|
||||
//更新登录支付域名
|
||||
public static void UnityResetServerUrl(string url){}
|
||||
|
||||
//登录
|
||||
public static void UnityLoginByTokenFun(string token){}
|
||||
|
||||
public static string UnityLoginBySnsInfoFun() => null;
|
||||
|
||||
public static void UnityLogin(EAccoutType accoutType){}
|
||||
|
||||
public static void CleanLinkTmpSnsInfo() { }
|
||||
|
||||
|
||||
public static void LinkAccount(EAccoutType accoutType){}
|
||||
public static void ChangeLinkAccount(EAccoutType accoutType, int oldUserId, int newUserId){}
|
||||
public static void LinkCheck(EAccoutType accoutType){}
|
||||
|
||||
public static void UnityGetIdentityFun(string type){}
|
||||
|
||||
public static void UnityLogOutByChannel(EAccoutType accoutType){}
|
||||
//支付new
|
||||
public static void UnityKnowNew(string productId, string productPrice, string productName,
|
||||
string productCount, string prodorderId, string appInfo, string pType) { }
|
||||
|
||||
//支付
|
||||
|
||||
public static void UnityKnow(String productId, String productName, String productCount,
|
||||
String prodorderId, String appInfo) {}
|
||||
|
||||
//获取商品列表
|
||||
public static void GetSKUList() { }
|
||||
|
||||
//打点
|
||||
public static void SetGaUserInfo(string userId){}
|
||||
|
||||
|
||||
public static void SetGaCommonInfo(string SetGaCommonInfo){}
|
||||
|
||||
public static void GAReportParams(int type, string eventstr, string paramstr){}
|
||||
|
||||
//ATT
|
||||
public static void RequestATT(){}
|
||||
|
||||
public static int GetATT() {return 1;}
|
||||
|
||||
public static void Review() { }
|
||||
|
||||
public static void FBShareLink(string title, string content, string url) { }
|
||||
public static void MessengerShareLink(string title, string content, string url) { }
|
||||
|
||||
|
||||
|
||||
#elif UNITY_ANDROID
|
||||
|
||||
private static string EAccountTypeToStr(EAccoutType accoutType)
|
||||
{
|
||||
return accoutType == EAccoutType.hwVkid ? AccountInfo.hwVkid : accoutType.ToString();
|
||||
}
|
||||
|
||||
private static string SDK_CLASS = "com.unity3d.player.SDKManager";
|
||||
|
||||
//初始化sdk
|
||||
public static void InitSDK(){
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
using(var activityCls = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
|
||||
{
|
||||
var activity = activityCls.GetStatic<AndroidJavaObject>("currentActivity");
|
||||
sdkManager.CallStatic("InitSDK", activity);
|
||||
}
|
||||
}
|
||||
}
|
||||
//更新登录支付域名
|
||||
public static void UnityResetServerUrl(string url)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityResetServerUrl", url);
|
||||
}
|
||||
}
|
||||
|
||||
//登录
|
||||
public static void UnityLoginByTokenFun(string token)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityLoginByTokenFun", token);
|
||||
}
|
||||
}
|
||||
|
||||
public static String UnityLoginBySnsInfoFun()
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
return sdkManager.CallStatic<string>("UnityLoginBySnsInfo");
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnityLogin(EAccoutType accoutType)
|
||||
{
|
||||
var accountInfo = EAccountTypeToStr(accoutType);
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
Debug.Log($"UnityLogin -> {accountInfo}");
|
||||
sdkManager.CallStatic("UnityLogin",accountInfo);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static void UnityGetIdentityFun(string type)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityGetIdentityFun", type);
|
||||
}
|
||||
}
|
||||
|
||||
public static void UnityLogOutByChannel(EAccoutType accoutType)
|
||||
{
|
||||
|
||||
var accountInfo = EAccountTypeToStr(accoutType);
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityLogOutByChannel", accountInfo);
|
||||
}
|
||||
}
|
||||
|
||||
public static void LinkAccount(EAccoutType accoutType)
|
||||
{
|
||||
string userId = TYSdkFacade.TYAccountInfo.strUserId;
|
||||
using (var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
var accountInfo = EAccountTypeToStr(accoutType);
|
||||
sdkManager.CallStatic("LinkAccount",accountInfo,userId);
|
||||
}
|
||||
}
|
||||
|
||||
public static void CleanLinkTmpSnsInfo(){
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
using(var activityCls = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
|
||||
{
|
||||
sdkManager.CallStatic("CleanLinkTmpSnsInfo");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void ChangeLinkAccount(EAccoutType accoutType, int oldUserId, int newUserId)
|
||||
{
|
||||
var accountInfo = EAccountTypeToStr(accoutType);
|
||||
using (var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("ChangeLinkAccount", accountInfo, oldUserId, newUserId);
|
||||
}
|
||||
}
|
||||
|
||||
public static void LinkCheck(EAccoutType accoutType)
|
||||
{
|
||||
var accountInfo = EAccountTypeToStr(accoutType);
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("LinkCheck",accountInfo);
|
||||
}
|
||||
}
|
||||
|
||||
//支付new
|
||||
public static void UnityKnowNew(string productId, string productPrice, string productName,
|
||||
string productCount, string prodorderId, string appInfo,string pType)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityKnowNew", productId, productPrice, productName,
|
||||
productCount, prodorderId, appInfo,pType);
|
||||
}
|
||||
}
|
||||
|
||||
//支付
|
||||
|
||||
public static void UnityKnow(String productId, String productName, String productCount, String prodorderId, String appInfo)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("UnityKnow", productId, productName, productCount, prodorderId, appInfo);
|
||||
}
|
||||
}
|
||||
|
||||
//获取商品列表
|
||||
public static void GetSKUList()
|
||||
{
|
||||
UnityEngine.Debug.Log("UnityBridgeFunc.GetSKUList()");
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("thirdExtend");
|
||||
}
|
||||
}
|
||||
|
||||
//打点
|
||||
public static void SetGaUserInfo(string userId)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("SetGaUserInfo", userId);
|
||||
}
|
||||
}
|
||||
|
||||
public static void SetGaCommonInfo(string SetGaCommonInfo)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("SetGaCommonInfo", SetGaCommonInfo);
|
||||
}
|
||||
}
|
||||
|
||||
public static void GAReportParams(int type, string eventstr, string paramstr)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("GAReportParams", type, eventstr, paramstr);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
//ATT
|
||||
public static void RequestATT(){}
|
||||
|
||||
public static int GetATT() {return 1;}
|
||||
|
||||
public static void Review()
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("Review");
|
||||
// sdkManager.CallStataic("RuStoreReview");
|
||||
}
|
||||
}
|
||||
|
||||
public static void FBShareLink(string title, string content, string url)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("FBShareLink", title, content, url);
|
||||
}
|
||||
}
|
||||
|
||||
public static void MessengerShareLink(string title, string content, string url)
|
||||
{
|
||||
using(var sdkManager = new AndroidJavaClass(SDK_CLASS))
|
||||
{
|
||||
sdkManager.CallStatic("MessengerShareLink", title, content, url);
|
||||
}
|
||||
}
|
||||
|
||||
#elif UNITY_IOS
|
||||
|
||||
//更新登录支付域名
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityResetServerUrl(string url);
|
||||
|
||||
//登录
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginByTokenFun(string token);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern IntPtr UnityLoginBySnsInfo();
|
||||
|
||||
public static string UnityLoginBySnsInfoFun()
|
||||
{
|
||||
IntPtr ptr = UnityLoginBySnsInfo();
|
||||
|
||||
if (ptr == IntPtr.Zero)
|
||||
{
|
||||
return string.Empty;
|
||||
}
|
||||
|
||||
// Convert C string to C# string
|
||||
string result = System.Runtime.InteropServices.Marshal.PtrToStringAnsi(ptr);
|
||||
return result ?? string.Empty;
|
||||
}
|
||||
|
||||
public static void UnityLogin(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
UnityLoginByGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
UnityLoginByFacebook();
|
||||
break;
|
||||
case EAccoutType.hwGuest:
|
||||
UnityLoginByGuest();
|
||||
break;
|
||||
case EAccoutType.Apple:
|
||||
UnityLoginByApple();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLoginByGuest();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLoginByGoogle();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLoginByFacebook();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLoginByApple();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityGetIdentityFun(string type);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityLoginOut();
|
||||
|
||||
public static void UnityLogOutByChannel(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
UnityLogoutGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
UnityLogoutFacebook();
|
||||
break;
|
||||
case EAccoutType.hwGuest:
|
||||
UnityLogoutGuest();
|
||||
break;
|
||||
case EAccoutType.Apple:
|
||||
UnityLogoutApple();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutGoogle();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutFacebook();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutGuest();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
private static extern void UnityLogoutApple();
|
||||
|
||||
public static void LinkAccount(EAccoutType accoutType)
|
||||
{
|
||||
var userId = TYSdkFacade.TYAccountInfo.userId;
|
||||
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
LinkGoogle(userId);
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
LinkFacebook(userId);
|
||||
break;
|
||||
case EAccoutType.Apple:
|
||||
LinkApple(userId);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[DllImport("__Internal")] private static extern void LinkGoogle(int userId);
|
||||
[DllImport("__Internal")] private static extern void LinkFacebook(int userId);
|
||||
[DllImport("__Internal")] private static extern void LinkApple(int userId);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void ChangeLinkAccount(EAccoutType accoutType, int oldUserId, int newUserId);
|
||||
|
||||
public static void LinkCheck(EAccoutType accoutType)
|
||||
{
|
||||
switch (accoutType)
|
||||
{
|
||||
case EAccoutType.hwGoogle:
|
||||
IsLinkedGoogle();
|
||||
break;
|
||||
case EAccoutType.hwFacebook:
|
||||
IsLinkedFacebook();
|
||||
break;
|
||||
|
||||
case EAccoutType.Apple:
|
||||
IsLinkedApple();
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
[DllImport("__Internal")] public static extern void CleanLinkTmpSnsInfo();
|
||||
|
||||
[DllImport("__Internal")] private static extern void IsLinkedGoogle();
|
||||
[DllImport("__Internal")] private static extern void IsLinkedFacebook();
|
||||
[DllImport("__Internal")] private static extern void IsLinkedApple();
|
||||
|
||||
|
||||
//支付
|
||||
[DllImport("__Internal")]
|
||||
public static extern void UnityKnow(string userId, string productId, string productPrice, string productName,
|
||||
string productCount, string prodorderId, string appInfo);
|
||||
|
||||
//获取商品列表
|
||||
[DllImport("__Internal")]
|
||||
public static extern void GetSKUList();
|
||||
|
||||
//打点
|
||||
[DllImport("__Internal")]
|
||||
public static extern void SetGaUserInfo(string userId);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void SetGaCommonInfo(string SetGaCommonInfo);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void GAReportParams(int type, string eventstr, string paramstr);
|
||||
|
||||
//ATT
|
||||
[DllImport("__Internal")]
|
||||
public static extern void RequestATT();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern int GetATT();
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void FBShareLink(string title, string content, string url);
|
||||
|
||||
[DllImport("__Internal")]
|
||||
public static extern void MessengerShareLink(string title, string content, string url);
|
||||
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ PlayerSettings:
|
||||
tvOS: 0
|
||||
overrideDefaultApplicationIdentifier: 1
|
||||
AndroidBundleVersionCode: 1
|
||||
AndroidMinSdkVersion: 25
|
||||
AndroidMinSdkVersion: 26
|
||||
AndroidTargetSdkVersion: 35
|
||||
AndroidPreferredInstallLocation: 1
|
||||
aotOptions:
|
||||
|
||||
Reference in New Issue
Block a user