Merge remote-tracking branch 'origin/dev_cyp' into dev_nonearth
# Conflicts: # Assets/Resources/UI/language.json
This commit is contained in:
commit
eece0cffa5
157
Assets/BannerController.cs
Normal file
157
Assets/BannerController.cs
Normal file
@ -0,0 +1,157 @@
|
||||
using Assets.Scripts;
|
||||
using Assets.Scripts.Apis.Models;
|
||||
using DG.Tweening;
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
using UnityEngine.UI;
|
||||
|
||||
public class BannerController : MonoBehaviour
|
||||
{
|
||||
// Start is called before the first frame update
|
||||
private List<CanvasGroup> itemList;
|
||||
private List<Vector3> standardPositions;
|
||||
private List<MapRouteAreaItem> list;
|
||||
private int currentIndex = 1;
|
||||
void Awake()
|
||||
{
|
||||
itemList = new List<CanvasGroup>
|
||||
{
|
||||
transform.Find("1").GetComponent<CanvasGroup>(),
|
||||
transform.Find("2").GetComponent<CanvasGroup>(),
|
||||
transform.Find("3").GetComponent<CanvasGroup>()
|
||||
};
|
||||
standardPositions = new List<Vector3>
|
||||
{
|
||||
transform.Find("1").localPosition,transform.Find("2").localPosition,transform.Find("3").localPosition
|
||||
};
|
||||
|
||||
Debug.Log(standardPositions[0]);
|
||||
Debug.Log(standardPositions[1]);
|
||||
Debug.Log(standardPositions[2]);
|
||||
}
|
||||
private void Start()
|
||||
{
|
||||
GetList();
|
||||
}
|
||||
async void GetList()
|
||||
{
|
||||
var res = await ConfigHelper.mapApi.GetRecommendAreaList();
|
||||
if (res.result)
|
||||
{
|
||||
if (res.data.Count >= 3)
|
||||
{
|
||||
Initial(res.data);
|
||||
gameObject.SetActive(true);
|
||||
}
|
||||
else
|
||||
{
|
||||
gameObject.SetActive(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void Initial(List<MapRouteAreaItem> list)
|
||||
{
|
||||
int index = 0;
|
||||
foreach (CanvasGroup c in itemList)
|
||||
{
|
||||
var area = list[index++];
|
||||
c.GetComponent<NewRouteItemController>().Initial(area);
|
||||
if (c.alpha != 1)
|
||||
{
|
||||
c.GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
if (c.transform.localPosition.x < 0)
|
||||
{
|
||||
c.GetComponent<Button>().onClick.AddListener(Right);
|
||||
}
|
||||
else
|
||||
{
|
||||
c.GetComponent<Button>().onClick.AddListener(Left);
|
||||
}
|
||||
}
|
||||
}
|
||||
currentIndex = 1;
|
||||
this.list = list;
|
||||
}
|
||||
private void Right()
|
||||
{
|
||||
int center = GetCenterIndex(),
|
||||
left = GetSideIndex(true),
|
||||
right = GetSideIndex(false);
|
||||
if (center == -1 || left == -1 || right == -1) return;
|
||||
itemList[center].DOFade(0.5f, 0.5f);
|
||||
itemList[center].GetComponent<RectTransform>().DOScale(Vector3.one * 0.8f, 0.5f);
|
||||
itemList[center].GetComponent<RectTransform>().DOLocalMoveX(43, 0.5f);
|
||||
itemList[right].GetComponent<RectTransform>().DOLocalMoveX(-43, 0.5f);
|
||||
var area = list[((currentIndex++) + list.Count) % list.Count];
|
||||
itemList[right].GetComponent<NewRouteItemController>().Initial(area);
|
||||
if (currentIndex >= list.Count) currentIndex = 0;
|
||||
itemList[left].DOFade(1, 0.5f);
|
||||
itemList[left].GetComponent<RectTransform>().DOScale(Vector3.one, 0.5f);
|
||||
itemList[left].GetComponent<RectTransform>().DOLocalMoveX(0, 0.5f);
|
||||
itemList[left].transform.SetAsLastSibling();
|
||||
//事件改变
|
||||
itemList[left].GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
itemList[left].GetComponent<Button>().onClick.AddListener(()=>
|
||||
{
|
||||
if (itemList[left].transform.localPosition.x == 0)
|
||||
{
|
||||
UIManager.ShowNewRouteDetailPanel(itemList[left].GetComponent<NewRouteItemController>().Area);
|
||||
}
|
||||
});
|
||||
itemList[center].GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
itemList[center].GetComponent<Button>().onClick.AddListener(Left);
|
||||
itemList[right].GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
itemList[right].GetComponent<Button>().onClick.AddListener(Right);
|
||||
}
|
||||
|
||||
private void Left()
|
||||
{
|
||||
int center = GetCenterIndex(),
|
||||
left = GetSideIndex(true),
|
||||
right = GetSideIndex(false);
|
||||
if (center == -1 || left == -1 || right == -1) return;
|
||||
itemList[center].DOFade(0.5f, 0.5f);
|
||||
itemList[center].GetComponent<RectTransform>().DOScale(Vector3.one*0.8f, 0.5f);
|
||||
itemList[center].GetComponent<RectTransform>().DOLocalMoveX(-43, 0.5f);
|
||||
itemList[left].GetComponent<RectTransform>().DOLocalMoveX(43, 0.5f);
|
||||
var area = list[((currentIndex--) + list.Count) % list.Count];
|
||||
var centerArea = list[currentIndex + 1];
|
||||
itemList[left].GetComponent<NewRouteItemController>().Initial(area);
|
||||
if (currentIndex < 0) currentIndex = list.Count - 1;
|
||||
itemList[right].DOFade(1, 0.5f);
|
||||
itemList[right].GetComponent<RectTransform>().DOScale(Vector3.one, 0.5f);
|
||||
itemList[right].GetComponent<RectTransform>().DOLocalMoveX(0, 0.5f);
|
||||
itemList[right].transform.SetAsLastSibling();
|
||||
//事件改变
|
||||
itemList[right].GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
itemList[right].GetComponent<Button>().onClick.AddListener(() =>
|
||||
{
|
||||
if (itemList[right].transform.localPosition.x == 0)
|
||||
{
|
||||
UIManager.ShowNewRouteDetailPanel(itemList[right].GetComponent<NewRouteItemController>().Area);
|
||||
}
|
||||
});
|
||||
itemList[center].GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
itemList[center].GetComponent<Button>().onClick.AddListener(Right);
|
||||
itemList[left].GetComponent<Button>().onClick.RemoveAllListeners();
|
||||
itemList[left].GetComponent<Button>().onClick.AddListener(Left);
|
||||
}
|
||||
|
||||
int GetCenterIndex()
|
||||
{
|
||||
return itemList.FindIndex(x => x.transform.localPosition.x == 0);
|
||||
}
|
||||
int GetSideIndex(bool left)
|
||||
{
|
||||
return itemList.FindIndex(x => left ? x.transform.localPosition.x < 0 : x.transform.localPosition.x > 0);
|
||||
}
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
11
Assets/BannerController.cs.meta
Normal file
11
Assets/BannerController.cs.meta
Normal file
@ -0,0 +1,11 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 99085319355aa0f44a5db27b26f6ec95
|
||||
MonoImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/Editor/UniWebView.meta
Normal file
8
Assets/Editor/UniWebView.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cbfad999c612c244f9a6c609a97122ca
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
20
Assets/Editor/UniWebView/settings.asset
Normal file
20
Assets/Editor/UniWebView/settings.asset
Normal file
@ -0,0 +1,20 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!114 &11400000
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_CorrespondingSourceObject: {fileID: 0}
|
||||
m_PrefabInstance: {fileID: 0}
|
||||
m_PrefabAsset: {fileID: 0}
|
||||
m_GameObject: {fileID: 0}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: a403a09e241a0480a957591ea60fb785, type: 3}
|
||||
m_Name: settings
|
||||
m_EditorClassIdentifier:
|
||||
usesCleartextTraffic: 1
|
||||
writeExternalStorage: 0
|
||||
accessFineLocation: 0
|
||||
addsKotlin: 1
|
||||
addsAndroidBrowser: 1
|
||||
enableJetifier: 1
|
||||
8
Assets/Editor/UniWebView/settings.asset.meta
Normal file
8
Assets/Editor/UniWebView/settings.asset.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 580a44b4404956543a86c106381eae18
|
||||
NativeFormatImporter:
|
||||
externalObjects: {}
|
||||
mainObjectFileID: 11400000
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -28,7 +28,6 @@ public static class XCodePostProcessBuild
|
||||
SetAssociatedDomains(projectPath, "wx.powerfun.com.cn");
|
||||
Assets.NativeLocale.AddLocalizedStringsIOS(pathToBuiltProject, Path.Combine(Application.dataPath, "Editor/Locale"));
|
||||
}
|
||||
|
||||
private static void SetFrameworksAndBuildSettings(string path)
|
||||
{
|
||||
PBXProject proj = new PBXProject();
|
||||
@ -46,6 +45,10 @@ public static class XCodePostProcessBuild
|
||||
proj.AddFrameworkToProject(target, csAddFrameworks[i], false);
|
||||
}
|
||||
|
||||
//苹果登录配置项
|
||||
//proj.AddCapability(target, PBXCapabilityType.SignInWithApple);
|
||||
proj.AddFrameworkToProject(proj.GetUnityFrameworkTargetGuid(), "AuthenticationServices.framework", false);
|
||||
|
||||
File.WriteAllText(path, proj.WriteToString());
|
||||
}
|
||||
|
||||
@ -98,7 +101,8 @@ public static class XCodePostProcessBuild
|
||||
|
||||
var entitlements = new ProjectCapabilityManager(pbxProjectPath, entitlementsFileName, targetName);
|
||||
entitlements.AddAssociatedDomains(new string[] { "applinks:" + domainUrl });
|
||||
|
||||
//苹果登录
|
||||
entitlements.AddSignInWithApple();
|
||||
entitlements.WriteToFile();
|
||||
}
|
||||
|
||||
|
||||
8
Assets/ExternalDependencyManager.meta
Normal file
8
Assets/ExternalDependencyManager.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e076935cb7a13e942a62cc26cfd53401
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/ExternalDependencyManager/Editor.meta
Normal file
8
Assets/ExternalDependencyManager/Editor.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 00a558accb32e4d4c98b416ab890ed1b
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@ -0,0 +1,37 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bb6999c8a5ce4ba99688ec579babe5b7
|
||||
labels:
|
||||
- gvh
|
||||
- gvh_targets-editor
|
||||
- gvh_version-1.2.135.0
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK.meta
Normal file
8
Assets/FacebookSDK.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e35dd3967d7d19e4daab702656eb05dc
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Examples.meta
Normal file
8
Assets/FacebookSDK/Examples.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f015a0243569fdd499d97c148a25456c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/AccessTokenMenu.unity
Normal file
212
Assets/FacebookSDK/Examples/AccessTokenMenu.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: AccessTokenMenu
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 4cc408e158eec46b28b93a44fc8819ff, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/AccessTokenMenu.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/AccessTokenMenu.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 67cb5b2387b8e4ec9b2fa69ad9510e9b
|
||||
timeCreated: 1447720184
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/AppEvents.unity
Normal file
212
Assets/FacebookSDK/Examples/AppEvents.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: AppEvents
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: e3c0dd81ff77c4c30834810815c69f6d, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/AppEvents.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/AppEvents.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 68ab940fa15e34433bff18301686b080
|
||||
timeCreated: 1434663633
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/AppLinks.unity
Normal file
212
Assets/FacebookSDK/Examples/AppLinks.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: AppLinks
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: f9f0b7257fa054227be6e26bf1f6b339, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/AppLinks.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/AppLinks.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4ac12dfde6570493291366d0ab3eb20d
|
||||
timeCreated: 1434663633
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/AppRequests.unity
Normal file
212
Assets/FacebookSDK/Examples/AppRequests.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: AppRequests
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 3b4c675f81a254b87adc8ad01006c580, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/AppRequests.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/AppRequests.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c2250c9c5cf00425384401321f8dffb4
|
||||
timeCreated: 1434135388
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/DialogShare.unity
Normal file
212
Assets/FacebookSDK/Examples/DialogShare.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: DialogShare
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: e93c4155902d3496399630ee494eab6b, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/DialogShare.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/DialogShare.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 190c345841ecc464e9a122f04369757e
|
||||
timeCreated: 1434132966
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/GraphRequest.unity
Normal file
212
Assets/FacebookSDK/Examples/GraphRequest.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: GraphRequest
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 23c3cb06c2209474e9a8441e2712d5d2, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/GraphRequest.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/GraphRequest.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 444ae7ddf432b457a97bfe42021075e3
|
||||
timeCreated: 1434488369
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/LogView.unity
Normal file
212
Assets/FacebookSDK/Examples/LogView.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .211999997, g: .226999998, b: .259000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .114, g: .125, b: .133000001, a: 1}
|
||||
m_AmbientGroundColor: {r: .0469999984, g: .0430000015, b: .0350000001, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 0
|
||||
m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 0
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 1
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 2
|
||||
m_BakeResolution: 40
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 1
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666672
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &17281797
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 17281802}
|
||||
- 20: {fileID: 17281801}
|
||||
- 92: {fileID: 17281800}
|
||||
- 124: {fileID: 17281799}
|
||||
- 81: {fileID: 17281798}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &17281798
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &17281799
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &17281800
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &17281801
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 2
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 5
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &17281802
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 17281797}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1482271768
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1482271770}
|
||||
- 114: {fileID: 1482271769}
|
||||
m_Layer: 0
|
||||
m_Name: LogView
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!114 &1482271769
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 910cbe16250cb4363b70464c39fc701a, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
--- !u!4 &1482271770
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1482271768}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
8
Assets/FacebookSDK/Examples/LogView.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/LogView.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c07ff0bf6bea74c2eb681ac0cae44265
|
||||
timeCreated: 1434143106
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/MainMenu.unity
Normal file
212
Assets/FacebookSDK/Examples/MainMenu.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .200000003, g: .200000003, b: .200000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .200000003, g: .200000003, b: .200000003, a: 1}
|
||||
m_AmbientGroundColor: {r: .200000003, g: .200000003, b: .200000003, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 3
|
||||
m_SkyboxMaterial: {fileID: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 1
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 0
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 1
|
||||
m_BakeResolution: 50
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 0
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666657
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &787078726
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 787078731}
|
||||
- 20: {fileID: 787078730}
|
||||
- 92: {fileID: 787078729}
|
||||
- 124: {fileID: 787078728}
|
||||
- 81: {fileID: 787078727}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &787078727
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &787078728
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &787078729
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &787078730
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 1
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 100
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &787078731
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1988862590
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1988862591}
|
||||
- 114: {fileID: 1988862593}
|
||||
m_Layer: 0
|
||||
m_Name: MainMenu
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &1988862591
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1988862590}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
--- !u!114 &1988862593
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1988862590}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 922e3ad8d88a146b3b392cd8c84edd6a, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
6
Assets/FacebookSDK/Examples/MainMenu.unity.meta
Normal file
6
Assets/FacebookSDK/Examples/MainMenu.unity.meta
Normal file
@ -0,0 +1,6 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7c38a8c9adc9d5c4b869612e4033ead8
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
212
Assets/FacebookSDK/Examples/Pay.unity
Normal file
212
Assets/FacebookSDK/Examples/Pay.unity
Normal file
@ -0,0 +1,212 @@
|
||||
%YAML 1.1
|
||||
%TAG !u! tag:unity3d.com,2011:
|
||||
--- !u!29 &1
|
||||
SceneSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PVSData:
|
||||
m_PVSObjectsArray: []
|
||||
m_PVSPortalsArray: []
|
||||
m_OcclusionBakeSettings:
|
||||
smallestOccluder: 5
|
||||
smallestHole: .25
|
||||
backfaceThreshold: 100
|
||||
--- !u!104 &2
|
||||
RenderSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 6
|
||||
m_Fog: 0
|
||||
m_FogColor: {r: .5, g: .5, b: .5, a: 1}
|
||||
m_FogMode: 3
|
||||
m_FogDensity: .00999999978
|
||||
m_LinearFogStart: 0
|
||||
m_LinearFogEnd: 300
|
||||
m_AmbientSkyColor: {r: .200000003, g: .200000003, b: .200000003, a: 1}
|
||||
m_AmbientEquatorColor: {r: .200000003, g: .200000003, b: .200000003, a: 1}
|
||||
m_AmbientGroundColor: {r: .200000003, g: .200000003, b: .200000003, a: 1}
|
||||
m_AmbientIntensity: 1
|
||||
m_AmbientMode: 3
|
||||
m_SkyboxMaterial: {fileID: 0}
|
||||
m_HaloStrength: .5
|
||||
m_FlareStrength: 1
|
||||
m_FlareFadeSpeed: 3
|
||||
m_HaloTexture: {fileID: 0}
|
||||
m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0}
|
||||
m_DefaultReflectionMode: 0
|
||||
m_DefaultReflectionResolution: 128
|
||||
m_ReflectionBounces: 1
|
||||
m_ReflectionIntensity: 1
|
||||
m_CustomReflection: {fileID: 0}
|
||||
m_Sun: {fileID: 0}
|
||||
--- !u!157 &4
|
||||
LightmapSettings:
|
||||
m_ObjectHideFlags: 0
|
||||
serializedVersion: 5
|
||||
m_GIWorkflowMode: 1
|
||||
m_LightmapsMode: 1
|
||||
m_GISettings:
|
||||
serializedVersion: 2
|
||||
m_BounceScale: 1
|
||||
m_IndirectOutputScale: 1
|
||||
m_AlbedoBoost: 1
|
||||
m_TemporalCoherenceThreshold: 1
|
||||
m_EnvironmentLightingMode: 0
|
||||
m_EnableBakedLightmaps: 1
|
||||
m_EnableRealtimeLightmaps: 0
|
||||
m_LightmapEditorSettings:
|
||||
serializedVersion: 3
|
||||
m_Resolution: 1
|
||||
m_BakeResolution: 50
|
||||
m_TextureWidth: 1024
|
||||
m_TextureHeight: 1024
|
||||
m_AOMaxDistance: 1
|
||||
m_Padding: 2
|
||||
m_CompAOExponent: 0
|
||||
m_LightmapParameters: {fileID: 0}
|
||||
m_TextureCompression: 0
|
||||
m_FinalGather: 0
|
||||
m_FinalGatherRayCount: 1024
|
||||
m_ReflectionCompression: 2
|
||||
m_LightmapSnapshot: {fileID: 0}
|
||||
m_RuntimeCPUUsage: 25
|
||||
--- !u!196 &5
|
||||
NavMeshSettings:
|
||||
serializedVersion: 2
|
||||
m_ObjectHideFlags: 0
|
||||
m_BuildSettings:
|
||||
serializedVersion: 2
|
||||
agentRadius: .5
|
||||
agentHeight: 2
|
||||
agentSlope: 45
|
||||
agentClimb: .400000006
|
||||
ledgeDropHeight: 0
|
||||
maxJumpAcrossDistance: 0
|
||||
accuratePlacement: 0
|
||||
minRegionArea: 2
|
||||
cellSize: .166666657
|
||||
manualCellSize: 0
|
||||
m_NavMeshData: {fileID: 0}
|
||||
--- !u!1 &787078726
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 787078731}
|
||||
- 20: {fileID: 787078730}
|
||||
- 92: {fileID: 787078729}
|
||||
- 124: {fileID: 787078728}
|
||||
- 81: {fileID: 787078727}
|
||||
m_Layer: 0
|
||||
m_Name: Main Camera
|
||||
m_TagString: MainCamera
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!81 &787078727
|
||||
AudioListener:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
--- !u!124 &787078728
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
--- !u!92 &787078729
|
||||
Behaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
--- !u!20 &787078730
|
||||
Camera:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_Enabled: 1
|
||||
serializedVersion: 2
|
||||
m_ClearFlags: 1
|
||||
m_BackGroundColor: {r: .23137255, g: .349019617, b: .596078455, a: 1}
|
||||
m_NormalizedViewPortRect:
|
||||
serializedVersion: 2
|
||||
x: 0
|
||||
y: 0
|
||||
width: 1
|
||||
height: 1
|
||||
near clip plane: .300000012
|
||||
far clip plane: 1000
|
||||
field of view: 60
|
||||
orthographic: 0
|
||||
orthographic size: 100
|
||||
m_Depth: -1
|
||||
m_CullingMask:
|
||||
serializedVersion: 2
|
||||
m_Bits: 4294967295
|
||||
m_RenderingPath: -1
|
||||
m_TargetTexture: {fileID: 0}
|
||||
m_TargetDisplay: 0
|
||||
m_TargetEye: 3
|
||||
m_HDR: 0
|
||||
m_OcclusionCulling: 1
|
||||
m_StereoConvergence: 10
|
||||
m_StereoSeparation: .0219999999
|
||||
m_StereoMirrorMode: 0
|
||||
--- !u!4 &787078731
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 787078726}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: 0, y: 1, z: -10}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 1
|
||||
--- !u!1 &1988862590
|
||||
GameObject:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
serializedVersion: 4
|
||||
m_Component:
|
||||
- 4: {fileID: 1988862591}
|
||||
- 114: {fileID: 1988862593}
|
||||
m_Layer: 0
|
||||
m_Name: Pay
|
||||
m_TagString: Untagged
|
||||
m_Icon: {fileID: 0}
|
||||
m_NavMeshLayer: 0
|
||||
m_StaticEditorFlags: 0
|
||||
m_IsActive: 1
|
||||
--- !u!4 &1988862591
|
||||
Transform:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1988862590}
|
||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||
m_LocalPosition: {x: -6.42004156, y: -8.74592876, z: -1.64325905}
|
||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
||||
m_Children: []
|
||||
m_Father: {fileID: 0}
|
||||
m_RootOrder: 0
|
||||
--- !u!114 &1988862593
|
||||
MonoBehaviour:
|
||||
m_ObjectHideFlags: 0
|
||||
m_PrefabParentObject: {fileID: 0}
|
||||
m_PrefabInternal: {fileID: 0}
|
||||
m_GameObject: {fileID: 1988862590}
|
||||
m_Enabled: 1
|
||||
m_EditorHideFlags: 0
|
||||
m_Script: {fileID: 11500000, guid: 7f08c9721703046ec883e57562184726, type: 3}
|
||||
m_Name:
|
||||
m_EditorClassIdentifier:
|
||||
8
Assets/FacebookSDK/Examples/Pay.unity.meta
Normal file
8
Assets/FacebookSDK/Examples/Pay.unity.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3ee189cdb21ea4bdb9d7022a0780c44c
|
||||
timeCreated: 1441927990
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Examples/Scripts.meta
Normal file
8
Assets/FacebookSDK/Examples/Scripts.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 69127c4c57aff0a4ebdbc24c5fd306ea
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
263
Assets/FacebookSDK/Examples/Scripts/ConsoleBase.cs
Normal file
263
Assets/FacebookSDK/Examples/Scripts/ConsoleBase.cs
Normal file
@ -0,0 +1,263 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
using UnityEngine.SceneManagement;
|
||||
|
||||
internal class ConsoleBase : MonoBehaviour
|
||||
{
|
||||
private const int DpiScalingFactor = 160;
|
||||
private static Stack<string> menuStack = new Stack<string>();
|
||||
private string status = "Ready";
|
||||
private string lastResponse = string.Empty;
|
||||
private Vector2 scrollPosition = Vector2.zero;
|
||||
|
||||
// DPI scaling
|
||||
private float? scaleFactor;
|
||||
private GUIStyle textStyle;
|
||||
private GUIStyle buttonStyle;
|
||||
private GUIStyle textInputStyle;
|
||||
private GUIStyle labelStyle;
|
||||
|
||||
protected static int ButtonHeight
|
||||
{
|
||||
get
|
||||
{
|
||||
return Constants.IsMobile ? 60 : 24;
|
||||
}
|
||||
}
|
||||
|
||||
protected static int MainWindowWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return Constants.IsMobile ? Screen.width - 30 : 700;
|
||||
}
|
||||
}
|
||||
|
||||
protected static int MainWindowFullWidth
|
||||
{
|
||||
get
|
||||
{
|
||||
return Constants.IsMobile ? Screen.width : 760;
|
||||
}
|
||||
}
|
||||
|
||||
protected static int MarginFix
|
||||
{
|
||||
get
|
||||
{
|
||||
return Constants.IsMobile ? 0 : 48;
|
||||
}
|
||||
}
|
||||
|
||||
protected static Stack<string> MenuStack
|
||||
{
|
||||
get
|
||||
{
|
||||
return ConsoleBase.menuStack;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
ConsoleBase.menuStack = value;
|
||||
}
|
||||
}
|
||||
|
||||
protected string Status
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.status;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
this.status = value;
|
||||
}
|
||||
}
|
||||
|
||||
protected Texture2D LastResponseTexture { get; set; }
|
||||
|
||||
protected string LastResponse
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.lastResponse;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
this.lastResponse = value;
|
||||
}
|
||||
}
|
||||
|
||||
protected Vector2 ScrollPosition
|
||||
{
|
||||
get
|
||||
{
|
||||
return this.scrollPosition;
|
||||
}
|
||||
|
||||
set
|
||||
{
|
||||
this.scrollPosition = value;
|
||||
}
|
||||
}
|
||||
|
||||
// Note we assume that these styles will be accessed from OnGUI otherwise the
|
||||
// unity APIs will fail.
|
||||
protected float ScaleFactor
|
||||
{
|
||||
get
|
||||
{
|
||||
if (!this.scaleFactor.HasValue)
|
||||
{
|
||||
this.scaleFactor = Screen.dpi / ConsoleBase.DpiScalingFactor;
|
||||
}
|
||||
|
||||
return this.scaleFactor.Value;
|
||||
}
|
||||
}
|
||||
|
||||
protected int FontSize
|
||||
{
|
||||
get
|
||||
{
|
||||
return (int)Math.Round(this.ScaleFactor * 16);
|
||||
}
|
||||
}
|
||||
|
||||
protected GUIStyle TextStyle
|
||||
{
|
||||
get
|
||||
{
|
||||
if (this.textStyle == null)
|
||||
{
|
||||
this.textStyle = new GUIStyle(GUI.skin.textArea);
|
||||
this.textStyle.alignment = TextAnchor.UpperLeft;
|
||||
this.textStyle.wordWrap = true;
|
||||
this.textStyle.padding = new RectOffset(10, 10, 10, 10);
|
||||
this.textStyle.stretchHeight = true;
|
||||
this.textStyle.stretchWidth = false;
|
||||
this.textStyle.fontSize = this.FontSize;
|
||||
}
|
||||
|
||||
return this.textStyle;
|
||||
}
|
||||
}
|
||||
|
||||
protected GUIStyle ButtonStyle
|
||||
{
|
||||
get
|
||||
{
|
||||
if (this.buttonStyle == null)
|
||||
{
|
||||
this.buttonStyle = new GUIStyle(GUI.skin.button);
|
||||
this.buttonStyle.fontSize = this.FontSize;
|
||||
}
|
||||
|
||||
return this.buttonStyle;
|
||||
}
|
||||
}
|
||||
|
||||
protected GUIStyle TextInputStyle
|
||||
{
|
||||
get
|
||||
{
|
||||
if (this.textInputStyle == null)
|
||||
{
|
||||
this.textInputStyle = new GUIStyle(GUI.skin.textField);
|
||||
this.textInputStyle.fontSize = this.FontSize;
|
||||
}
|
||||
|
||||
return this.textInputStyle;
|
||||
}
|
||||
}
|
||||
|
||||
protected GUIStyle LabelStyle
|
||||
{
|
||||
get
|
||||
{
|
||||
if (this.labelStyle == null)
|
||||
{
|
||||
this.labelStyle = new GUIStyle(GUI.skin.label);
|
||||
this.labelStyle.fontSize = this.FontSize;
|
||||
}
|
||||
|
||||
return this.labelStyle;
|
||||
}
|
||||
}
|
||||
|
||||
protected virtual void Awake()
|
||||
{
|
||||
// Limit the framerate to 60 to keep device from burning through cpu
|
||||
Application.targetFrameRate = 60;
|
||||
}
|
||||
|
||||
protected bool Button(string label)
|
||||
{
|
||||
return GUILayout.Button(
|
||||
label,
|
||||
this.ButtonStyle,
|
||||
GUILayout.MinHeight(ConsoleBase.ButtonHeight * this.ScaleFactor),
|
||||
GUILayout.MaxWidth(ConsoleBase.MainWindowWidth));
|
||||
}
|
||||
|
||||
protected void LabelAndTextField(string label, ref string text)
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
GUILayout.Label(label, this.LabelStyle, GUILayout.MaxWidth(200 * this.ScaleFactor));
|
||||
text = GUILayout.TextField(
|
||||
text,
|
||||
this.TextInputStyle,
|
||||
GUILayout.MaxWidth(ConsoleBase.MainWindowWidth - 150));
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
protected bool IsHorizontalLayout()
|
||||
{
|
||||
#if UNITY_IOS || UNITY_ANDROID
|
||||
return Screen.orientation == ScreenOrientation.Landscape;
|
||||
#else
|
||||
return true;
|
||||
#endif
|
||||
}
|
||||
|
||||
protected void SwitchMenu(Type menuClass)
|
||||
{
|
||||
ConsoleBase.menuStack.Push(this.GetType().Name);
|
||||
SceneManager.LoadScene(menuClass.Name);
|
||||
}
|
||||
|
||||
protected void GoBack()
|
||||
{
|
||||
if (ConsoleBase.menuStack.Any())
|
||||
{
|
||||
SceneManager.LoadScene(ConsoleBase.menuStack.Pop());
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
10
Assets/FacebookSDK/Examples/Scripts/ConsoleBase.cs.meta
Normal file
10
Assets/FacebookSDK/Examples/Scripts/ConsoleBase.cs.meta
Normal file
@ -0,0 +1,10 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e8659f5605d094c19a8b7ef9471c3603
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
71
Assets/FacebookSDK/Examples/Scripts/LogView.cs
Normal file
71
Assets/FacebookSDK/Examples/Scripts/LogView.cs
Normal file
@ -0,0 +1,71 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
using UnityEngine;
|
||||
|
||||
internal class LogView : ConsoleBase
|
||||
{
|
||||
private static string datePatt = @"M/d/yyyy hh:mm:ss tt";
|
||||
private static IList<string> events = new List<string>();
|
||||
|
||||
public static void AddLog(string log)
|
||||
{
|
||||
events.Insert(0, string.Format("{0}\n{1}\n", DateTime.Now.ToString(datePatt), log));
|
||||
}
|
||||
|
||||
protected void OnGUI()
|
||||
{
|
||||
GUILayout.BeginVertical();
|
||||
//GUILayout.Space(Screen.safeArea.yMin + 10);
|
||||
if (this.Button("Back"))
|
||||
{
|
||||
this.GoBack();
|
||||
}
|
||||
|
||||
#if UNITY_IOS || UNITY_ANDROID || UNITY_WP8
|
||||
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved)
|
||||
{
|
||||
Vector2 scrollPosition = this.ScrollPosition;
|
||||
scrollPosition.y += Input.GetTouch(0).deltaPosition.y;
|
||||
this.ScrollPosition = scrollPosition;
|
||||
}
|
||||
#endif
|
||||
this.ScrollPosition = GUILayout.BeginScrollView(
|
||||
this.ScrollPosition,
|
||||
GUILayout.MinWidth(ConsoleBase.MainWindowFullWidth));
|
||||
|
||||
GUILayout.TextArea(
|
||||
string.Join("\n", events.ToArray()),
|
||||
this.TextStyle,
|
||||
GUILayout.ExpandHeight(true),
|
||||
GUILayout.MaxWidth(ConsoleBase.MainWindowWidth));
|
||||
|
||||
GUILayout.EndScrollView();
|
||||
|
||||
GUILayout.EndVertical();
|
||||
}
|
||||
}
|
||||
}
|
||||
12
Assets/FacebookSDK/Examples/Scripts/LogView.cs.meta
Normal file
12
Assets/FacebookSDK/Examples/Scripts/LogView.cs.meta
Normal file
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 910cbe16250cb4363b70464c39fc701a
|
||||
timeCreated: 1434143113
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
232
Assets/FacebookSDK/Examples/Scripts/MenuBase.cs
Normal file
232
Assets/FacebookSDK/Examples/Scripts/MenuBase.cs
Normal file
@ -0,0 +1,232 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
internal abstract class MenuBase : ConsoleBase
|
||||
{
|
||||
private static ShareDialogMode shareDialogMode;
|
||||
|
||||
protected abstract void GetGui();
|
||||
|
||||
protected virtual bool ShowDialogModeSelector()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
protected virtual bool ShowBackButton()
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
protected void HandleResult(IResult result)
|
||||
{
|
||||
if (result == null)
|
||||
{
|
||||
this.LastResponse = "Null Response\n";
|
||||
LogView.AddLog(this.LastResponse);
|
||||
return;
|
||||
}
|
||||
|
||||
this.LastResponseTexture = null;
|
||||
|
||||
// Some platforms return the empty string instead of null.
|
||||
if (!string.IsNullOrEmpty(result.Error))
|
||||
{
|
||||
this.Status = "Error - Check log for details";
|
||||
this.LastResponse = "Error Response:\n" + result.Error;
|
||||
}
|
||||
else if (result.Cancelled)
|
||||
{
|
||||
this.Status = "Cancelled - Check log for details";
|
||||
this.LastResponse = "Cancelled Response:\n" + result.RawResult;
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(result.RawResult))
|
||||
{
|
||||
this.Status = "Success - Check log for details";
|
||||
this.LastResponse = "Success Response:\n" + result.RawResult;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.LastResponse = "Empty Response\n";
|
||||
}
|
||||
|
||||
LogView.AddLog(result.ToString());
|
||||
}
|
||||
|
||||
protected void HandleLimitedLoginResult(IResult result)
|
||||
{
|
||||
if (result == null)
|
||||
{
|
||||
this.LastResponse = "Null Response\n";
|
||||
LogView.AddLog(this.LastResponse);
|
||||
return;
|
||||
}
|
||||
|
||||
this.LastResponseTexture = null;
|
||||
|
||||
// Some platforms return the empty string instead of null.
|
||||
if (!string.IsNullOrEmpty(result.Error))
|
||||
{
|
||||
this.Status = "Error - Check log for details";
|
||||
this.LastResponse = "Error Response:\n" + result.Error;
|
||||
}
|
||||
else if (result.Cancelled)
|
||||
{
|
||||
this.Status = "Cancelled - Check log for details";
|
||||
this.LastResponse = "Cancelled Response:\n" + result.RawResult;
|
||||
}
|
||||
else if (!string.IsNullOrEmpty(result.RawResult))
|
||||
{
|
||||
this.Status = "Success - Check log for details";
|
||||
this.LastResponse = "Success Response:\n" + result.RawResult;
|
||||
}
|
||||
else
|
||||
{
|
||||
this.LastResponse = "Empty Response\n";
|
||||
}
|
||||
|
||||
String resultSummary = "Limited login results\n\n";
|
||||
var profile = FB.Mobile.CurrentProfile();
|
||||
resultSummary += "name: " + profile.Name + "\n";
|
||||
resultSummary += "id: " + profile.UserID + "\n";
|
||||
resultSummary += "email: " + profile.Email + "\n";
|
||||
resultSummary += "pic URL: " + profile.ImageURL + "\n";
|
||||
resultSummary += "birthday: " + profile.Birthday + "\n";
|
||||
resultSummary += "age range: " + profile.AgeRange + "\n";
|
||||
resultSummary += "first name: " + profile.FirstName + "\n";
|
||||
resultSummary += "middle name: " + profile.MiddleName + "\n";
|
||||
resultSummary += "last name: " + profile.LastName + "\n";
|
||||
resultSummary += "friends: " + String.Join(",", profile.FriendIDs) + "\n";
|
||||
resultSummary += "hometown: " + profile.Hometown?.Name + "\n";
|
||||
resultSummary += "location: " + profile.Location?.Name + "\n";
|
||||
resultSummary += "gender: " + profile.Gender + "\n";
|
||||
|
||||
LogView.AddLog(resultSummary);
|
||||
}
|
||||
|
||||
protected void OnGUI()
|
||||
{
|
||||
if (this.IsHorizontalLayout())
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
GUILayout.BeginVertical();
|
||||
}
|
||||
|
||||
//GUILayout.Space(Screen.safeArea.yMin + 10);
|
||||
GUILayout.Label(this.GetType().Name, this.LabelStyle);
|
||||
|
||||
this.AddStatus();
|
||||
|
||||
#if UNITY_IOS || UNITY_ANDROID || UNITY_WP8
|
||||
if (Input.touchCount > 0 && Input.GetTouch(0).phase == TouchPhase.Moved)
|
||||
{
|
||||
Vector2 scrollPosition = this.ScrollPosition;
|
||||
scrollPosition.y += Input.GetTouch(0).deltaPosition.y;
|
||||
this.ScrollPosition = scrollPosition;
|
||||
}
|
||||
#endif
|
||||
this.ScrollPosition = GUILayout.BeginScrollView(
|
||||
this.ScrollPosition,
|
||||
GUILayout.MinWidth(ConsoleBase.MainWindowFullWidth));
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
if (this.ShowBackButton())
|
||||
{
|
||||
this.AddBackButton();
|
||||
}
|
||||
|
||||
this.AddLogButton();
|
||||
if (this.ShowBackButton())
|
||||
{
|
||||
// Fix GUILayout margin issues
|
||||
GUILayout.Label(GUIContent.none, GUILayout.MinWidth(ConsoleBase.MarginFix));
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
if (this.ShowDialogModeSelector())
|
||||
{
|
||||
this.AddDialogModeButtons();
|
||||
}
|
||||
|
||||
GUILayout.BeginVertical();
|
||||
|
||||
// Add the ui from decendants
|
||||
this.GetGui();
|
||||
GUILayout.Space(10);
|
||||
|
||||
GUILayout.EndVertical();
|
||||
GUILayout.EndScrollView();
|
||||
}
|
||||
|
||||
private void AddStatus()
|
||||
{
|
||||
GUILayout.Space(5);
|
||||
GUILayout.Box("Status: " + this.Status, this.TextStyle, GUILayout.MinWidth(ConsoleBase.MainWindowWidth));
|
||||
}
|
||||
|
||||
private void AddBackButton()
|
||||
{
|
||||
GUI.enabled = ConsoleBase.MenuStack.Any();
|
||||
if (this.Button("Back"))
|
||||
{
|
||||
this.GoBack();
|
||||
}
|
||||
|
||||
GUI.enabled = true;
|
||||
}
|
||||
|
||||
private void AddLogButton()
|
||||
{
|
||||
if (this.Button("Log"))
|
||||
{
|
||||
this.SwitchMenu(typeof(LogView));
|
||||
}
|
||||
}
|
||||
|
||||
private void AddDialogModeButtons()
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
foreach (var value in Enum.GetValues(typeof(ShareDialogMode)))
|
||||
{
|
||||
this.AddDialogModeButton((ShareDialogMode)value);
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
private void AddDialogModeButton(ShareDialogMode mode)
|
||||
{
|
||||
bool enabled = GUI.enabled;
|
||||
GUI.enabled = enabled && (mode != shareDialogMode);
|
||||
if (this.Button(mode.ToString()))
|
||||
{
|
||||
shareDialogMode = mode;
|
||||
FB.Mobile.ShareDialogMode = mode;
|
||||
}
|
||||
|
||||
GUI.enabled = enabled;
|
||||
}
|
||||
}
|
||||
}
|
||||
12
Assets/FacebookSDK/Examples/Scripts/MenuBase.cs.meta
Normal file
12
Assets/FacebookSDK/Examples/Scripts/MenuBase.cs.meta
Normal file
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8f28f9112a7d44d3c999fbd95333abbb
|
||||
timeCreated: 1465553943
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Examples/Scripts/SubMenus.meta
Normal file
8
Assets/FacebookSDK/Examples/Scripts/SubMenus.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f187a1fd548e2a049a6cfef1dcef73e6
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@ -0,0 +1,33 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
internal class AccessTokenMenu : MenuBase
|
||||
{
|
||||
protected override void GetGui()
|
||||
{
|
||||
if (this.Button("Refresh Access Token"))
|
||||
{
|
||||
FB.Mobile.RefreshCurrentAccessToken(this.HandleResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4cc408e158eec46b28b93a44fc8819ff
|
||||
timeCreated: 1447720427
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
45
Assets/FacebookSDK/Examples/Scripts/SubMenus/AppEvents.cs
Normal file
45
Assets/FacebookSDK/Examples/Scripts/SubMenus/AppEvents.cs
Normal file
@ -0,0 +1,45 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System.Collections.Generic;
|
||||
|
||||
internal class AppEvents : MenuBase
|
||||
{
|
||||
protected override void GetGui()
|
||||
{
|
||||
if (this.Button("Log FB App Event"))
|
||||
{
|
||||
this.Status = "Logged FB.AppEvent";
|
||||
FB.LogAppEvent(
|
||||
AppEventName.UnlockedAchievement,
|
||||
null,
|
||||
new Dictionary<string, object>()
|
||||
{
|
||||
{ AppEventParameterName.Description, "Clicked 'Log AppEvent' button" }
|
||||
});
|
||||
LogView.AddLog(
|
||||
"You may see results showing up at https://www.facebook.com/analytics/"
|
||||
+ FB.AppId);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e3c0dd81ff77c4c30834810815c69f6d
|
||||
timeCreated: 1435018470
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
38
Assets/FacebookSDK/Examples/Scripts/SubMenus/AppLinks.cs
Normal file
38
Assets/FacebookSDK/Examples/Scripts/SubMenus/AppLinks.cs
Normal file
@ -0,0 +1,38 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
internal class AppLinks : MenuBase
|
||||
{
|
||||
protected override void GetGui()
|
||||
{
|
||||
if (this.Button("Get App Link"))
|
||||
{
|
||||
FB.GetAppLink(this.HandleResult);
|
||||
}
|
||||
|
||||
if (Constants.IsMobile && this.Button("Fetch Deferred App Link"))
|
||||
{
|
||||
FB.Mobile.FetchDeferredAppLinkData(this.HandleResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f9f0b7257fa054227be6e26bf1f6b339
|
||||
timeCreated: 1435164891
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
143
Assets/FacebookSDK/Examples/Scripts/SubMenus/AppRequests.cs
Normal file
143
Assets/FacebookSDK/Examples/Scripts/SubMenus/AppRequests.cs
Normal file
@ -0,0 +1,143 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
internal class AppRequests : MenuBase
|
||||
{
|
||||
private string requestMessage = string.Empty;
|
||||
private string requestTo = string.Empty;
|
||||
private string requestFilter = string.Empty;
|
||||
private string requestExcludes = string.Empty;
|
||||
private string requestMax = string.Empty;
|
||||
private string requestData = string.Empty;
|
||||
private string requestTitle = string.Empty;
|
||||
private string requestObjectID = string.Empty;
|
||||
private int selectedAction = 0;
|
||||
private string[] actionTypeStrings =
|
||||
{
|
||||
"NONE",
|
||||
OGActionType.SEND.ToString(),
|
||||
OGActionType.ASKFOR.ToString(),
|
||||
OGActionType.TURN.ToString()
|
||||
};
|
||||
|
||||
protected override void GetGui()
|
||||
{
|
||||
if (this.Button("Select - Filter None"))
|
||||
{
|
||||
FB.AppRequest("Test Message", callback: this.HandleResult);
|
||||
}
|
||||
|
||||
if (this.Button("Select - Filter app_users"))
|
||||
{
|
||||
List<object> filter = new List<object>() { "app_users" };
|
||||
|
||||
// workaround for mono failing with named parameters
|
||||
FB.AppRequest("Test Message", null, filter, null, 0, string.Empty, string.Empty, this.HandleResult);
|
||||
}
|
||||
|
||||
if (this.Button("Select - Filter app_non_users"))
|
||||
{
|
||||
List<object> filter = new List<object>() { "app_non_users" };
|
||||
FB.AppRequest("Test Message", null, filter, null, 0, string.Empty, string.Empty, this.HandleResult);
|
||||
}
|
||||
|
||||
// Custom options
|
||||
this.LabelAndTextField("Message: ", ref this.requestMessage);
|
||||
this.LabelAndTextField("To (optional): ", ref this.requestTo);
|
||||
this.LabelAndTextField("Filter (optional): ", ref this.requestFilter);
|
||||
this.LabelAndTextField("Exclude Ids (optional): ", ref this.requestExcludes);
|
||||
this.LabelAndTextField("Filters: ", ref this.requestExcludes);
|
||||
this.LabelAndTextField("Max Recipients (optional): ", ref this.requestMax);
|
||||
this.LabelAndTextField("Data (optional): ", ref this.requestData);
|
||||
this.LabelAndTextField("Title (optional): ", ref this.requestTitle);
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
GUILayout.Label(
|
||||
"Request Action (optional): ",
|
||||
this.LabelStyle,
|
||||
GUILayout.MaxWidth(200 * this.ScaleFactor));
|
||||
|
||||
this.selectedAction = GUILayout.Toolbar(
|
||||
this.selectedAction,
|
||||
this.actionTypeStrings,
|
||||
this.ButtonStyle,
|
||||
GUILayout.MinHeight(ConsoleBase.ButtonHeight * this.ScaleFactor),
|
||||
GUILayout.MaxWidth(ConsoleBase.MainWindowWidth - 150));
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
this.LabelAndTextField("Request Object ID (optional): ", ref this.requestObjectID);
|
||||
|
||||
if (this.Button("Custom App Request"))
|
||||
{
|
||||
OGActionType? action = this.GetSelectedOGActionType();
|
||||
if (action != null)
|
||||
{
|
||||
FB.AppRequest(
|
||||
this.requestMessage,
|
||||
action.Value,
|
||||
this.requestObjectID,
|
||||
string.IsNullOrEmpty(this.requestTo) ? null : this.requestTo.Split(','),
|
||||
this.requestData,
|
||||
this.requestTitle,
|
||||
this.HandleResult);
|
||||
}
|
||||
else
|
||||
{
|
||||
FB.AppRequest(
|
||||
this.requestMessage,
|
||||
string.IsNullOrEmpty(this.requestTo) ? null : this.requestTo.Split(','),
|
||||
string.IsNullOrEmpty(this.requestFilter) ? null : this.requestFilter.Split(',').OfType<object>().ToList(),
|
||||
string.IsNullOrEmpty(this.requestExcludes) ? null : this.requestExcludes.Split(','),
|
||||
string.IsNullOrEmpty(this.requestMax) ? 0 : int.Parse(this.requestMax),
|
||||
this.requestData,
|
||||
this.requestTitle,
|
||||
this.HandleResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private OGActionType? GetSelectedOGActionType()
|
||||
{
|
||||
string actionString = this.actionTypeStrings[this.selectedAction];
|
||||
if (actionString == OGActionType.SEND.ToString())
|
||||
{
|
||||
return OGActionType.SEND;
|
||||
}
|
||||
else if (actionString == OGActionType.ASKFOR.ToString())
|
||||
{
|
||||
return OGActionType.ASKFOR;
|
||||
}
|
||||
else if (actionString == OGActionType.TURN.ToString())
|
||||
{
|
||||
return OGActionType.TURN;
|
||||
}
|
||||
else
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3b4c675f81a254b87adc8ad01006c580
|
||||
timeCreated: 1435018470
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
125
Assets/FacebookSDK/Examples/Scripts/SubMenus/DialogShare.cs
Normal file
125
Assets/FacebookSDK/Examples/Scripts/SubMenus/DialogShare.cs
Normal file
@ -0,0 +1,125 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
internal class DialogShare : MenuBase
|
||||
{
|
||||
// Custom Share Link
|
||||
private string shareLink = "https://developers.facebook.com/";
|
||||
private string shareTitle = "Link Title";
|
||||
private string shareDescription = "Link Description";
|
||||
private string shareImage = "http://i.imgur.com/j4M7vCO.jpg";
|
||||
|
||||
// Custom Feed Share
|
||||
private string feedTo = string.Empty;
|
||||
private string feedLink = "https://developers.facebook.com/";
|
||||
private string feedTitle = "Test Title";
|
||||
private string feedCaption = "Test Caption";
|
||||
private string feedDescription = "Test Description";
|
||||
private string feedImage = "http://i.imgur.com/zkYlB.jpg";
|
||||
private string feedMediaSource = string.Empty;
|
||||
|
||||
protected override bool ShowDialogModeSelector()
|
||||
{
|
||||
#if !UNITY_EDITOR && (UNITY_IOS || UNITY_ANDROID)
|
||||
return true;
|
||||
#else
|
||||
return false;
|
||||
#endif
|
||||
}
|
||||
|
||||
protected override void GetGui()
|
||||
{
|
||||
bool enabled = GUI.enabled;
|
||||
if (this.Button("Share - Link"))
|
||||
{
|
||||
FB.ShareLink(new Uri("https://developers.facebook.com/"), callback: this.HandleResult);
|
||||
}
|
||||
|
||||
// Note: Web dialog doesn't support photo urls.
|
||||
if (this.Button("Share - Link Photo"))
|
||||
{
|
||||
FB.ShareLink(
|
||||
new Uri("https://developers.facebook.com/"),
|
||||
"Link Share",
|
||||
"Look I'm sharing a link",
|
||||
new Uri("http://i.imgur.com/j4M7vCO.jpg"),
|
||||
callback: this.HandleResult);
|
||||
}
|
||||
|
||||
this.LabelAndTextField("Link", ref this.shareLink);
|
||||
this.LabelAndTextField("Title", ref this.shareTitle);
|
||||
this.LabelAndTextField("Description", ref this.shareDescription);
|
||||
this.LabelAndTextField("Image", ref this.shareImage);
|
||||
if (this.Button("Share - Custom"))
|
||||
{
|
||||
FB.ShareLink(
|
||||
new Uri(this.shareLink),
|
||||
this.shareTitle,
|
||||
this.shareDescription,
|
||||
new Uri(this.shareImage),
|
||||
this.HandleResult);
|
||||
}
|
||||
|
||||
GUI.enabled = enabled && (!Constants.IsEditor || (Constants.IsEditor && FB.IsLoggedIn));
|
||||
if (this.Button("Feed Share - No To"))
|
||||
{
|
||||
FB.FeedShare(
|
||||
string.Empty,
|
||||
new Uri("https://developers.facebook.com/"),
|
||||
"Test Title",
|
||||
"Test caption",
|
||||
"Test Description",
|
||||
new Uri("http://i.imgur.com/zkYlB.jpg"),
|
||||
string.Empty,
|
||||
this.HandleResult);
|
||||
}
|
||||
|
||||
this.LabelAndTextField("To", ref this.feedTo);
|
||||
this.LabelAndTextField("Link", ref this.feedLink);
|
||||
this.LabelAndTextField("Title", ref this.feedTitle);
|
||||
this.LabelAndTextField("Caption", ref this.feedCaption);
|
||||
this.LabelAndTextField("Description", ref this.feedDescription);
|
||||
this.LabelAndTextField("Image", ref this.feedImage);
|
||||
this.LabelAndTextField("Media Source", ref this.feedMediaSource);
|
||||
if (this.Button("Feed Share - Custom"))
|
||||
{
|
||||
FB.FeedShare(
|
||||
this.feedTo,
|
||||
string.IsNullOrEmpty(this.feedLink) ? null : new Uri(this.feedLink),
|
||||
this.feedTitle,
|
||||
this.feedCaption,
|
||||
this.feedDescription,
|
||||
string.IsNullOrEmpty(this.feedImage) ? null : new Uri(this.feedImage),
|
||||
this.feedMediaSource,
|
||||
this.HandleResult);
|
||||
}
|
||||
|
||||
GUI.enabled = enabled;
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e93c4155902d3496399630ee494eab6b
|
||||
timeCreated: 1435018470
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
93
Assets/FacebookSDK/Examples/Scripts/SubMenus/GraphRequest.cs
Normal file
93
Assets/FacebookSDK/Examples/Scripts/SubMenus/GraphRequest.cs
Normal file
@ -0,0 +1,93 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System.Collections;
|
||||
using UnityEngine;
|
||||
|
||||
internal class GraphRequest : MenuBase
|
||||
{
|
||||
private string apiQuery = string.Empty;
|
||||
private Texture2D profilePic;
|
||||
|
||||
protected override void GetGui()
|
||||
{
|
||||
bool enabled = GUI.enabled;
|
||||
GUI.enabled = enabled && FB.IsLoggedIn;
|
||||
if (this.Button("Basic Request - Me"))
|
||||
{
|
||||
FB.API("/me", HttpMethod.GET, this.HandleResult);
|
||||
}
|
||||
|
||||
if (this.Button("Retrieve Profile Photo"))
|
||||
{
|
||||
FB.API("/me/picture", HttpMethod.GET, this.ProfilePhotoCallback);
|
||||
}
|
||||
|
||||
if (this.Button("Take and Upload screenshot"))
|
||||
{
|
||||
this.StartCoroutine(this.TakeScreenshot());
|
||||
}
|
||||
|
||||
this.LabelAndTextField("Request", ref this.apiQuery);
|
||||
if (this.Button("Custom Request"))
|
||||
{
|
||||
FB.API(this.apiQuery, HttpMethod.GET, this.HandleResult);
|
||||
}
|
||||
|
||||
if (this.profilePic != null)
|
||||
{
|
||||
GUILayout.Box(this.profilePic);
|
||||
}
|
||||
|
||||
GUI.enabled = enabled;
|
||||
}
|
||||
|
||||
private void ProfilePhotoCallback(IGraphResult result)
|
||||
{
|
||||
if (string.IsNullOrEmpty(result.Error) && result.Texture != null)
|
||||
{
|
||||
this.profilePic = result.Texture;
|
||||
}
|
||||
|
||||
this.HandleResult(result);
|
||||
}
|
||||
|
||||
private IEnumerator TakeScreenshot()
|
||||
{
|
||||
yield return new WaitForEndOfFrame();
|
||||
|
||||
var width = Screen.width;
|
||||
var height = Screen.height;
|
||||
var tex = new Texture2D(width, height, TextureFormat.RGB24, false);
|
||||
|
||||
// Read screen contents into the texture
|
||||
tex.ReadPixels(new Rect(0, 0, width, height), 0, 0);
|
||||
tex.Apply();
|
||||
byte[] screenshot = tex.EncodeToPNG();
|
||||
|
||||
var wwwForm = new WWWForm();
|
||||
wwwForm.AddBinaryData("image", screenshot, "InteractiveConsole.png");
|
||||
wwwForm.AddField("message", "herp derp. I did a thing! Did I do this right?");
|
||||
FB.API("me/photos", HttpMethod.POST, this.HandleResult, wwwForm);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 23c3cb06c2209474e9a8441e2712d5d2
|
||||
timeCreated: 1435018470
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
274
Assets/FacebookSDK/Examples/Scripts/SubMenus/MainMenu.cs
Normal file
274
Assets/FacebookSDK/Examples/Scripts/SubMenus/MainMenu.cs
Normal file
@ -0,0 +1,274 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEngine;
|
||||
|
||||
|
||||
|
||||
internal sealed class MainMenu : MenuBase
|
||||
{
|
||||
|
||||
enum Scope {
|
||||
PublicProfile = 0b_0000_0001,
|
||||
UserFriends = 0b_0000_0010,
|
||||
UserBirthday = 0b_0000_0100,
|
||||
UserAgeRange = 0b_0000_1000,
|
||||
PublishActions = 0b_0001_0000,
|
||||
UserLocation = 0b_0010_0000,
|
||||
UserHometown = 0b_0100_0000,
|
||||
UserGender = 0b_1000_0000,
|
||||
};
|
||||
|
||||
protected override bool ShowBackButton()
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
protected override void GetGui()
|
||||
{
|
||||
GUILayout.BeginVertical();
|
||||
|
||||
|
||||
bool enabled = GUI.enabled;
|
||||
if (this.Button("FB.Init"))
|
||||
{
|
||||
FB.Init(this.OnInitComplete, this.OnHideUnity);
|
||||
this.Status = "FB.Init() called with " + FB.AppId;
|
||||
}
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
GUI.enabled = enabled && FB.IsInitialized;
|
||||
if (this.Button("Classic login"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.ENABLED, Scope.PublicProfile);
|
||||
this.Status = "Classic login called";
|
||||
}
|
||||
if (this.Button("Get publish_actions"))
|
||||
{
|
||||
this.CallFBLoginForPublish();
|
||||
this.Status = "Login (for publish_actions) called";
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
if (this.Button("Limited login"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile);
|
||||
this.Status = "Limited login called";
|
||||
|
||||
}
|
||||
if (this.Button("Limited login +friends"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile | Scope.UserFriends);
|
||||
this.Status = "Limited login +friends called";
|
||||
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
if (this.Button("Limited Login+bday"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile | Scope.UserBirthday);
|
||||
this.Status = "Limited login +bday called";
|
||||
}
|
||||
|
||||
if (this.Button("Limited Login+agerange"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile | Scope.UserAgeRange);
|
||||
this.Status = "Limited login +agerange called";
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
if (this.Button("Limited Login + location"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile | Scope.UserLocation);
|
||||
}
|
||||
|
||||
if (this.Button("Limited Login + Hometown"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile | Scope.UserHometown);
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
if (this.Button("Limited Login + Gender"))
|
||||
{
|
||||
this.CallFBLogin(LoginTracking.LIMITED, Scope.PublicProfile | Scope.UserGender);
|
||||
}
|
||||
|
||||
|
||||
GUI.enabled = FB.IsLoggedIn;
|
||||
|
||||
|
||||
// Fix GUILayout margin issues
|
||||
GUILayout.Label(GUIContent.none, GUILayout.MinWidth(ConsoleBase.MarginFix));
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
// Fix GUILayout margin issues
|
||||
GUILayout.Label(GUIContent.none, GUILayout.MinWidth(ConsoleBase.MarginFix));
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
#if !UNITY_WEBGL
|
||||
if (this.Button("Logout"))
|
||||
{
|
||||
CallFBLogout();
|
||||
this.Status = "Logout called";
|
||||
}
|
||||
#endif
|
||||
|
||||
GUI.enabled = enabled && FB.IsInitialized;
|
||||
if (this.Button("Share Dialog"))
|
||||
{
|
||||
this.SwitchMenu(typeof(DialogShare));
|
||||
}
|
||||
|
||||
if (this.Button("App Requests"))
|
||||
{
|
||||
this.SwitchMenu(typeof(AppRequests));
|
||||
}
|
||||
|
||||
if (this.Button("Graph Request"))
|
||||
{
|
||||
this.SwitchMenu(typeof(GraphRequest));
|
||||
}
|
||||
|
||||
if (Constants.IsWeb && this.Button("Pay"))
|
||||
{
|
||||
this.SwitchMenu(typeof(Pay));
|
||||
}
|
||||
|
||||
if (this.Button("App Events"))
|
||||
{
|
||||
this.SwitchMenu(typeof(AppEvents));
|
||||
}
|
||||
|
||||
if (this.Button("App Links"))
|
||||
{
|
||||
this.SwitchMenu(typeof(AppLinks));
|
||||
}
|
||||
|
||||
if (Constants.IsMobile && this.Button("Access Token"))
|
||||
{
|
||||
this.SwitchMenu(typeof(AccessTokenMenu));
|
||||
}
|
||||
|
||||
GUILayout.EndVertical();
|
||||
|
||||
GUI.enabled = enabled;
|
||||
}
|
||||
|
||||
private void CallFBLogin(LoginTracking mode, Scope scopemask)
|
||||
{
|
||||
List<string> scopes = new List<string>();
|
||||
|
||||
if((scopemask & Scope.PublicProfile) > 0) {
|
||||
scopes.Add("public_profile");
|
||||
}
|
||||
if((scopemask & Scope.UserFriends) > 0)
|
||||
{
|
||||
scopes.Add("user_friends");
|
||||
}
|
||||
if((scopemask & Scope.UserBirthday) > 0)
|
||||
{
|
||||
scopes.Add("user_birthday");
|
||||
}
|
||||
if((scopemask & Scope.UserAgeRange) > 0)
|
||||
{
|
||||
scopes.Add("user_age_range");
|
||||
}
|
||||
|
||||
if ((scopemask & Scope.UserLocation) > 0)
|
||||
{
|
||||
scopes.Add("user_location");
|
||||
}
|
||||
|
||||
if ((scopemask & Scope.UserHometown) > 0)
|
||||
{
|
||||
scopes.Add("user_hometown");
|
||||
}
|
||||
|
||||
if ((scopemask & Scope.UserGender) > 0)
|
||||
{
|
||||
scopes.Add("user_gender");
|
||||
}
|
||||
|
||||
|
||||
if (mode == LoginTracking.ENABLED)
|
||||
{
|
||||
FB.Mobile.LoginWithTrackingPreference(LoginTracking.ENABLED, scopes, "classic_nonce123", this.HandleResult);
|
||||
}
|
||||
else // mode == loginTracking.LIMITED
|
||||
{
|
||||
FB.Mobile.LoginWithTrackingPreference(LoginTracking.LIMITED, scopes, "limited_nonce123", this.HandleLimitedLoginResult);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
private void CallFBLoginForPublish()
|
||||
{
|
||||
// It is generally good behavior to split asking for read and publish
|
||||
// permissions rather than ask for them all at once.
|
||||
//
|
||||
// In your own game, consider postponing this call until the moment
|
||||
// you actually need it.
|
||||
FB.LogInWithPublishPermissions(new List<string>() { "publish_actions" }, this.HandleResult);
|
||||
}
|
||||
|
||||
private void CallFBLogout()
|
||||
{
|
||||
FB.LogOut();
|
||||
}
|
||||
|
||||
private void OnInitComplete()
|
||||
{
|
||||
this.Status = "Success - Check log for details";
|
||||
this.LastResponse = "Success Response: OnInitComplete Called\n";
|
||||
string logMessage = string.Format(
|
||||
"OnInitCompleteCalled IsLoggedIn='{0}' IsInitialized='{1}'",
|
||||
FB.IsLoggedIn,
|
||||
FB.IsInitialized);
|
||||
LogView.AddLog(logMessage);
|
||||
if (AccessToken.CurrentAccessToken != null)
|
||||
{
|
||||
LogView.AddLog(AccessToken.CurrentAccessToken.ToString());
|
||||
}
|
||||
}
|
||||
|
||||
private void OnHideUnity(bool isGameShown)
|
||||
{
|
||||
this.Status = "Success - Check log for details";
|
||||
this.LastResponse = string.Format("Success Response: OnHideUnity Called {0}\n", isGameShown);
|
||||
LogView.AddLog("Is game shown: " + isGameShown);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 922e3ad8d88a146b3b392cd8c84edd6a
|
||||
timeCreated: 1465553943
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
45
Assets/FacebookSDK/Examples/Scripts/SubMenus/Pay.cs
Normal file
45
Assets/FacebookSDK/Examples/Scripts/SubMenus/Pay.cs
Normal file
@ -0,0 +1,45 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
namespace Facebook.Unity.Example
|
||||
{
|
||||
using UnityEngine;
|
||||
|
||||
internal class Pay : MenuBase
|
||||
{
|
||||
private string payProduct = string.Empty;
|
||||
|
||||
protected override void GetGui()
|
||||
{
|
||||
this.LabelAndTextField("Product: ", ref this.payProduct);
|
||||
if (this.Button("Call Pay"))
|
||||
{
|
||||
this.CallFBPay();
|
||||
}
|
||||
|
||||
GUILayout.Space(10);
|
||||
}
|
||||
|
||||
private void CallFBPay()
|
||||
{
|
||||
FB.Canvas.Pay(this.payProduct, callback: this.HandleResult);
|
||||
}
|
||||
}
|
||||
}
|
||||
12
Assets/FacebookSDK/Examples/Scripts/SubMenus/Pay.cs.meta
Normal file
12
Assets/FacebookSDK/Examples/Scripts/SubMenus/Pay.cs.meta
Normal file
@ -0,0 +1,12 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7f08c9721703046ec883e57562184726
|
||||
timeCreated: 1435018470
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Examples/Textures.meta
Normal file
8
Assets/FacebookSDK/Examples/Textures.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 186fe0001a4d8494b8517e800edadd80
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Examples/Textures/White.psd
Normal file
BIN
Assets/FacebookSDK/Examples/Textures/White.psd
Normal file
Binary file not shown.
55
Assets/FacebookSDK/Examples/Textures/White.psd.meta
Normal file
55
Assets/FacebookSDK/Examples/Textures/White.psd.meta
Normal file
@ -0,0 +1,55 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6f2bd1fb3a7ec4616b4311f171db577d
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 1
|
||||
linearTexture: 0
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
cubemapConvolution: 0
|
||||
cubemapConvolutionSteps: 7
|
||||
cubemapConvolutionExponent: 1.5
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 1024
|
||||
textureSettings:
|
||||
filterMode: -1
|
||||
aniso: -1
|
||||
mipBias: -1
|
||||
wrapMode: -1
|
||||
nPOTScale: 1
|
||||
lightmap: 0
|
||||
rGBM: 0
|
||||
compressionQuality: 50
|
||||
allowsAlphaSplitting: 0
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 0
|
||||
textureType: -1
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
outline: []
|
||||
spritePackingTag:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins.meta
Normal file
8
Assets/FacebookSDK/Plugins.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9cce7a0a3f6331044aef446fb39f0b98
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/Android.meta
Normal file
8
Assets/FacebookSDK/Plugins/Android.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3f5f2fb4268a83643a462f3717ee7f97
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Android/Facebook.Unity.Android.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Android/Facebook.Unity.Android.dll
Normal file
Binary file not shown.
@ -0,0 +1,154 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fb286cd0f33ce4f5e81baf10dab8d865
|
||||
timeCreated: 1561663365
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
data:
|
||||
first:
|
||||
'': Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 0
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WebGL: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 1
|
||||
Exclude tvOS: 1
|
||||
data:
|
||||
first:
|
||||
'': Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OS: AnyOS
|
||||
data:
|
||||
first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
data:
|
||||
first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
data:
|
||||
first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
data:
|
||||
first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
data:
|
||||
first:
|
||||
tvOS: tvOS
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/Android/libs.meta
Normal file
8
Assets/FacebookSDK/Plugins/Android/libs.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 304660bc365f9034db9aa6872a54f6b8
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@ -0,0 +1,32 @@
|
||||
fileFormatVersion: 2
|
||||
guid: abcfdae5d23df40e9a7ec554ddc17a22
|
||||
timeCreated: 1623191241
|
||||
PluginImporter:
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
data:
|
||||
first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
data:
|
||||
first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
data:
|
||||
first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/Canvas.meta
Normal file
8
Assets/FacebookSDK/Plugins/Canvas.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c306adc6985aea64e8e8a093aba2e61c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
276
Assets/FacebookSDK/Plugins/Canvas/CanvasJSSDKBindings.jslib
Normal file
276
Assets/FacebookSDK/Plugins/Canvas/CanvasJSSDKBindings.jslib
Normal file
@ -0,0 +1,276 @@
|
||||
/**
|
||||
* Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
*
|
||||
* You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
* copy, modify, and distribute this software in source code or binary form for use
|
||||
* in connection with the web services and APIs provided by Facebook.
|
||||
*
|
||||
* As with any software that integrates with the Facebook platform, your use of
|
||||
* this software is subject to the Facebook Developer Principles and Policies
|
||||
* [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
* included in all copies or substantial portions of the software.
|
||||
*
|
||||
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
* FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
* COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
* IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
*/
|
||||
|
||||
var FBUnityLib = {
|
||||
$FBUnity: {
|
||||
init: function(connectFacebookUrl, locale, debug, initParams, status) {
|
||||
// make element for js sdk
|
||||
if (!document.getElementById('fb-root')) {
|
||||
var fbroot = document.createElement('div');
|
||||
fbroot.id = 'fb-root';
|
||||
var body = document.getElementsByTagName('body')[0];
|
||||
body.insertBefore(fbroot, body.children[0]);
|
||||
}
|
||||
|
||||
// load js sdk
|
||||
var js, id = 'facebook-jssdk', ref = document.getElementsByTagName('script')[0];
|
||||
if (document.getElementById(id)) {return;}
|
||||
js = document.createElement('script'); js.id = id; js.async = true;
|
||||
js.src = connectFacebookUrl + '/' + locale + '/sdk' + (debug ? '/debug' : '') + '.js';
|
||||
ref.parentNode.insertBefore(js, ref);
|
||||
// once jssdk is loaded, init
|
||||
window.fbAsyncInit = function() {
|
||||
initParams = JSON.parse(initParams);
|
||||
initParams.hideFlashCallback = FBUnity.onHideUnity;
|
||||
FB.init(initParams);
|
||||
// send url to unity - needed for deep linking
|
||||
FBUnity.sendMessage('OnUrlResponse', location.href);
|
||||
if (status) {
|
||||
FBUnity.onInitWithStatus();
|
||||
} else {
|
||||
FBUnity.onInit();
|
||||
}
|
||||
};
|
||||
},
|
||||
|
||||
initScreenPosition: function() {
|
||||
if (!screenPosition) {
|
||||
var body = document.getElementsByTagName('body')[0];
|
||||
var screenPosition = {omo : body.onmouseover || function(){}, iframeX: 0, iframeY: 0};
|
||||
body.onmouseover = function(e) {
|
||||
// Distance from top of screen to top of client area
|
||||
screenPosition.iframeX = e.screenX - e.clientX;
|
||||
screenPosition.iframeY = e.screenY - e.clientY;
|
||||
|
||||
screenPosition.omo(e);
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
sendMessage: function(method, param) {
|
||||
SendMessage('FacebookJsBridge', method, param);
|
||||
},
|
||||
|
||||
login: function(scope, callback_id) {
|
||||
FB.login(FBUnity.loginCallback.bind(null, callback_id), scope ? {scope: scope, auth_type: 'rerequest', return_scopes: true} : {return_scopes: true});
|
||||
},
|
||||
|
||||
loginCallback: function(callback_id, response) {
|
||||
response = {'callback_id': callback_id, 'response': response};
|
||||
FBUnity.sendMessage('OnLoginComplete', JSON.stringify(response));
|
||||
},
|
||||
|
||||
onInitWithStatus: function() {
|
||||
var timeoutHandler = setTimeout(function() { requestFailed(); }, 3000);
|
||||
|
||||
function requestFailed() {
|
||||
FBUnity.onInit();
|
||||
}
|
||||
|
||||
// try to get the login status right after init'ing
|
||||
FB.getLoginStatus(function(response) {
|
||||
clearTimeout(timeoutHandler);
|
||||
FBUnity.onInit(response);
|
||||
});
|
||||
},
|
||||
|
||||
onInit: function(response) {
|
||||
var jsonResponse = '';
|
||||
if (response && response.authResponse) {
|
||||
jsonResponse = JSON.stringify(response);
|
||||
}
|
||||
|
||||
FBUnity.sendMessage('OnInitComplete', jsonResponse);
|
||||
FB.Event.subscribe('auth.authResponseChange', function(r){ FBUnity.onAuthResponseChange(r) });
|
||||
|
||||
FBUnity.logLoadingTime(response);
|
||||
},
|
||||
|
||||
logLoadingTime: function(response) {
|
||||
FB.Canvas.setDoneLoading(
|
||||
function(result) {
|
||||
// send implicitly event to log the time from the canvas pages load to facebook init being called.
|
||||
FBUnity.logAppEvent('fb_canvas_time_till_init_complete', result.time_delta_ms / 1000, null);
|
||||
}
|
||||
);
|
||||
},
|
||||
|
||||
onAuthResponseChange: function(response) {
|
||||
FBUnity.sendMessage('OnFacebookAuthResponseChange', response ? JSON.stringify(response) : '');
|
||||
},
|
||||
|
||||
apiCallback: function(query, response) {
|
||||
response = {'query': query, 'response': response};
|
||||
FBUnity.sendMessage('OnFacebookAPIResponse', JSON.stringify(response));
|
||||
},
|
||||
|
||||
api: function(query) {
|
||||
FB.api(query, FBUnity.apiCallback.bind(null, query));
|
||||
},
|
||||
|
||||
activateApp: function() {
|
||||
FB.AppEvents.activateApp();
|
||||
},
|
||||
|
||||
uiCallback: function(uid, callbackMethodName, response) {
|
||||
response = {'callback_id': uid, 'response': response};
|
||||
FBUnity.sendMessage(callbackMethodName, JSON.stringify(response));
|
||||
},
|
||||
|
||||
logout: function() {
|
||||
FB.logout();
|
||||
},
|
||||
|
||||
logAppEvent: function(eventName, valueToSum, parameters) {
|
||||
FB.AppEvents.logEvent(
|
||||
eventName,
|
||||
valueToSum,
|
||||
JSON.parse(parameters)
|
||||
);
|
||||
},
|
||||
|
||||
logPurchase: function(purchaseAmount, currency, parameters) {
|
||||
FB.AppEvents.logPurchase(
|
||||
purchaseAmount,
|
||||
currency,
|
||||
JSON.parse(parameters)
|
||||
);
|
||||
},
|
||||
|
||||
ui: function(x, uid, callbackMethodName) {
|
||||
x = JSON.parse(x);
|
||||
FB.ui(x, FBUnity.uiCallback.bind(null, uid, callbackMethodName));
|
||||
},
|
||||
|
||||
|
||||
hideUnity: function(direction) {
|
||||
direction = direction || 'hide';
|
||||
//TODO support this for webgl
|
||||
var unityDiv = jQuery(u.getUnity());
|
||||
|
||||
if (direction == 'hide') {
|
||||
FBUnity.sendMessage('OnFacebookFocus', 'hide');
|
||||
} else /*show*/ {
|
||||
FBUnity.sendMessage('OnFacebookFocus', 'show');
|
||||
|
||||
if (FBUnity.showScreenshotBackground.savedBackground) {
|
||||
/*
|
||||
if(fbShowScreenshotBackground.savedBackground == 'sentinel') {
|
||||
jQuery('body').css('background', null);
|
||||
} else {
|
||||
jQuery('body').css('background', fbShowScreenshotBackground.savedBackground);
|
||||
}
|
||||
*/
|
||||
}
|
||||
|
||||
hideUnity.savedCSS = FBUnity.showScreenshotBackground.savedBackground = null;
|
||||
}
|
||||
},
|
||||
|
||||
showScreenshotBackground: function(pngbytes) /*and hide unity*/ {
|
||||
// window.screenxX and window.screenY = browser position
|
||||
// window.screen.height and window.screen.width = screen size
|
||||
// findPos, above, locates the iframe within the browser
|
||||
/*
|
||||
if (!fbShowScreenshotBackground.savedBackground)
|
||||
fbShowScreenshotBackground.savedBackground = jQuery('body').css('background') || 'sentinel';
|
||||
|
||||
jQuery('body').css('background-image', 'url(data:image/png;base64,'+pngbytes+')');
|
||||
jQuery('body').css(
|
||||
'background-position',
|
||||
-(screenPosition.iframeX)+'px '+
|
||||
-(screenPosition.iframeY)+'px'
|
||||
);
|
||||
jQuery('body').css('background-size', '100%');
|
||||
jquery('body').css('background-repeat', 'no-repeat');
|
||||
// TODO: Zoom detection
|
||||
*/
|
||||
},
|
||||
|
||||
onHideUnity: function(info) {
|
||||
if (info.state == 'opened') {
|
||||
FBUnity.sendMessage('OnFacebookFocus', 'hide');
|
||||
} else {
|
||||
FBUnity.sendMessage('OnFacebookFocus', 'show');
|
||||
}
|
||||
}
|
||||
},
|
||||
|
||||
init: function(connectFacebookUrl, locale, debug, initParams, status) {
|
||||
var connectFacebookUrlString = Pointer_stringify(connectFacebookUrl);
|
||||
var localeString = Pointer_stringify(locale);
|
||||
var initParamsString = Pointer_stringify(initParams);
|
||||
|
||||
FBUnity.init(connectFacebookUrlString, localeString, debug, initParamsString, status);
|
||||
},
|
||||
|
||||
initScreenPosition: function() {
|
||||
FBUnity.initScreenPosition();
|
||||
},
|
||||
|
||||
login: function(scope, callback_id) {
|
||||
var scopeString = Pointer_stringify(scope);
|
||||
var scopeArray = JSON.parse(scopeString);
|
||||
|
||||
var callback_idString = Pointer_stringify(callback_id);
|
||||
|
||||
FBUnity.login(scopeArray, callback_idString);
|
||||
},
|
||||
|
||||
activateApp: function() {
|
||||
FBUnity.activateApp();
|
||||
},
|
||||
|
||||
logout: function() {
|
||||
FBUnity.logout();
|
||||
},
|
||||
|
||||
logAppEvent: function(eventName, valueToSum, parameters) {
|
||||
var eventNameString = Pointer_stringify(eventName);
|
||||
var parametersString = Pointer_stringify(parameters);
|
||||
|
||||
FBUnity.logAppEvent(eventNameString, valueToSum, parametersString);
|
||||
},
|
||||
|
||||
logAppEventWithoutValue: function(eventName, parameters) {
|
||||
var eventNameString = Pointer_stringify(eventName);
|
||||
var parametersString = Pointer_stringify(parameters);
|
||||
|
||||
FBUnity.logAppEvent(eventNameString, null, parametersString);
|
||||
},
|
||||
|
||||
logPurchase: function(purchaseAmount, currency, parameters) {
|
||||
var currencyString = Pointer_stringify(currency);
|
||||
var parametersString = Pointer_stringify(parameters);
|
||||
|
||||
FBUnity.logPurchase(purchaseAmount, currencyString, parametersString);
|
||||
},
|
||||
|
||||
ui: function(x, uid, callbackMethodName) {
|
||||
var xString = Pointer_stringify(x);
|
||||
var uidString = Pointer_stringify(uid);
|
||||
var callbackMethodNameString = Pointer_stringify(callbackMethodName);
|
||||
|
||||
FBUnity.ui(xString, uidString, callbackMethodNameString);
|
||||
}
|
||||
};
|
||||
|
||||
autoAddDeps(LibraryManager.library, '$FBUnity');
|
||||
mergeInto(LibraryManager.library, FBUnityLib);
|
||||
@ -0,0 +1,36 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 082cd93ddb11e4437b52ea3d121816d8
|
||||
timeCreated: 1561663365
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Facebook: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Canvas/Facebook.Unity.Canvas.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Canvas/Facebook.Unity.Canvas.dll
Normal file
Binary file not shown.
160
Assets/FacebookSDK/Plugins/Canvas/Facebook.Unity.Canvas.dll.meta
Normal file
160
Assets/FacebookSDK/Plugins/Canvas/Facebook.Unity.Canvas.dll.meta
Normal file
@ -0,0 +1,160 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c57105322a98c474faf1ce607f20c3f8
|
||||
timeCreated: 1561663364
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
data:
|
||||
first:
|
||||
'': Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 1
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WebGL: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 1
|
||||
Exclude tvOS: 1
|
||||
data:
|
||||
first:
|
||||
'': Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OS: AnyOS
|
||||
data:
|
||||
first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
data:
|
||||
first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
data:
|
||||
first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
data:
|
||||
first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
data:
|
||||
first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
data:
|
||||
first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
data:
|
||||
first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
data:
|
||||
first:
|
||||
tvOS: tvOS
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/Editor.meta
Normal file
8
Assets/FacebookSDK/Plugins/Editor.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: bd6f82586c983d14881ca1a5d869b5c7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
18
Assets/FacebookSDK/Plugins/Editor/Dependencies.xml
Normal file
18
Assets/FacebookSDK/Plugins/Editor/Dependencies.xml
Normal file
@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<dependencies>
|
||||
<androidPackages>
|
||||
<androidPackage spec="com.parse.bolts:bolts-android:1.4.0" />
|
||||
<androidPackage spec="com.facebook.android:facebook-core:[11.0, 12)" />
|
||||
<androidPackage spec="com.facebook.android:facebook-applinks:[11.0, 12)" />
|
||||
<androidPackage spec="com.facebook.android:facebook-login:[11.0, 12)" />
|
||||
<androidPackage spec="com.facebook.android:facebook-share:[11.0, 12)" />
|
||||
<androidPackage spec="com.facebook.android:facebook-gamingservices:[11.0, 12)" />
|
||||
</androidPackages>
|
||||
<iosPods>
|
||||
<iosPod name="FBSDKCoreKit_Basics" version="~> 11.0" />
|
||||
<iosPod name="FBSDKCoreKit" version="~> 11.0" />
|
||||
<iosPod name="FBSDKLoginKit" version="~> 11.0" />
|
||||
<iosPod name="FBSDKShareKit" version="~> 11.0" />
|
||||
<iosPod name="FBSDKGamingServicesKit" version="~> 11.0" />
|
||||
</iosPods>
|
||||
</dependencies>
|
||||
7
Assets/FacebookSDK/Plugins/Editor/Dependencies.xml.meta
Normal file
7
Assets/FacebookSDK/Plugins/Editor/Dependencies.xml.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1543e5f9bab73423c96b42cab90363ab
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Editor/Facebook.Unity.Editor.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Editor/Facebook.Unity.Editor.dll
Normal file
Binary file not shown.
@ -0,0 +1,32 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 137a102f808364a0fb444bedefe2575d
|
||||
timeCreated: 1561663361
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Facebook.Unity.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Facebook.Unity.dll
Normal file
Binary file not shown.
32
Assets/FacebookSDK/Plugins/Facebook.Unity.dll.meta
Normal file
32
Assets/FacebookSDK/Plugins/Facebook.Unity.dll.meta
Normal file
@ -0,0 +1,32 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 08462833fafe743b8bd59914b9f52696
|
||||
timeCreated: 1561663359
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/Gameroom.meta
Normal file
8
Assets/FacebookSDK/Plugins/Gameroom.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 56e97142b4054564b818ddb4a996bcbf
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Gameroom/Facebook.Unity.Gameroom.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Gameroom/Facebook.Unity.Gameroom.dll
Normal file
Binary file not shown.
@ -0,0 +1,32 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 99f23b07cdda04baea08736723cf3aad
|
||||
timeCreated: 1561663362
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Gameroom/FacebookNamedPipeClient.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Gameroom/FacebookNamedPipeClient.dll
Normal file
Binary file not shown.
@ -0,0 +1,32 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cfd587f32401443d0b223aa6246fe5bc
|
||||
timeCreated: 1561663364
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/Settings.meta
Normal file
8
Assets/FacebookSDK/Plugins/Settings.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 89644ab96437bb3429d31f916a4c37c7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/Settings/Facebook.Unity.Settings.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/Settings/Facebook.Unity.Settings.dll
Normal file
Binary file not shown.
@ -0,0 +1,32 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c49f2b3ca212b47fc9cd8ce655177c89
|
||||
timeCreated: 1561663363
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/Plugins/iOS.meta
Normal file
8
Assets/FacebookSDK/Plugins/iOS.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d215dd8cabdd0444795d89904078812a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
BIN
Assets/FacebookSDK/Plugins/iOS/Facebook.Unity.IOS.dll
Normal file
BIN
Assets/FacebookSDK/Plugins/iOS/Facebook.Unity.IOS.dll
Normal file
Binary file not shown.
154
Assets/FacebookSDK/Plugins/iOS/Facebook.Unity.IOS.dll.meta
Normal file
154
Assets/FacebookSDK/Plugins/iOS/Facebook.Unity.IOS.dll.meta
Normal file
@ -0,0 +1,154 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 516664901472b44fe83b720b195b5b60
|
||||
timeCreated: 1561663362
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
platformData:
|
||||
data:
|
||||
first:
|
||||
'': Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Android: 1
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXIntel: 1
|
||||
Exclude OSXIntel64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WebGL: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
Exclude iOS: 0
|
||||
Exclude tvOS: 1
|
||||
data:
|
||||
first:
|
||||
'': Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OS: AnyOS
|
||||
data:
|
||||
first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: ARMv7
|
||||
data:
|
||||
first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
data:
|
||||
first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
data:
|
||||
first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
data:
|
||||
first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
data:
|
||||
first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXIntel
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXIntel64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
data:
|
||||
first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
data:
|
||||
first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
data:
|
||||
first:
|
||||
tvOS: tvOS
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/SDK.meta
Normal file
8
Assets/FacebookSDK/SDK.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ee89b335532a5f488b376b06860b7de
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/SDK/Editor.meta
Normal file
8
Assets/FacebookSDK/SDK/Editor.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e3fef18aa44be6f468bc58c1256eb010
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
8
Assets/FacebookSDK/SDK/Editor/iOS.meta
Normal file
8
Assets/FacebookSDK/SDK/Editor/iOS.meta
Normal file
@ -0,0 +1,8 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 204ee537bef79284ca9b2f4b9aa6d3da
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
35
Assets/FacebookSDK/SDK/Editor/iOS/FBSDK+Internal.h
Normal file
35
Assets/FacebookSDK/SDK/Editor/iOS/FBSDK+Internal.h
Normal file
@ -0,0 +1,35 @@
|
||||
// Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
//
|
||||
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
// copy, modify, and distribute this software in source code or binary form for use
|
||||
// in connection with the web services and APIs provided by Facebook.
|
||||
//
|
||||
// As with any software that integrates with the Facebook platform, your use of
|
||||
// this software is subject to the Facebook Developer Principles and Policies
|
||||
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
// included in all copies or substantial portions of the software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
// An internal header for declaring interfaces for internal methods in the FacebookSDK
|
||||
// These are INTERNAL APIs that can change without warning and should not be used directly.
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface FBSDKSettings(UnityInternal)
|
||||
|
||||
+ (NSString *)userAgentSuffix;
|
||||
+ (void)setUserAgentSuffix:(NSString *)suffix;
|
||||
|
||||
@end
|
||||
|
||||
@interface FBSDKShareLinkContent (UnityInternal)
|
||||
|
||||
// Deprecated parameters for Feed Dialog - for usage with Unity only.
|
||||
@property (nonatomic, copy) NSDictionary *feedParameters;
|
||||
|
||||
@end
|
||||
59
Assets/FacebookSDK/SDK/Editor/iOS/FBSDK+Internal.h.meta
Normal file
59
Assets/FacebookSDK/SDK/Editor/iOS/FBSDK+Internal.h.meta
Normal file
@ -0,0 +1,59 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 66952bdb75cae4c348f3d0521da59bfd
|
||||
timeCreated: 1435164989
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Android:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
Linux:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
Linux64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
OSXIntel:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OSXIntel64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
SamsungTV:
|
||||
enabled: 0
|
||||
settings:
|
||||
STV_MODEL: STANDARD_13
|
||||
Win:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Win64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
iOS:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
44
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.h
Normal file
44
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.h
Normal file
@ -0,0 +1,44 @@
|
||||
// Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
//
|
||||
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
// copy, modify, and distribute this software in source code or binary form for use
|
||||
// in connection with the web services and APIs provided by Facebook.
|
||||
//
|
||||
// As with any software that integrates with the Facebook platform, your use of
|
||||
// this software is subject to the Facebook Developer Principles and Policies
|
||||
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
// included in all copies or substantial portions of the software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
#import "AppDelegateListener.h"
|
||||
|
||||
//if we are on a version of unity that has the version number defined use it, otherwise we have added it ourselves in the post build step
|
||||
#if HAS_UNITY_VERSION_DEF
|
||||
#include "UnityTrampolineConfigure.h"
|
||||
#endif
|
||||
|
||||
@interface FBUnityInterface : NSObject <AppDelegateListener>
|
||||
{
|
||||
//If you make changes in here make the same changes in Assets/Facebook/Scripts/NativeDialogModes.cs
|
||||
enum ShareDialogMode
|
||||
{
|
||||
AUTOMATIC = 0,
|
||||
NATIVE = 1,
|
||||
WEB = 2,
|
||||
FEED = 3,
|
||||
};
|
||||
}
|
||||
|
||||
@property (assign, nonatomic) BOOL useFrictionlessRequests;
|
||||
@property (nonatomic) ShareDialogMode shareDialogMode;
|
||||
|
||||
+ (FBUnityInterface *)sharedInstance;
|
||||
@end
|
||||
57
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.h.meta
Normal file
57
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.h.meta
Normal file
@ -0,0 +1,57 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 511e95bcdad89425999ccbb3e315246a
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Android:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
Linux:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
Linux64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
OSXIntel:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OSXIntel64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
SamsungTV:
|
||||
enabled: 0
|
||||
settings:
|
||||
STV_MODEL: STANDARD_13
|
||||
Win:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Win64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
iOS:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
803
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.mm
Normal file
803
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.mm
Normal file
@ -0,0 +1,803 @@
|
||||
// Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
//
|
||||
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
// copy, modify, and distribute this software in source code or binary form for use
|
||||
// in connection with the web services and APIs provided by Facebook.
|
||||
//
|
||||
// As with any software that integrates with the Facebook platform, your use of
|
||||
// this software is subject to the Facebook Developer Principles and Policies
|
||||
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
// included in all copies or substantial portions of the software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
#include "FBUnityInterface.h"
|
||||
|
||||
#import <FBSDKCoreKit/FBSDKCoreKit.h>
|
||||
#import <FBSDKLoginKit/FBSDKLoginKit.h>
|
||||
#import <FBSDKShareKit/FBSDKShareKit.h>
|
||||
#import <FBSDKGamingServicesKit/FBSDKGamingServicesKit.h>
|
||||
#import <Foundation/NSJSONSerialization.h>
|
||||
|
||||
#include "FBUnitySDKDelegate.h"
|
||||
#include "FBUnityUtility.h"
|
||||
#include "FBSDK+Internal.h"
|
||||
|
||||
@interface FBUnityInterface()
|
||||
|
||||
@property (nonatomic, copy) NSString *openURLString;
|
||||
|
||||
@end
|
||||
|
||||
@implementation FBUnityInterface
|
||||
|
||||
#pragma mark Object Initialization
|
||||
|
||||
+ (FBUnityInterface *)sharedInstance
|
||||
{
|
||||
static dispatch_once_t pred;
|
||||
static FBUnityInterface *shared = nil;
|
||||
|
||||
dispatch_once(&pred, ^{
|
||||
shared = [[FBUnityInterface alloc] init];
|
||||
shared.shareDialogMode = ShareDialogMode::AUTOMATIC;
|
||||
});
|
||||
|
||||
return shared;
|
||||
}
|
||||
|
||||
+ (void)load
|
||||
{
|
||||
UnityRegisterAppDelegateListener([FBUnityInterface sharedInstance]);
|
||||
}
|
||||
|
||||
#pragma mark - App (Delegate) Lifecycle
|
||||
|
||||
// didBecomeActive: and onOpenURL: are called by Unity's AppController
|
||||
// because we implement <AppDelegateListener> and registered via UnityRegisterAppDelegateListener(...) above.
|
||||
|
||||
- (void)didFinishLaunching:(NSNotification *)notification
|
||||
{
|
||||
[[FBSDKApplicationDelegate sharedInstance] application:[UIApplication sharedApplication]
|
||||
didFinishLaunchingWithOptions:notification.userInfo];
|
||||
}
|
||||
|
||||
- (void)didBecomeActive:(NSNotification *)notification
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
- (void)onOpenURL:(NSNotification *)notification
|
||||
{
|
||||
NSURL *url = notification.userInfo[@"url"];
|
||||
BOOL isHandledByFBSDK = [[FBSDKApplicationDelegate sharedInstance] application:[UIApplication sharedApplication]
|
||||
openURL:url
|
||||
sourceApplication:notification.userInfo[@"sourceApplication"]
|
||||
annotation:notification.userInfo[@"annotation"]];
|
||||
if (!isHandledByFBSDK) {
|
||||
[FBUnityInterface sharedInstance].openURLString = [url absoluteString];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma mark - Implementation
|
||||
|
||||
- (void)configureAppId:(const char *)appId
|
||||
frictionlessRequests:(bool)frictionlessRequests
|
||||
urlSuffix:(const char *)urlSuffix
|
||||
{
|
||||
self.useFrictionlessRequests = frictionlessRequests;
|
||||
|
||||
if(appId) {
|
||||
[FBSDKSettings setAppID:[FBUnityUtility stringFromCString:appId]];
|
||||
}
|
||||
|
||||
if(urlSuffix && strlen(urlSuffix) > 0) {
|
||||
[FBSDKSettings setAppURLSchemeSuffix:[FBUnityUtility stringFromCString:urlSuffix]];
|
||||
}
|
||||
|
||||
NSDictionary *userData = [self getAccessTokenUserData] ?: @{};
|
||||
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnInitComplete userData:userData requestId:0];
|
||||
}
|
||||
|
||||
- (void)logInWithPublishPermissions:(int) requestId
|
||||
scope:(const char *)scope
|
||||
{
|
||||
[self startLogin:requestId scope:scope isPublishPermLogin:YES];
|
||||
}
|
||||
|
||||
- (void)logInWithReadPermissions:(int) requestId
|
||||
scope:(const char *)scope
|
||||
{
|
||||
[self startLogin:requestId scope:scope isPublishPermLogin:NO];
|
||||
}
|
||||
|
||||
- (void)startLogin:(int) requestId
|
||||
scope:(const char *)scope
|
||||
isPublishPermLogin:(BOOL)isPublishPermLogin
|
||||
{
|
||||
NSString *scopeStr = [FBUnityUtility stringFromCString:scope];
|
||||
NSArray *permissions = nil;
|
||||
if(scope && strlen(scope) > 0) {
|
||||
permissions = [scopeStr componentsSeparatedByString:@","];
|
||||
}
|
||||
|
||||
void (^loginHandler)(FBSDKLoginManagerLoginResult *,NSError *) = ^(FBSDKLoginManagerLoginResult *result, NSError *error) {
|
||||
if (error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnLoginComplete error:error requestId:requestId];
|
||||
return;
|
||||
} else if (result.isCancelled) {
|
||||
[FBUnityUtility sendCancelToUnity:FBUnityMessageName_OnLoginComplete requestId:requestId];
|
||||
return;
|
||||
}
|
||||
|
||||
if ([self tryCompleteLoginWithRequestId:requestId]) {
|
||||
return;
|
||||
} else {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnLoginComplete errorMessage:@"Unknown login error" requestId:requestId];
|
||||
}
|
||||
};
|
||||
|
||||
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
|
||||
[login logInWithPermissions:permissions
|
||||
fromViewController:nil
|
||||
handler:loginHandler];
|
||||
}
|
||||
|
||||
- (void)loginWithTrackingPreference:(int)requestId
|
||||
scope:(const char *)scope
|
||||
tracking:(const char *)tracking
|
||||
nonce:(const char *)nonce
|
||||
{
|
||||
NSString *scopeStr = [FBUnityUtility stringFromCString:scope];
|
||||
NSArray *permissions = nil;
|
||||
if(scope && strlen(scope) > 0) {
|
||||
permissions = [scopeStr componentsSeparatedByString:@","];
|
||||
}
|
||||
|
||||
NSString *trackingStr = [FBUnityUtility stringFromCString:tracking];
|
||||
NSString *nonceStr = nil;
|
||||
if (nonce) {
|
||||
nonceStr = [FBUnityUtility stringFromCString:nonce];
|
||||
}
|
||||
FBSDKLoginConfiguration *config;
|
||||
if (nonce) {
|
||||
config = [[FBSDKLoginConfiguration alloc] initWithPermissions:permissions tracking:([trackingStr isEqualToString:@"enabled"] ? FBSDKLoginTrackingEnabled : FBSDKLoginTrackingLimited) nonce:nonceStr];
|
||||
} else {
|
||||
config = [[FBSDKLoginConfiguration alloc] initWithPermissions:permissions tracking:([trackingStr isEqualToString:@"enabled"] ? FBSDKLoginTrackingEnabled : FBSDKLoginTrackingLimited)];
|
||||
}
|
||||
|
||||
void (^loginHandler)(FBSDKLoginManagerLoginResult *,NSError *) = ^(FBSDKLoginManagerLoginResult *result, NSError *error) {
|
||||
if (error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnLoginComplete error:error requestId:requestId];
|
||||
return;
|
||||
} else if (result.isCancelled) {
|
||||
[FBUnityUtility sendCancelToUnity:FBUnityMessageName_OnLoginComplete requestId:requestId];
|
||||
return;
|
||||
}
|
||||
|
||||
if ([self tryCompleteLoginWithRequestId:requestId]) {
|
||||
return;
|
||||
} else {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnLoginComplete errorMessage:@"Unknown login error" requestId:requestId];
|
||||
}
|
||||
};
|
||||
|
||||
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
|
||||
[login logInFromViewController:nil configuration:config completion:loginHandler];
|
||||
}
|
||||
|
||||
- (void)logOut
|
||||
{
|
||||
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
|
||||
[login logOut];
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnLogoutComplete userData:@{} requestId:0];
|
||||
}
|
||||
|
||||
- (void)appRequestWithRequestId:(int)requestId
|
||||
message:(const char *)message
|
||||
actionType:(const char *)actionType
|
||||
objectId:(const char *)objectId
|
||||
to:(const char **)to
|
||||
toLength:(int)toLength
|
||||
filters:(const char *)filters
|
||||
data:(const char *)data
|
||||
title:(const char *)title
|
||||
{
|
||||
FBSDKGameRequestContent *content = [[FBSDKGameRequestContent alloc] init];
|
||||
content.message = [FBUnityUtility stringFromCString:message];
|
||||
content.actionType = [FBUnityUtility gameRequestActionTypeFromString:[FBUnityUtility stringFromCString:actionType]];
|
||||
content.objectID = [FBUnityUtility stringFromCString:objectId];
|
||||
if(to && toLength) {
|
||||
NSMutableArray *toArray = [NSMutableArray array];
|
||||
for(int i = 0; i < toLength; i++) {
|
||||
[toArray addObject:[FBUnityUtility stringFromCString:to[i]]];
|
||||
}
|
||||
content.recipients = toArray;
|
||||
}
|
||||
content.filters = [FBUnityUtility gameRequestFilterFromString:[FBUnityUtility stringFromCString:filters]];
|
||||
content.data = [FBUnityUtility stringFromCString:data];
|
||||
content.title = [FBUnityUtility stringFromCString:title];
|
||||
|
||||
FBUnitySDKDelegate *delegate = [FBUnitySDKDelegate instanceWithRequestID:requestId];
|
||||
NSError *error;
|
||||
FBSDKGameRequestDialog *dialog = [[FBSDKGameRequestDialog alloc] init];
|
||||
dialog.content = content;
|
||||
dialog.delegate = delegate;
|
||||
dialog.frictionlessRequestsEnabled = self.useFrictionlessRequests;
|
||||
|
||||
if (![dialog validateWithError:&error]) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnAppRequestsComplete error:error requestId:requestId];
|
||||
}
|
||||
if (![dialog show]) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnAppRequestsComplete errorMessage:@"Failed to show request dialog" requestId:requestId];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)shareLinkWithRequestId:(int)requestId
|
||||
contentURL:(const char *)contentURL
|
||||
contentTitle:(const char *)contentTitle
|
||||
contentDescription:(const char *)contentDescription
|
||||
photoURL:(const char *)photoURL
|
||||
{
|
||||
FBSDKShareLinkContent *linkContent = [[FBSDKShareLinkContent alloc] init];
|
||||
|
||||
NSString *contentUrlStr = [FBUnityUtility stringFromCString:contentURL];
|
||||
if (contentUrlStr) {
|
||||
linkContent.contentURL = [NSURL URLWithString:contentUrlStr];
|
||||
}
|
||||
|
||||
[self shareContentWithRequestId:requestId
|
||||
shareContent:linkContent
|
||||
dialogMode:[self getDialogMode]];
|
||||
}
|
||||
|
||||
- (void)shareFeedWithRequestId:(int)requestId
|
||||
toId:(const char *)toID
|
||||
link:(const char *)link
|
||||
linkName:(const char *)linkName
|
||||
linkCaption:(const char *)linkCaption
|
||||
linkDescription:(const char *)linkDescription
|
||||
picture:(const char *)picture
|
||||
mediaSource:(const char *)mediaSource
|
||||
{
|
||||
FBSDKShareLinkContent *linkContent = [[FBSDKShareLinkContent alloc] init];
|
||||
NSString *contentUrlStr = [FBUnityUtility stringFromCString:link];
|
||||
if (contentUrlStr) {
|
||||
linkContent.contentURL = [NSURL URLWithString:contentUrlStr];
|
||||
}
|
||||
|
||||
NSMutableDictionary *feedParameters = [[NSMutableDictionary alloc] init];
|
||||
NSString *toStr = [FBUnityUtility stringFromCString:toID];
|
||||
if (toStr) {
|
||||
[feedParameters setObject:toStr forKey:@"to"];
|
||||
}
|
||||
|
||||
NSString *captionStr = [FBUnityUtility stringFromCString:linkCaption];
|
||||
if (captionStr) {
|
||||
[feedParameters setObject:captionStr forKey:@"caption"];
|
||||
}
|
||||
|
||||
NSString *sourceStr = [FBUnityUtility stringFromCString:mediaSource];
|
||||
if (sourceStr) {
|
||||
[feedParameters setObject:sourceStr forKey:@"source"];
|
||||
}
|
||||
|
||||
[linkContent addParameters:feedParameters bridgeOptions:FBSDKShareBridgeOptionsDefault];
|
||||
[self shareContentWithRequestId:requestId
|
||||
shareContent:linkContent
|
||||
dialogMode:FBSDKShareDialogModeFeedWeb];
|
||||
}
|
||||
|
||||
- (void)shareContentWithRequestId:(int)requestId
|
||||
shareContent:(FBSDKShareLinkContent *)linkContent
|
||||
dialogMode:(FBSDKShareDialogMode)dialogMode
|
||||
{
|
||||
FBSDKShareDialog *dialog = [[FBSDKShareDialog alloc] init];
|
||||
dialog.shareContent = linkContent;
|
||||
dialog.mode = dialogMode;
|
||||
FBUnitySDKDelegate *delegate = [FBUnitySDKDelegate instanceWithRequestID:requestId];
|
||||
dialog.delegate = delegate;
|
||||
|
||||
NSError *error;
|
||||
if (![dialog validateWithError:&error]) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnShareLinkComplete error:error requestId:requestId];
|
||||
}
|
||||
if (![dialog show]) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnShareLinkComplete errorMessage:@"Failed to show share dialog" requestId:requestId];
|
||||
}
|
||||
}
|
||||
|
||||
- (FBSDKShareDialogMode)getDialogMode
|
||||
{
|
||||
switch (self.shareDialogMode) {
|
||||
case ShareDialogMode::AUTOMATIC:
|
||||
return FBSDKShareDialogModeAutomatic;
|
||||
case ShareDialogMode::NATIVE:
|
||||
return FBSDKShareDialogModeNative;
|
||||
case ShareDialogMode::WEB:
|
||||
return FBSDKShareDialogModeWeb;
|
||||
case ShareDialogMode::FEED:
|
||||
return FBSDKShareDialogModeFeedWeb;
|
||||
default:
|
||||
NSLog(@"Unexpected dialog mode: %@", [NSNumber numberWithInt:self.shareDialogMode]);
|
||||
return FBSDKShareDialogModeAutomatic;
|
||||
}
|
||||
}
|
||||
|
||||
- (BOOL)tryCompleteLoginWithRequestId:(int) requestId
|
||||
{
|
||||
NSMutableDictionary *userData = [[NSMutableDictionary alloc] init];
|
||||
NSDictionary *accessTokenUserData = [self getAccessTokenUserData];
|
||||
NSDictionary *authenticationTokenUserData = [self getAuthenticationTokenUserData];
|
||||
if (accessTokenUserData) {
|
||||
[userData addEntriesFromDictionary:accessTokenUserData];
|
||||
}
|
||||
if (authenticationTokenUserData) {
|
||||
[userData addEntriesFromDictionary:authenticationTokenUserData];
|
||||
}
|
||||
if (userData) {
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnLoginComplete
|
||||
userData:[userData copy]
|
||||
requestId:requestId];
|
||||
return YES;
|
||||
} else {
|
||||
return NO;
|
||||
}
|
||||
}
|
||||
|
||||
- (NSDictionary *)getAccessTokenUserData
|
||||
{
|
||||
FBSDKAccessToken *token = [FBSDKAccessToken currentAccessToken];
|
||||
if (token) {
|
||||
// Old v3 sdk tokens don't always contain a UserID. If the user ID is null
|
||||
// treat the token as bad and clear it. These values are all required
|
||||
// on c# side for initlizing a token.
|
||||
NSDictionary *userData = [FBUnityUtility getUserDataFromAccessToken:token];
|
||||
if (userData) {
|
||||
return userData;
|
||||
} else {
|
||||
// The token is missing a required value. Clear the token
|
||||
[[[FBSDKLoginManager alloc] init] logOut];
|
||||
}
|
||||
}
|
||||
|
||||
return nil;
|
||||
}
|
||||
|
||||
- (NSDictionary *)getAuthenticationTokenUserData
|
||||
{
|
||||
FBSDKAuthenticationToken *token = [FBSDKAuthenticationToken currentAuthenticationToken];
|
||||
if (token.tokenString && token.nonce) {
|
||||
return @{
|
||||
@"auth_token_string": token.tokenString,
|
||||
@"auth_nonce": token.nonce
|
||||
};
|
||||
}
|
||||
|
||||
return nil;
|
||||
}
|
||||
|
||||
@end
|
||||
|
||||
#pragma mark - Actual Unity C# interface (extern C)
|
||||
|
||||
extern "C" {
|
||||
|
||||
void IOSFBSendViewHierarchy(const char *_tree )
|
||||
{
|
||||
Class FBUnityUtility = NSClassFromString(@"FBSDKCodelessIndexer");
|
||||
[FBUnityUtility performSelector:NSSelectorFromString(@"uploadIndexing:")
|
||||
withObject:[NSString stringWithUTF8String:_tree]];
|
||||
}
|
||||
|
||||
void IOSFBInit(const char *_appId, bool _frictionlessRequests, const char *_urlSuffix, const char *_userAgentSuffix)
|
||||
{
|
||||
// Set the user agent before calling init to ensure that calls made during
|
||||
// init use the user agent suffix.
|
||||
[FBSDKSettings setUserAgentSuffix:[FBUnityUtility stringFromCString:_userAgentSuffix]];
|
||||
|
||||
[[FBUnityInterface sharedInstance] configureAppId:_appId
|
||||
frictionlessRequests:_frictionlessRequests
|
||||
urlSuffix:_urlSuffix];
|
||||
[FBSDKAppEvents setIsUnityInit:true];
|
||||
[FBSDKAppEvents sendEventBindingsToUnity];
|
||||
}
|
||||
|
||||
void IOSFBEnableProfileUpdatesOnAccessTokenChange(bool enable)
|
||||
{
|
||||
[FBSDKProfile enableUpdatesOnAccessTokenChange:enable];
|
||||
}
|
||||
|
||||
void IOSFBLoginWithTrackingPreference(int requestId, const char *scope, const char *tracking, const char *nonce)
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] loginWithTrackingPreference:requestId scope:scope
|
||||
tracking:tracking
|
||||
nonce:nonce];
|
||||
}
|
||||
|
||||
void IOSFBLogInWithReadPermissions(int requestId,
|
||||
const char *scope)
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] logInWithReadPermissions:requestId scope:scope];
|
||||
}
|
||||
|
||||
void IOSFBLogInWithPublishPermissions(int requestId,
|
||||
const char *scope)
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] logInWithPublishPermissions:requestId scope:scope];
|
||||
}
|
||||
|
||||
void IOSFBLogOut()
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] logOut];
|
||||
}
|
||||
|
||||
char* IOSFBCurrentAuthenticationToken()
|
||||
{
|
||||
FBSDKAuthenticationToken *token = [FBSDKAuthenticationToken currentAuthenticationToken];
|
||||
NSString *str = @"";
|
||||
if (token.tokenString && token.nonce) {
|
||||
try {
|
||||
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:@{
|
||||
@"auth_token_string": token.tokenString,
|
||||
@"auth_nonce": token.nonce
|
||||
} options:NSJSONWritingPrettyPrinted error:nil];
|
||||
if (jsonData) {
|
||||
str = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
|
||||
}
|
||||
} catch (NSException *exception) {
|
||||
NSLog(@"Fail to parse AuthenticationToken");
|
||||
}
|
||||
}
|
||||
const char* string = [str UTF8String];
|
||||
char* res = (char*)malloc(strlen(string) + 1);
|
||||
strcpy(res, string);
|
||||
return res;
|
||||
}
|
||||
|
||||
char* IOSFBCurrentProfile()
|
||||
{
|
||||
FBSDKProfile *profile = [FBSDKProfile currentProfile];
|
||||
NSString *str = @"";
|
||||
NSMutableDictionary<NSString *, id> *data = [NSMutableDictionary new];
|
||||
if (profile.userID) {
|
||||
data[@"userID"] = profile.userID;
|
||||
}
|
||||
if (profile.firstName) {
|
||||
data[@"firstName"] = profile.firstName;
|
||||
}
|
||||
if (profile.middleName) {
|
||||
data[@"middleName"] = profile.middleName;
|
||||
}
|
||||
if (profile.lastName) {
|
||||
data[@"lastName"] = profile.lastName;
|
||||
}
|
||||
if (profile.name) {
|
||||
data[@"name"] = profile.name;
|
||||
}
|
||||
if (profile.email) {
|
||||
data[@"email"] = profile.email;
|
||||
}
|
||||
if (profile.imageURL) {
|
||||
data[@"imageURL"] = profile.imageURL.absoluteString;
|
||||
}
|
||||
if (profile.linkURL) {
|
||||
data[@"linkURL"] = profile.linkURL.absoluteString;
|
||||
}
|
||||
if (profile.friendIDs) {
|
||||
data[@"friendIDs"] = [profile.friendIDs componentsJoinedByString:@","];
|
||||
}
|
||||
if (profile.birthday) {
|
||||
data[@"birthday"] = [NSString stringWithFormat:@"%@", @((time_t)[profile.birthday timeIntervalSince1970])];
|
||||
}
|
||||
if (profile.ageRange) {
|
||||
if (profile.ageRange.min) {
|
||||
data[@"ageMin"] = profile.ageRange.min.stringValue;
|
||||
}
|
||||
if (profile.ageRange.max) {
|
||||
data[@"ageMax"] = profile.ageRange.max.stringValue;
|
||||
}
|
||||
}
|
||||
|
||||
if (profile.hometown) {
|
||||
data[@"hometown_id"] = profile.hometown.id;
|
||||
data[@"hometown_name"] = profile.hometown.name;
|
||||
}
|
||||
|
||||
if (profile.location) {
|
||||
data[@"location_id"] = profile.location.id;
|
||||
data[@"location_name"] = profile.location.name;
|
||||
}
|
||||
|
||||
if (profile.gender) {
|
||||
data[@"gender"] = profile.gender;
|
||||
}
|
||||
|
||||
try {
|
||||
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:data options:NSJSONWritingPrettyPrinted error:nil];
|
||||
if (jsonData) {
|
||||
str = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
|
||||
}
|
||||
} catch (NSException *exception) {
|
||||
NSLog(@"Fail to parse Profile");
|
||||
}
|
||||
const char* string = [str UTF8String];
|
||||
char* res = (char*)malloc(strlen(string) + 1);
|
||||
strcpy(res, string);
|
||||
return res;
|
||||
}
|
||||
|
||||
void IOSFBSetPushNotificationsDeviceTokenString(const char *token)
|
||||
{
|
||||
[FBSDKAppEvents setPushNotificationsDeviceTokenString:[FBUnityUtility stringFromCString:token]];
|
||||
}
|
||||
|
||||
void IOSFBSetShareDialogMode(int mode)
|
||||
{
|
||||
[FBUnityInterface sharedInstance].shareDialogMode = static_cast<ShareDialogMode>(mode);
|
||||
}
|
||||
|
||||
void IOSFBAppRequest(int requestId,
|
||||
const char *message,
|
||||
const char *actionType,
|
||||
const char *objectId,
|
||||
const char **to,
|
||||
int toLength,
|
||||
const char *filters,
|
||||
const char **excludeIds, //not supported on mobile
|
||||
int excludeIdsLength, //not supported on mobile
|
||||
bool hasMaxRecipients, //not supported on mobile
|
||||
int maxRecipients, //not supported on mobile
|
||||
const char *data,
|
||||
const char *title)
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] appRequestWithRequestId: requestId
|
||||
message: message
|
||||
actionType: actionType
|
||||
objectId: objectId
|
||||
to: to
|
||||
toLength: toLength
|
||||
filters: filters
|
||||
data: data
|
||||
title: title];
|
||||
}
|
||||
|
||||
void IOSFBGetAppLink(int requestId)
|
||||
{
|
||||
NSURL *url = [NSURL URLWithString:[FBUnityInterface sharedInstance].openURLString];
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnGetAppLinkComplete
|
||||
userData:[FBUnityUtility appLinkDataFromUrl:url]
|
||||
requestId:requestId];
|
||||
[FBUnityInterface sharedInstance].openURLString = nil;
|
||||
}
|
||||
|
||||
void IOSFBShareLink(int requestId,
|
||||
const char *contentURL,
|
||||
const char *contentTitle,
|
||||
const char *contentDescription,
|
||||
const char *photoURL)
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] shareLinkWithRequestId:requestId
|
||||
contentURL:contentURL
|
||||
contentTitle:contentTitle
|
||||
contentDescription:contentDescription
|
||||
photoURL:photoURL];
|
||||
}
|
||||
|
||||
void IOSFBFeedShare(int requestId,
|
||||
const char *toId,
|
||||
const char *link,
|
||||
const char *linkName,
|
||||
const char *linkCaption,
|
||||
const char *linkDescription,
|
||||
const char *picture,
|
||||
const char *mediaSource)
|
||||
{
|
||||
[[FBUnityInterface sharedInstance] shareFeedWithRequestId:requestId
|
||||
toId:toId
|
||||
link:link
|
||||
linkName:linkName
|
||||
linkCaption:linkCaption
|
||||
linkDescription:linkDescription
|
||||
picture:picture
|
||||
mediaSource:mediaSource];
|
||||
}
|
||||
|
||||
void IOSFBAppEventsActivateApp()
|
||||
{
|
||||
[FBSDKAppEvents activateApp];
|
||||
}
|
||||
|
||||
void IOSFBAppEventsLogEvent(const char *eventName,
|
||||
double valueToSum,
|
||||
int numParams,
|
||||
const char **paramKeys,
|
||||
const char **paramVals)
|
||||
{
|
||||
NSDictionary *params = [FBUnityUtility dictionaryFromKeys:paramKeys values:paramVals length:numParams];
|
||||
[FBSDKAppEvents logEvent:[FBUnityUtility stringFromCString:eventName] valueToSum:valueToSum parameters:params];
|
||||
}
|
||||
|
||||
void IOSFBAppEventsLogPurchase(double amount,
|
||||
const char *currency,
|
||||
int numParams,
|
||||
const char **paramKeys,
|
||||
const char **paramVals)
|
||||
{
|
||||
NSDictionary *params = [FBUnityUtility dictionaryFromKeys:paramKeys values:paramVals length:numParams];
|
||||
[FBSDKAppEvents logPurchase:amount currency:[FBUnityUtility stringFromCString:currency] parameters:params];
|
||||
}
|
||||
|
||||
void IOSFBAppEventsSetLimitEventUsage(BOOL limitEventUsage)
|
||||
{
|
||||
[FBSDKSettings setLimitEventAndDataUsage:limitEventUsage];
|
||||
}
|
||||
|
||||
void IOSFBAutoLogAppEventsEnabled(BOOL autoLogAppEventsEnabledID)
|
||||
{
|
||||
[FBSDKSettings setAutoLogAppEventsEnabled:autoLogAppEventsEnabledID];
|
||||
}
|
||||
|
||||
void IOSFBAdvertiserIDCollectionEnabled(BOOL advertiserIDCollectionEnabledID)
|
||||
{
|
||||
[FBSDKSettings setAdvertiserIDCollectionEnabled:advertiserIDCollectionEnabledID];
|
||||
}
|
||||
|
||||
BOOL IOSFBAdvertiserTrackingEnabled(BOOL advertiserTrackingEnabled)
|
||||
{
|
||||
return [FBSDKSettings setAdvertiserTrackingEnabled:advertiserTrackingEnabled];
|
||||
}
|
||||
|
||||
char* IOSFBSdkVersion()
|
||||
{
|
||||
const char* string = [[FBSDKSettings sdkVersion] UTF8String];
|
||||
char* res = (char*)malloc(strlen(string) + 1);
|
||||
strcpy(res, string);
|
||||
return res;
|
||||
}
|
||||
|
||||
void IOSFBSetUserID(const char *userID)
|
||||
{
|
||||
[FBSDKAppEvents setUserID:[FBUnityUtility stringFromCString:userID]];
|
||||
}
|
||||
|
||||
void IOSFBOpenGamingServicesFriendFinder(int requestId)
|
||||
{
|
||||
[FBSDKFriendFinderDialog
|
||||
launchFriendFinderDialogWithCompletionHandler:^(BOOL success, NSError * _Nullable error) {
|
||||
if (!success || error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnFriendFinderComplete error:error requestId:requestId];
|
||||
} else {
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnFriendFinderComplete
|
||||
userData:NULL
|
||||
requestId:requestId];
|
||||
}
|
||||
}];
|
||||
}
|
||||
|
||||
void IOSFBSetDataProcessingOptions(
|
||||
const char** options,
|
||||
int numOptions,
|
||||
int country,
|
||||
int state) {
|
||||
NSMutableArray<NSString*>* array = [[NSMutableArray alloc] init];
|
||||
for (int i = 0; i < numOptions; i++) {
|
||||
NSString* option = [FBUnityUtility stringFromCString:options[i]];
|
||||
if (option) {
|
||||
[array addObject:option];
|
||||
}
|
||||
}
|
||||
[FBSDKSettings setDataProcessingOptions:array country:country state:state];
|
||||
}
|
||||
|
||||
void IOSFBUploadImageToMediaLibrary(int requestId,
|
||||
const char *caption,
|
||||
const char *imageUri,
|
||||
bool shouldLaunchMediaDialog)
|
||||
{
|
||||
NSString *captionString = [FBUnityUtility stringFromCString:caption];
|
||||
NSString *imageUriString = [FBUnityUtility stringFromCString:imageUri];
|
||||
UIImage *image = [UIImage imageWithContentsOfFile:imageUriString];
|
||||
|
||||
FBSDKGamingImageUploaderConfiguration *config =
|
||||
[[FBSDKGamingImageUploaderConfiguration alloc]
|
||||
initWithImage:image
|
||||
caption:captionString
|
||||
shouldLaunchMediaDialog:shouldLaunchMediaDialog ? YES: NO];
|
||||
|
||||
[FBSDKGamingImageUploader
|
||||
uploadImageWithConfiguration:config
|
||||
andResultCompletionHandler:^(BOOL success, id result, NSError * _Nullable error) {
|
||||
if (!success || error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnUploadImageToMediaLibraryComplete
|
||||
error:error
|
||||
requestId:requestId];
|
||||
} else {
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnUploadImageToMediaLibraryComplete
|
||||
userData:@{@"id":result[@"id"]}
|
||||
requestId:requestId];
|
||||
}
|
||||
}];
|
||||
|
||||
}
|
||||
|
||||
void IOSFBUploadVideoToMediaLibrary(int requestId,
|
||||
const char *caption,
|
||||
const char *videoUri)
|
||||
{
|
||||
NSString *captionString = [FBUnityUtility stringFromCString:caption];
|
||||
NSString *videoUriString = [FBUnityUtility stringFromCString:videoUri];
|
||||
NSURL *videoURL = [NSURL fileURLWithPath:videoUriString];
|
||||
|
||||
FBSDKGamingVideoUploaderConfiguration *config =
|
||||
[[FBSDKGamingVideoUploaderConfiguration alloc]
|
||||
initWithVideoURL:videoURL
|
||||
caption:captionString];
|
||||
|
||||
[FBSDKGamingVideoUploader
|
||||
uploadVideoWithConfiguration:config
|
||||
andResultCompletionHandler:^(BOOL success, id result, NSError * _Nullable error) {
|
||||
if (!success || error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnUploadVideoToMediaLibraryComplete
|
||||
error:error
|
||||
requestId:requestId];
|
||||
} else {
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnUploadVideoToMediaLibraryComplete
|
||||
userData:@{@"id":result[@"id"]}
|
||||
requestId:requestId];
|
||||
}
|
||||
}];
|
||||
|
||||
}
|
||||
|
||||
char* IOSFBGetUserID()
|
||||
{
|
||||
NSString *userID = [FBSDKAppEvents userID];
|
||||
if (!userID) {
|
||||
return NULL;
|
||||
}
|
||||
const char* string = [userID UTF8String];
|
||||
char* res = (char*)malloc(strlen(string) + 1);
|
||||
strcpy(res, string);
|
||||
return res;
|
||||
}
|
||||
|
||||
void IOSFBUpdateUserProperties(int numParams,
|
||||
const char **paramKeys,
|
||||
const char **paramVals)
|
||||
{ }
|
||||
|
||||
void IOSFBFetchDeferredAppLink(int requestId)
|
||||
{
|
||||
[FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error) {
|
||||
if (error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnFetchDeferredAppLinkComplete error:error requestId:requestId];
|
||||
return;
|
||||
}
|
||||
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnFetchDeferredAppLinkComplete
|
||||
userData:[FBUnityUtility appLinkDataFromUrl:url]
|
||||
requestId:requestId];
|
||||
}];
|
||||
}
|
||||
|
||||
void IOSFBRefreshCurrentAccessToken(int requestId)
|
||||
{
|
||||
[FBSDKAccessToken refreshCurrentAccessToken:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
|
||||
if (error) {
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnRefreshCurrentAccessTokenComplete error:error requestId:requestId];
|
||||
return;
|
||||
}
|
||||
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnRefreshCurrentAccessTokenComplete
|
||||
userData:[FBUnityUtility getUserDataFromAccessToken:[FBSDKAccessToken currentAccessToken]]
|
||||
requestId:requestId];
|
||||
}];
|
||||
}
|
||||
}
|
||||
57
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.mm.meta
Normal file
57
Assets/FacebookSDK/SDK/Editor/iOS/FBUnityInterface.mm.meta
Normal file
@ -0,0 +1,57 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4c29c5d59509848c4bc24c13ac976932
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Android:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
Linux:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
Linux64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
OSXIntel:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OSXIntel64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
SamsungTV:
|
||||
enabled: 0
|
||||
settings:
|
||||
STV_MODEL: STANDARD_13
|
||||
Win:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Win64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
iOS:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
49
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.h
Normal file
49
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.h
Normal file
@ -0,0 +1,49 @@
|
||||
// Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
//
|
||||
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
// copy, modify, and distribute this software in source code or binary form for use
|
||||
// in connection with the web services and APIs provided by Facebook.
|
||||
//
|
||||
// As with any software that integrates with the Facebook platform, your use of
|
||||
// this software is subject to the Facebook Developer Principles and Policies
|
||||
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
// included in all copies or substantial portions of the software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
#import <FBSDKShareKit/FBSDKShareKit.h>
|
||||
|
||||
extern NSString *const FBUnityMessageName_OnAppRequestsComplete;
|
||||
extern NSString *const FBUnityMessageName_OnFriendFinderComplete;
|
||||
extern NSString *const FBUnityMessageName_OnGetAppLinkComplete;
|
||||
extern NSString *const FBUnityMessageName_OnGroupCreateComplete;
|
||||
extern NSString *const FBUnityMessageName_OnGroupJoinComplete;
|
||||
extern NSString *const FBUnityMessageName_OnInitComplete;
|
||||
extern NSString *const FBUnityMessageName_OnLoginComplete;
|
||||
extern NSString *const FBUnityMessageName_OnLogoutComplete;
|
||||
extern NSString *const FBUnityMessageName_OnShareLinkComplete;
|
||||
extern NSString *const FBUnityMessageName_OnFetchDeferredAppLinkComplete;
|
||||
extern NSString *const FBUnityMessageName_OnRefreshCurrentAccessTokenComplete;
|
||||
extern NSString *const FBUnityMessageName_OnUploadImageToMediaLibraryComplete;
|
||||
extern NSString *const FBUnityMessageName_OnUploadVideoToMediaLibraryComplete;
|
||||
|
||||
/*!
|
||||
@abstract A helper class that implements various FBSDK delegates in order to send
|
||||
messages back to Unity.
|
||||
*/
|
||||
@interface FBUnitySDKDelegate : NSObject<
|
||||
FBSDKGameRequestDialogDelegate,
|
||||
FBSDKSharingDelegate>
|
||||
|
||||
/*
|
||||
@abstract returns a self retaining instance that is released once it receives a
|
||||
delegate message from FBSDK.
|
||||
*/
|
||||
+ (instancetype)instanceWithRequestID:(int)requestID;
|
||||
|
||||
@end
|
||||
59
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.h.meta
Normal file
59
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.h.meta
Normal file
@ -0,0 +1,59 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7461bcc2e2c714a03a3f60d68ec79369
|
||||
timeCreated: 1435007350
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Android:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
Linux:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
Linux64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
OSXIntel:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OSXIntel64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
SamsungTV:
|
||||
enabled: 0
|
||||
settings:
|
||||
STV_MODEL: STANDARD_13
|
||||
Win:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Win64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
iOS:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
110
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.m
Normal file
110
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.m
Normal file
@ -0,0 +1,110 @@
|
||||
// Copyright (c) 2014-present, Facebook, Inc. All rights reserved.
|
||||
//
|
||||
// You are hereby granted a non-exclusive, worldwide, royalty-free license to use,
|
||||
// copy, modify, and distribute this software in source code or binary form for use
|
||||
// in connection with the web services and APIs provided by Facebook.
|
||||
//
|
||||
// As with any software that integrates with the Facebook platform, your use of
|
||||
// this software is subject to the Facebook Developer Principles and Policies
|
||||
// [http://developers.facebook.com/policy/]. This copyright notice shall be
|
||||
// included in all copies or substantial portions of the software.
|
||||
//
|
||||
// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
|
||||
// FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
|
||||
// COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
|
||||
// IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
|
||||
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
#import "FBUnitySDKDelegate.h"
|
||||
|
||||
#import "FBUnityUtility.h"
|
||||
|
||||
NSString *const FBUnityMessageName_OnAppRequestsComplete = @"OnAppRequestsComplete";
|
||||
NSString *const FBUnityMessageName_OnGetAppLinkComplete = @"OnGetAppLinkComplete";
|
||||
NSString *const FBUnityMessageName_OnFriendFinderComplete = @"OnFriendFinderComplete";
|
||||
NSString *const FBUnityMessageName_OnGroupCreateComplete = @"OnGroupCreateComplete";
|
||||
NSString *const FBUnityMessageName_OnGroupJoinComplete = @"OnGroupJoinComplete";
|
||||
NSString *const FBUnityMessageName_OnInitComplete = @"OnInitComplete";
|
||||
NSString *const FBUnityMessageName_OnLoginComplete = @"OnLoginComplete";
|
||||
NSString *const FBUnityMessageName_OnLogoutComplete = @"OnLogoutComplete";
|
||||
NSString *const FBUnityMessageName_OnShareLinkComplete = @"OnShareLinkComplete";
|
||||
NSString *const FBUnityMessageName_OnFetchDeferredAppLinkComplete = @"OnFetchDeferredAppLinkComplete";
|
||||
NSString *const FBUnityMessageName_OnRefreshCurrentAccessTokenComplete = @"OnRefreshCurrentAccessTokenComplete";
|
||||
NSString *const FBUnityMessageName_OnUploadImageToMediaLibraryComplete = @"OnUploadImageToMediaLibraryComplete";
|
||||
NSString *const FBUnityMessageName_OnUploadVideoToMediaLibraryComplete = @"OnUploadVideoToMediaLibraryComplete";
|
||||
|
||||
static NSMutableArray *g_instances;
|
||||
|
||||
@implementation FBUnitySDKDelegate {
|
||||
int _requestID;
|
||||
}
|
||||
|
||||
+ (void)initialize
|
||||
{
|
||||
if (self == [FBUnitySDKDelegate class]) {
|
||||
g_instances = [NSMutableArray array];
|
||||
}
|
||||
}
|
||||
|
||||
+ (instancetype)instanceWithRequestID:(int)requestID
|
||||
{
|
||||
FBUnitySDKDelegate *instance = [[FBUnitySDKDelegate alloc] init];
|
||||
instance->_requestID = requestID;
|
||||
[g_instances addObject:instance];
|
||||
return instance;
|
||||
}
|
||||
|
||||
#pragma mark - Private helpers
|
||||
|
||||
- (void)complete
|
||||
{
|
||||
[g_instances removeObject:self];
|
||||
}
|
||||
|
||||
#pragma mark - GameRequestDelegate
|
||||
|
||||
- (void)gameRequestDialog:(FBSDKGameRequestDialog *)gameRequestDialog didCompleteWithResults:(NSDictionary *)results
|
||||
{
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnAppRequestsComplete userData:results requestId:_requestID];
|
||||
[self complete];
|
||||
}
|
||||
|
||||
- (void)gameRequestDialog:(FBSDKGameRequestDialog *)gameRequestDialog didFailWithError:(NSError *)error
|
||||
{
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnAppRequestsComplete error:error requestId:_requestID];
|
||||
[self complete];
|
||||
}
|
||||
|
||||
- (void)gameRequestDialogDidCancel:(FBSDKGameRequestDialog *)gameRequestDialog
|
||||
{
|
||||
[FBUnityUtility sendCancelToUnity:FBUnityMessageName_OnAppRequestsComplete requestId:_requestID];
|
||||
[self complete];
|
||||
}
|
||||
|
||||
#pragma mark - FBSDKSharingDelegate
|
||||
|
||||
- (void)sharer:(id<FBSDKSharing>)sharer didCompleteWithResults:(NSDictionary *)results
|
||||
{
|
||||
if (results.count == 0) {
|
||||
// We no longer always send back a postId. In cases where the response is empty,
|
||||
// stuff in a didComplete so that Unity doesn't treat it as a malformed response.
|
||||
results = @{ @"didComplete" : @"1" };
|
||||
}
|
||||
[FBUnityUtility sendMessageToUnity:FBUnityMessageName_OnShareLinkComplete userData:results requestId:_requestID];
|
||||
[self complete];
|
||||
}
|
||||
|
||||
- (void)sharer:(id<FBSDKSharing>)sharer didFailWithError:(NSError *)error
|
||||
{
|
||||
[FBUnityUtility sendErrorToUnity:FBUnityMessageName_OnShareLinkComplete error:error requestId:_requestID];
|
||||
[self complete];
|
||||
}
|
||||
|
||||
- (void)sharerDidCancel:(id<FBSDKSharing>)sharer
|
||||
{
|
||||
[FBUnityUtility sendCancelToUnity:FBUnityMessageName_OnShareLinkComplete requestId:_requestID];
|
||||
[self complete];
|
||||
}
|
||||
|
||||
@end
|
||||
59
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.m.meta
Normal file
59
Assets/FacebookSDK/SDK/Editor/iOS/FBUnitySDKDelegate.m.meta
Normal file
@ -0,0 +1,59 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fbc51482e3ca248329707d61959f9d9d
|
||||
timeCreated: 1435010266
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Android:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
Linux:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
Linux64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
OSXIntel:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
OSXIntel64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
SamsungTV:
|
||||
enabled: 0
|
||||
settings:
|
||||
STV_MODEL: STANDARD_13
|
||||
Win:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
Win64:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
iOS:
|
||||
enabled: 1
|
||||
settings:
|
||||
CompileFlags:
|
||||
FrameworkDependencies:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user