You've already forked Commercialization.topon
update 1.1.25
This commit is contained in:
@@ -3,11 +3,12 @@ using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Xml.Linq;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Networking;
|
||||
using AnyThink.Scripts.Assets;
|
||||
// using AnyThink.Scripts.Assets;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace AnyThink.Scripts.IntegrationManager.Editor
|
||||
@@ -15,179 +16,212 @@ namespace AnyThink.Scripts.IntegrationManager.Editor
|
||||
|
||||
public class ATConfig
|
||||
{
|
||||
public static string PLUGIN_VERSION = "2.0.3";
|
||||
public static string PLUGIN_VERSION = "2.1.0";
|
||||
public static bool isDebug = false;
|
||||
private static string LAST_SELECT_COUNTRY_KEY = "country_key"; //国家
|
||||
|
||||
public static int OS_ANDROID = 1;
|
||||
public static int OS_IOS = 2;
|
||||
public static int CHINA_COUNTRY = 1;
|
||||
public static int NONCHINA_COUNTRY = 2;
|
||||
public static string ANYTHINK_SDK_FILES_PATH = "Assets/AnyThinkAds";
|
||||
//国内core aar包的父目录
|
||||
public static string CHINA_ANDROID_CORE_FILES_PATH = "Assets/AnyThinkAds/Plugins/Android/China/anythink_base/";
|
||||
public static string NONCHINA_ANDROID_CORE_FILES_PATH = "Assets/AnyThinkAds/Plugins/Android/NonChina/anythink_base/";
|
||||
//国内Android network aar包的父目录
|
||||
public static string CHINA_ANDROID_NETWORK_FILES_PARENT_PATH = "Assets/AnyThinkAds/Plugins/Android/China/mediation/";
|
||||
//海外Android network 依赖文件的目录
|
||||
public static string NONCHINA_ANDROID_NETWORK_FILES_PARENT_PATH = "Assets/AnyThinkAds/Plugins/Android/NonChina/mediation/";
|
||||
//iOS network依赖文件的目录,不区分国家
|
||||
public static string IOS_NETWORK_FILES_PARENT_PATH = "Assets/AnyThinkAds/Plugins/iOS/";
|
||||
public static string ANYTHINK_SDK_FILES_PATH = "Assets/AnyThinkPlugin/AnyThinkAds";
|
||||
//国内Android core包的相关目录
|
||||
public static string[] CHINA_ANDROID_CORE_FILES_ARRAY = {Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/Editor"),
|
||||
Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/anythink_base"),
|
||||
Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/mediation_plugin")};
|
||||
//海外Android core包的相关目录
|
||||
public static string[] NON_CHINA_ANDROID_CORE_FILES_ARRAY = {Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/anythink_base"),
|
||||
Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/Editor")};
|
||||
|
||||
//国内core aar包的父目录
|
||||
public static string CHINA_ANDROID_CORE_FILES_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/anythink_base/");
|
||||
public static string NONCHINA_ANDROID_CORE_FILES_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/anythink_base/");
|
||||
//国内Android network aar包的父目录
|
||||
public static string CHINA_ANDROID_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/China/mediation/");
|
||||
//海外Android network 依赖文件的目录
|
||||
public static string NONCHINA_ANDROID_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/Android/NonChina/mediation/");
|
||||
//iOS network依赖文件的目录,不区分国家
|
||||
public static string IOS_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/iOS/China/");
|
||||
public static string NONCHINA_IOS_NETWORK_FILES_PARENT_PATH = Path.Combine(ANYTHINK_SDK_FILES_PATH, "Plugins/iOS/NonChina/");
|
||||
//network json文件名
|
||||
public static string network_data_file_name = "network_data.json";
|
||||
//插件设置的数据
|
||||
private static string plugin_setting_data_path = "Assets/AnyThinkPlugin/Resources/json/" + PLUGIN_VERSION;
|
||||
private static string plugin_setting_data_file_name = "plugin_setting_data.json";
|
||||
|
||||
//保存插件设置的数据,保存时机:安装core包、选择国家、切换SDK、androidX设置发生变化时
|
||||
public static void savePluginSettingData(PluginSettingData settingData)
|
||||
{
|
||||
var directoryPath = plugin_setting_data_path;
|
||||
// 确保目标文件夹存在
|
||||
if (!Directory.Exists(directoryPath))
|
||||
{
|
||||
// 如果目录不存在,则创建它
|
||||
Directory.CreateDirectory(directoryPath);
|
||||
}
|
||||
string fullPath = Path.Combine(directoryPath, plugin_setting_data_file_name);
|
||||
string settingDataStr = JsonUtility.ToJson(settingData);
|
||||
ATLog.log("savePluginSettingData() >>> fullPath: " + fullPath + " settingDataStr: " + settingDataStr);
|
||||
File.WriteAllText(fullPath, settingDataStr);
|
||||
}
|
||||
//获取插件设置的数据
|
||||
public static PluginSettingData getPluginSettingData()
|
||||
{
|
||||
string fullPath = Path.Combine(plugin_setting_data_path, plugin_setting_data_file_name);
|
||||
if (!File.Exists(fullPath)) {
|
||||
return null;
|
||||
}
|
||||
string json = File.ReadAllText(fullPath);
|
||||
if(json == "") {
|
||||
return null;
|
||||
}
|
||||
return JsonUtility.FromJson<PluginSettingData>(json);
|
||||
}
|
||||
|
||||
public static bool removeSdk(int country, int os) {
|
||||
string path = ANYTHINK_SDK_FILES_PATH + "/Plugins";
|
||||
if (os == OS_ANDROID) {
|
||||
path = path + "/Android";
|
||||
} else {
|
||||
path = path + "/iOS";
|
||||
}
|
||||
if (country == CHINA_COUNTRY) {
|
||||
path = path + "/China";
|
||||
} else {
|
||||
path = path + "/NonChina";
|
||||
}
|
||||
if (Directory.Exists(path)) {
|
||||
FileUtil.DeleteFileOrDirectory(path);
|
||||
}
|
||||
if (File.Exists(path + ".meta")) {
|
||||
FileUtil.DeleteFileOrDirectory(path + ".meta");
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
//移除本地的network
|
||||
public static bool removeInstalledNetwork(Network network, int os)
|
||||
{
|
||||
//修改sdk的配置
|
||||
if (isCoreNetwork(network.Name) && os == OS_ANDROID) {
|
||||
var paths = CHINA_ANDROID_CORE_FILES_ARRAY;
|
||||
if (network.Country == NONCHINA_COUNTRY) {
|
||||
paths = NON_CHINA_ANDROID_CORE_FILES_ARRAY;
|
||||
}
|
||||
foreach(string p in paths) {
|
||||
if (Directory.Exists(p)) {
|
||||
FileUtil.DeleteFileOrDirectory(p);
|
||||
}
|
||||
if (File.Exists(p + ".meta")) {
|
||||
FileUtil.DeleteFileOrDirectory(p + ".meta");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
var path = getAndroidNetworkPath(network);
|
||||
if (os == OS_IOS) {
|
||||
path = getIosNetworkPath(network);
|
||||
}
|
||||
if (Directory.Exists(path)) {
|
||||
FileUtil.DeleteFileOrDirectory(path);
|
||||
if (File.Exists(path + ".meta")) {
|
||||
FileUtil.DeleteFileOrDirectory(path + ".meta");
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// 保存已安装的network到本地
|
||||
public static void saveInstalledNetworkVersion(string networkName, Versions v)
|
||||
public static void saveInstalledNetworkVersion(Network network, int os)
|
||||
{
|
||||
Versions versions = v.clone();
|
||||
int country = getLocalCountry();
|
||||
|
||||
ATLog.log("saveInstalledNetworkVersion() >>> networkName: " + networkName + " unity: " + versions.Unity);
|
||||
versions = initUnityForVerions(versions, networkName, country);
|
||||
|
||||
string jsonStr = JsonUtility.ToJson(versions);
|
||||
string key = networkName + "_" + country;
|
||||
// ATConfigAsset2.Instance.saveInstalledNetworkVersion(key, jsonStr);
|
||||
PlayerPrefs.SetString(key, jsonStr);
|
||||
}
|
||||
|
||||
//获取已安装的network版本,包括core network
|
||||
public static Versions getInstalledNetworkVersion(string networkName, int country)
|
||||
{
|
||||
Versions versions = null;
|
||||
string sdkJson = string.Empty;
|
||||
|
||||
string key = networkName + "_" + country;
|
||||
|
||||
// sdkJson = ATConfigAsset2.Instance.getInstalledNetworkVersion(key);
|
||||
sdkJson = PlayerPrefs.GetString(key);
|
||||
|
||||
ATLog.log("getInstalledNetworkVersion() >>> key: " + key + " sdkJson: " + sdkJson + " country: " + country);
|
||||
if (sdkJson == null || sdkJson.Length == 0)
|
||||
{
|
||||
//适配旧版本插件,避免直接升级SDK
|
||||
// if (PlayerPrefs.HasKey(key)) {
|
||||
// sdkJson = PlayerPrefs.GetString(key);
|
||||
// PlayerPrefs.DeleteKey(key);
|
||||
// } else {
|
||||
// return null;
|
||||
// }
|
||||
return null;
|
||||
if (isCoreNetwork(network.Name)) {
|
||||
return;
|
||||
}
|
||||
|
||||
versions = JsonUtility.FromJson<Versions>(sdkJson);
|
||||
versions = initUnityForVerions(versions, networkName, country);
|
||||
return versions;
|
||||
}
|
||||
var networkDataFileName = network_data_file_name;
|
||||
var networkName = network.Name.ToLower();
|
||||
int country = network.Country;
|
||||
var installedVersions = network.CurrentVersions;
|
||||
if (installedVersions != null) {
|
||||
if (os == OS_ANDROID) {
|
||||
var android_version = installedVersions.Android;
|
||||
//Android
|
||||
if (!string.IsNullOrEmpty(android_version)) {
|
||||
var networkPath = getAndroidNetworkPath(network);
|
||||
ATLog.log("saveInstalledNetworkVersion() >>> android networkPath: " + networkPath + " exist: " + Directory.Exists(networkPath));
|
||||
if (Directory.Exists(networkPath)) {
|
||||
string fullPath = Path.Combine(networkPath, networkDataFileName);
|
||||
var networkData = new NetworkLocalData();
|
||||
networkData.name = networkName;
|
||||
networkData.country = country;
|
||||
networkData.version = android_version;
|
||||
networkData.path = networkPath;
|
||||
|
||||
public static int getLocalCountry()
|
||||
{
|
||||
string key = LAST_SELECT_COUNTRY_KEY;
|
||||
//适配旧版本插件,避免直接升级SDK
|
||||
// if (PlayerPrefs.HasKey(key)) {
|
||||
// int country = PlayerPrefs.GetInt(key);
|
||||
// saveLocalCountry(country);
|
||||
// PlayerPrefs.DeleteKey(key);
|
||||
// }
|
||||
// return ATConfigAsset2.Instance.LocalCountry;
|
||||
return PlayerPrefs.GetInt(key, CHINA_COUNTRY);
|
||||
}
|
||||
File.WriteAllText(fullPath, JsonUtility.ToJson(networkData));
|
||||
}
|
||||
}
|
||||
} else {
|
||||
//iOS
|
||||
var ios_version = installedVersions.Ios;
|
||||
if (!string.IsNullOrEmpty(ios_version)) {
|
||||
var networkPath = getIosNetworkPath(network);
|
||||
ATLog.log("saveInstalledNetworkVersion() >>> ios networkPath: " + networkPath);
|
||||
if (Directory.Exists(networkPath)) {
|
||||
string fullPath = Path.Combine(networkPath, networkDataFileName);
|
||||
var networkData = new NetworkLocalData();
|
||||
networkData.name = networkName;
|
||||
networkData.country = country;
|
||||
networkData.version = ios_version;
|
||||
networkData.path = networkPath;
|
||||
|
||||
public static void saveLocalCountry(int country)
|
||||
{
|
||||
// ATConfigAsset2.Instance.LocalCountry = country;
|
||||
PlayerPrefs.SetInt(LAST_SELECT_COUNTRY_KEY, country);
|
||||
}
|
||||
|
||||
public static void removeInstalledNetworkVersion(string networkName, int country)
|
||||
{
|
||||
string key = networkName + "_" + country;
|
||||
|
||||
if (PlayerPrefs.HasKey(key)) {
|
||||
PlayerPrefs.DeleteKey(key);
|
||||
}
|
||||
ATLog.log("removeInstalledNetworkVersion() >>> networkName: " + networkName + " country: " + country);
|
||||
// ATConfigAsset2.Instance.removeInstalledNetworkVersion(key);
|
||||
}
|
||||
|
||||
|
||||
private static Versions initUnityForVerions(Versions versions, string networkName, int country)
|
||||
{
|
||||
if (versions == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
//查找本地的android、iOS是否都已安装
|
||||
string androidPath = getAndroidNetworkPath(networkName, country);
|
||||
bool androidInstalled = isInstalledByPath(androidPath);
|
||||
string iosPath = getIosNetworkPath(networkName);
|
||||
bool iosInstalled = isInstalledByPath(iosPath);
|
||||
if (!androidInstalled && iosInstalled)
|
||||
{
|
||||
// versions.Android = "";
|
||||
versions.Unity = string.Format("ios_{0}", versions.Ios);
|
||||
}
|
||||
else if (androidInstalled && !iosInstalled)
|
||||
{
|
||||
// versions.Ios = "";
|
||||
versions.Unity = string.Format("android_{0}", versions.Android);
|
||||
}
|
||||
else if (!androidInstalled && !iosInstalled)
|
||||
{
|
||||
versions.Unity = "";
|
||||
}
|
||||
//core network的unity版本是插件版本
|
||||
if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName))
|
||||
{
|
||||
versions.Unity = ATConfig.PLUGIN_VERSION;
|
||||
}
|
||||
ATLog.log("initUnityForVerions() >>> networkName: " + networkName + " androidInstalled: " + androidInstalled + " iosInstalled: " + iosInstalled + " unity: " + versions.Unity);
|
||||
return versions;
|
||||
}
|
||||
|
||||
public static bool isNetworkInstalled(string networkName, int country)
|
||||
{
|
||||
Versions versions = getInstalledNetworkVersion(networkName, country);
|
||||
if (versions == null)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName)) //core network判断是否已安装
|
||||
{
|
||||
string androidPath = getAndroidNetworkPath(networkName, country);
|
||||
bool androidInstalled = isInstalledByPath(androidPath);
|
||||
string iosPath = getIosNetworkPath(networkName);
|
||||
bool iosInstalled = isInstalledByPath(iosPath);
|
||||
|
||||
return androidInstalled && iosInstalled;
|
||||
} else { //network判断是否已安装
|
||||
return !string.IsNullOrEmpty(versions.Unity);
|
||||
File.WriteAllText(fullPath, JsonUtility.ToJson(networkData));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static bool isAndroidNetworkInstalled(string networkName, int country)
|
||||
{
|
||||
Versions versions = getInstalledNetworkVersion(networkName, country);
|
||||
if (versions == null)
|
||||
{
|
||||
return false;
|
||||
//Core 是否已安装
|
||||
public static bool isCoreNetworkInstalled(PluginSettingData pluginSettingData, int os) {
|
||||
var countrySettingData = pluginSettingData.getCountrySettingData();
|
||||
if (os == OS_ANDROID) {
|
||||
return !string.IsNullOrEmpty(countrySettingData.android_version);
|
||||
} else {
|
||||
return !string.IsNullOrEmpty(countrySettingData.ios_version);
|
||||
}
|
||||
string androidPath = getAndroidNetworkPath(networkName, country);
|
||||
bool androidInstalled = isInstalledByPath(androidPath);
|
||||
return androidInstalled;
|
||||
}
|
||||
|
||||
public static bool isIOSNetworkInstalled(string networkName, int country)
|
||||
//Network是否已安装
|
||||
public static bool isNetworkInstalled(Network network, int os)
|
||||
{
|
||||
Versions versions = getInstalledNetworkVersion(networkName, country);
|
||||
if (versions == null)
|
||||
{
|
||||
return false;
|
||||
if (isCoreNetwork(network.Name)) {
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
return isCoreNetworkInstalled(pluginSettingData, os);
|
||||
}
|
||||
string iosPath = getIosNetworkPath(networkName);
|
||||
bool iosInstalled = isInstalledByPath(iosPath);
|
||||
return iosInstalled;
|
||||
var path = getIosNetworkPath(network);
|
||||
if (os == OS_ANDROID) {
|
||||
path = getAndroidNetworkPath(network);
|
||||
}
|
||||
return File.Exists(Path.Combine(path, network_data_file_name));
|
||||
}
|
||||
|
||||
private static string getAndroidNetworkPath(string networkName, int country)
|
||||
//Network是否已安装,根据name
|
||||
public static bool isNetworkInstalledByName(string name, int os)
|
||||
{
|
||||
if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName))
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
if (pluginSettingData != null) {
|
||||
var country = pluginSettingData.curCountry;
|
||||
var network = new Network();
|
||||
network.Name = name;
|
||||
network.Country = country;
|
||||
return isNetworkInstalled(network, os);
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
private static string getAndroidNetworkPath(Network network)
|
||||
{
|
||||
var networkName = network.Name.ToLower();
|
||||
var country = network.Country;
|
||||
if (isCoreNetwork(networkName))
|
||||
{
|
||||
return country == CHINA_COUNTRY ? CHINA_ANDROID_CORE_FILES_PATH : NONCHINA_ANDROID_CORE_FILES_PATH;
|
||||
}
|
||||
@@ -197,82 +231,144 @@ public static bool isDebug = false;
|
||||
}
|
||||
}
|
||||
|
||||
private static string getIosNetworkPath(string networkName)
|
||||
private static string getIosNetworkPath(Network network)
|
||||
{
|
||||
string defaultResult = IOS_NETWORK_FILES_PARENT_PATH + networkName.ToLower();
|
||||
if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName))
|
||||
{
|
||||
return IOS_NETWORK_FILES_PARENT_PATH + networkName; //Core network在本地的目录名称首字母是大写
|
||||
}
|
||||
// else if (networkName.Equals("Pangle"))
|
||||
var networkName = network.Name.ToLower();
|
||||
var country = network.Country;
|
||||
// if (isCoreNetwork(networkName))
|
||||
// {
|
||||
// //获取SDK版本
|
||||
// // Network coreNework = ATPluginSetting.Instance.CoreNetwork;
|
||||
// // if (coreNework != null && coreNework.CurrentVersions != null)
|
||||
// // {
|
||||
// // string iosSdkVersion = coreNework.CurrentVersions.Ios;
|
||||
// // string compareVersion = "6.1.78";
|
||||
// // ATLog.log("getIosNetworkPath() >>> iosSdkVersion: " + iosSdkVersion);
|
||||
// // VersionComparisonResult comparisonResult = ATDataUtil.CompareVersions(iosSdkVersion, compareVersion);
|
||||
// // if (comparisonResult == VersionComparisonResult.Lesser) //小于6.1.78
|
||||
// // {
|
||||
// // string pangleName = isSelectedChina() ? "pangle_China" : "pangle_nonChina";
|
||||
// // ATLog.log("getIosNetworkPath() >>> pangleName: " + pangleName);
|
||||
// // return IOS_NETWORK_FILES_PARENT_PATH + pangleName;
|
||||
// // }
|
||||
// // }
|
||||
// string pangleName = isSelectedChina() ? "pangle_China" : "pangle_nonChina";
|
||||
// // ATLog.log("getIosNetworkPath() >>> pangleName: " + pangleName);
|
||||
// return IOS_NETWORK_FILES_PARENT_PATH + pangleName;
|
||||
// return IOS_NETWORK_FILES_PARENT_PATH;
|
||||
// } else {
|
||||
// }
|
||||
else if (networkName.Equals("MyTarget"))
|
||||
{
|
||||
return IOS_NETWORK_FILES_PARENT_PATH + networkName;
|
||||
return country == CHINA_COUNTRY ? IOS_NETWORK_FILES_PARENT_PATH + networkName : NONCHINA_IOS_NETWORK_FILES_PARENT_PATH + networkName;
|
||||
}
|
||||
|
||||
|
||||
public static int getSelectedCountry() {
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
if (pluginSettingData != null) {
|
||||
return pluginSettingData.curCountry;
|
||||
}
|
||||
return defaultResult;
|
||||
return CHINA_COUNTRY;
|
||||
}
|
||||
|
||||
public static bool isSelectedChina()
|
||||
{
|
||||
return getLocalCountry() == CHINA_COUNTRY;
|
||||
|
||||
public static bool isCoreNetwork(string networkName) {
|
||||
return Equals(networkName.ToLower(), ATIntegrationManager.AnyThinkNetworkName.ToLower());
|
||||
}
|
||||
|
||||
public static string[] getNetworkFilesPath(string networkName, int country)
|
||||
{
|
||||
// if (networkName.Equals(ATIntegrationManager.AnyThinkNetworkName)) {
|
||||
// return new string[]{ANYTHINK_SDK_FILES_PATH};
|
||||
// }
|
||||
string[] filesPath = new string[2];
|
||||
filesPath[0] = getAndroidNetworkPath(networkName, country);
|
||||
filesPath[1] = getIosNetworkPath(networkName);
|
||||
return filesPath;
|
||||
}
|
||||
//查找本地是否有已安装network,并进行版本赋值
|
||||
public static void initNetworkLocalData(Network network) {
|
||||
var networkDataFileName = network_data_file_name;
|
||||
var androidPath = getAndroidNetworkPath(network);
|
||||
var iosPath = getIosNetworkPath(network);
|
||||
|
||||
private static bool isInstalledByPath(string path)
|
||||
{
|
||||
if (Directory.Exists(path))
|
||||
{
|
||||
string[] files = Directory.GetFiles(path);
|
||||
return files != null && files.Length > 0;
|
||||
var androidDataFile = Path.Combine(androidPath, networkDataFileName);
|
||||
var iosDataFile = Path.Combine(iosPath, networkDataFileName);
|
||||
|
||||
var curVersions = network.CurrentVersions;
|
||||
if (curVersions == null) {
|
||||
curVersions = new Versions();
|
||||
}
|
||||
return false;
|
||||
|
||||
if (File.Exists(androidDataFile)) {
|
||||
string a_json = File.ReadAllText(androidDataFile);
|
||||
var a_data = JsonUtility.FromJson<NetworkLocalData>(a_json);
|
||||
curVersions.Android = a_data.version;
|
||||
}
|
||||
|
||||
if (File.Exists(iosDataFile)) {
|
||||
string i_json = File.ReadAllText(iosDataFile);
|
||||
var i_data = JsonUtility.FromJson<NetworkLocalData>(i_json);
|
||||
curVersions.Ios = i_data.version;
|
||||
}
|
||||
network.CurrentVersions = curVersions;
|
||||
}
|
||||
|
||||
// private void OnEnable()
|
||||
// {
|
||||
// EditorApplication.quitting += Save;
|
||||
// }
|
||||
//当前是否选择国内地区
|
||||
public static bool isSelectedChina() {
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
if (pluginSettingData != null) {
|
||||
return pluginSettingData.curCountry == CHINA_COUNTRY;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
// private void OnDisable()
|
||||
// {
|
||||
// EditorApplication.quitting -= Save;
|
||||
// }
|
||||
//获取admob app id
|
||||
public static string getAdmobAppIdByOs(int os) {
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
var settingData = pluginSettingData.getCountrySettingData();
|
||||
return settingData.getAdmobAppId(os);
|
||||
}
|
||||
|
||||
// private void Save()
|
||||
// {
|
||||
// // EditorPrefs.SetInt("MySetting", 1); // 保存您的EditorPrefs数据
|
||||
// PlayerPrefs.Save(); // 确保数据已被保存到磁盘上
|
||||
// }
|
||||
public static bool enableAndroidX() {
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
return pluginSettingData.getCountrySettingData().enableAndroidX;
|
||||
}
|
||||
|
||||
//获取默认选中的地区
|
||||
public static int getDefCountry() {
|
||||
string version = PLUGIN_VERSION;
|
||||
int lastIndex = version.LastIndexOf('.');
|
||||
|
||||
if (lastIndex != -1)
|
||||
{
|
||||
//2.1.0:是区分国内海外的插件,2.1.01:后缀多了1,是只有海外的插件
|
||||
string lastPart = version.Substring(lastIndex + 1);
|
||||
if (lastPart.Length == 2) {
|
||||
return NONCHINA_COUNTRY;
|
||||
}
|
||||
}
|
||||
return CHINA_COUNTRY;
|
||||
}
|
||||
|
||||
public static string[] getCountryArray() {
|
||||
// new string[] { "ChinaMainland", "Overseas" }
|
||||
string version = PLUGIN_VERSION;
|
||||
int lastIndex = version.LastIndexOf('.');
|
||||
|
||||
if (lastIndex != -1)
|
||||
{
|
||||
//2.1.0:是区分国内海外的插件,2.1.01:后缀多了1,是只有海外的插件
|
||||
string lastPart = version.Substring(lastIndex + 1);
|
||||
if (lastPart.Length == 2) {
|
||||
return new string[] { "Overseas" };
|
||||
}
|
||||
}
|
||||
return new string[] { "ChinaMainland", "Overseas" };
|
||||
}
|
||||
|
||||
public static string getRegionIntegrateTip()
|
||||
{
|
||||
//Tips: If ChinaMainland and Oversea are integrated at the same time, there will be compilation conflicts, whether it is Android or iOS platform.
|
||||
//Currently, the Android platform integrates ChinaMainland and Oversea at the same time, which may cause compilation errors or other errors.
|
||||
var pluginSettingData = getPluginSettingData();
|
||||
if (pluginSettingData == null) {
|
||||
return "";
|
||||
}
|
||||
var sb = new StringBuilder();
|
||||
sb.Append("Tips: Currently, ");
|
||||
var android_tip = false;
|
||||
if (pluginSettingData.isBothInstallAndroid()) {
|
||||
sb.Append("the Android platform ");
|
||||
android_tip = true;
|
||||
}
|
||||
var ios_tip = false;
|
||||
if (pluginSettingData.isBothInstallIOS()) {
|
||||
if (android_tip) {
|
||||
sb.Append("and ");
|
||||
}
|
||||
sb.Append("iOS platform ");
|
||||
ios_tip = true;
|
||||
}
|
||||
|
||||
if (android_tip || ios_tip) {
|
||||
sb.Append("integrates ChinaMainland and Oversea at the same time, which may cause compilation error or other errors.");
|
||||
return sb.ToString();
|
||||
} else {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user