void Awake()
 {
     sdkConfigPrefabPath = PlayerPrefs.GetString ("SdkConfigPrefabPath");
     if(string.IsNullOrEmpty(sdkConfigPrefabPath)) return;
     SDKConfig ob = AssetDatabase.LoadAssetAtPath(sdkConfigPrefabPath , typeof(SDKConfig)) as SDKConfig;
     if(ob != null)
     {
         sdkConfigPrefab = ob;
     }
 }
Beispiel #2
0
    // Use this for initialization
    void Start()
    {
        SDKConfig cfg = new SDKConfig();
        cfg.apiKey="<the-api-key>";
        cfg.serverMode = ServerMode.Test;
        cfg.clientId = "<the-game-id>";

        UXV.Init(cfg,
                delegate(Session s) {
                        Debug.Log ("[UXvibe] Started a session: " + s);
                        EventManager.Instance.SetInitializedFlag();
                },
                delegate(int reason) {
                        Debug.Log ("[UXvibe] OnError, Reason=" + reason);
                }
        );
    }
    void OnGUI()
    {
        showAndroid = EditorGUILayout.Foldout (showAndroid, "Android");
        if(showAndroid)
        {
            buildType = (BuildType)EditorGUILayout.EnumPopup("Build Type", buildType);
            EditorGUILayout.BeginHorizontal();
            {
                EditorGUILayout.PrefixLabel("SDkConfigPrefab");
                sdkConfigPrefab = EditorGUILayout.ObjectField(sdkConfigPrefab , typeof(SDKConfig) , false) as SDKConfig;
            }
            EditorGUILayout.EndHorizontal();

            if(sdkConfigPrefab == null)
            {
                EditorGUILayout.LabelField("SDkConfigPrefab is null, please select SDkConfigPrefab!!!");
                return;
            }

            allSDKSelected = EditorGUILayout.BeginToggleGroup("SDK List", allSDKSelected);
            foreach(var detail in sdkConfigPrefab.SDKList)
            {
                if(sdkSelectList.ContainsKey((int)detail.SdkType))
                {
                    sdkSelectList[(int)detail.SdkType] = ShowSDKAssetPath(detail, sdkSelectList[(int)detail.SdkType]);
                }
                else
                {
                    sdkSelectList.Add((int)detail.SdkType, ShowSDKAssetPath(detail, false));
                }
            }

            EditorGUILayout.BeginHorizontal();
            if(GUILayout.Button("Select All"))
            {
                List<int> buffer = new List<int>(sdkSelectList.Keys);
                foreach(var val in buffer)
                {
                    sdkSelectList[val] = true;
                }
            }
            if(GUILayout.Button("Select Empty"))
            {
                List<int> buffer = new List<int>(sdkSelectList.Keys);
                foreach(var val in buffer)
                {
                    sdkSelectList[val] = false;
                }
            }
            EditorGUILayout.EndHorizontal();
            EditorGUILayout.EndToggleGroup();

            if(GUILayout.Button("Build_Android"))
            {
                if(BuildTarget.Android !=  EditorUserBuildSettings.activeBuildTarget)
                {
                    EditorGUILayout.LabelField("Warning :","It Needs A Long-Time For Convert Assets !!!");
                }
            }
        }
    }
        void PutSDK(string filePath, SDKInfo info, ChannelInfo channelInfo)
        {
            SDKConfig config = EditorData.TotalSDKInfo.GetSDKConfig(info.sdkName);

            //添加Jar
            OutPut("添加Jar " + info.sdkName);
            PutJar(filePath, info);

            //手动移除无法编译通过的字段
            RemoveErrordManifest(filePath);

            //自动编译类
            if (config.useCustomJavaClass)
            {
                OutPut("自动编译 ");
                compileTool.Compile(config, channelInfo, filePath);
            }

            //拷贝资源文件
            OutPut("拷贝资源文件 " + info.sdkName);
            CopyFile(filePath, info, channelInfo);

            //添加标签头
            for (int i = 0; i < config.XmlHeadList.Count; i++)
            {
                OutPut("添加AddXMLHead " + info.sdkName + " " + config.ActivityInfoList[i].name);
                AddXMLHead(filePath, config.XmlHeadList[i], info, channelInfo);
            }

            //添加Activity
            for (int i = 0; i < config.ActivityInfoList.Count; i++)
            {
                OutPut("添加Activity " + info.sdkName + " " + config.ActivityInfoList[i].name);
                AddActivity(filePath, config.ActivityInfoList[i], info, channelInfo);
            }

            //添加MainActivityProperty
            for (int i = 0; i < config.mainActivityPropertyList.Count; i++)
            {
                OutPut("添加mainActivityProperty " + info.sdkName + " " + config.mainActivityPropertyList[i].key);
                AddMainActivityProperty(filePath, config.mainActivityPropertyList[i], info, channelInfo);
            }

            //添加Service
            for (int i = 0; i < config.serviceInfoList.Count; i++)
            {
                OutPut("添加Service " + info.sdkName + " " + config.serviceInfoList[i].name);
                AddService(filePath, config.serviceInfoList[i], channelInfo, info);
            }

            //添加Provider
            for (int i = 0; i < config.providerInfoList.Count; i++)
            {
                OutPut("添加Provider " + info.sdkName + " " + config.providerInfoList[i].name);
                AddProvider(filePath, config.providerInfoList[i], channelInfo, info);
            }

            //添加Meta字段
            for (int i = 0; i < config.metaInfoList.Count; i++)
            {
                OutPut("添加Meta " + info.sdkName + " " + config.metaInfoList[i].key);
                AddMeta(filePath, config.metaInfoList[i], channelInfo, info);
            }

            //添加Uses字段
            for (int i = 0; i < config.usesList.Count; i++)
            {
                OutPut("添加Uses " + info.sdkName + " " + config.usesList[i].key);
                AddUses(filePath, config.usesList[i], channelInfo, info);
            }

            //修改ApplicationName
            if (!string.IsNullOrEmpty(config.ApplicationName))
            {
                OutPut("修改ApplicationName " + config.ApplicationName);
                ChangeApplicationName(filePath, config.ApplicationName);
            }

            //添加配置文件
            OutPut("添加配置文件 " + info.sdkName);
            SaveSDKConfigFile(filePath, info);
        }