using UnityEditor.Callbacks;
using UnityEditor;
using System.IO;
#if UNITY_IOS
using UnityEditor.iOS.Xcode;
#endif
public static class UnityiOSPostProcessBuildSetting
{
//括號(hào)(10)是函數(shù)調(diào)用的優(yōu)先度
[PostProcessBuild(10)]
public static void OnPostprocessBuild(BuildTarget buildTarget, string path)
{
if (buildTarget == BuildTarget.iOS)
{
#if UNITY_IOS
//初始化
string projPath = PBXProject.GetPBXProjectPath(path);
PBXProject proj = new PBXProject();
proj.ReadFromString(File.ReadAllText(projPath));
string target = proj.TargetGuidByName("Unity-iPhone");
// 添加flag
// proj.AddBuildProperty(target, "OTHER_LDFLAGS", "-ObjC");
//添加framework
// proj.AddFrameworkToProject(target, "AssetsLibrary.framework", false);
// proj.AddFrameworkToProject(target, "IAPSupport.framework", false);
//添加lib
// AddLibToProject(proj, target, "libc++.tbd");
// AddLibToProject(proj, target, "libz.tbd");
// 關(guān)閉Bitcode設(shè)置
proj.SetBuildProperty(target, "ENABLE_BITCODE", "NO");
// 打開C語言模塊設(shè)置
proj.SetBuildProperty(target, "CLANG_ENABLE_MODULES", "YES");
{
// 修改info.plist的代碼
string plistPath = path + "/Info.plist";
PlistDocument plist = new PlistDocument();
plist.ReadFromString(File.ReadAllText(plistPath));
PlistElementDict rootDict = plist.root;
//
PlistElement array = null;
if (rootDict.values.ContainsKey("LSApplicationQueriesSchemes"))
{
array = rootDict["LSApplicationQueriesSchemes"].AsArray();
}
else
{
array = rootDict.CreateArray("LSApplicationQueriesSchemes");
}
rootDict.values.TryGetValue("LSApplicationQueriesSchemes", out array);
PlistElementArray Qchemes = array.AsArray();
Qchemes.AddString("fb");
//添加SDK要求接入的權(quán)限[權(quán)限名,申請(qǐng)說明]
rootDict.SetString("NSBluetoothPeripheralUsageDescription", " Advertisement would like to use bluetooth.");
}
// 應(yīng)用修改
File.WriteAllText(projPath, proj.WriteToString());
#endif
}
else if (buildTarget == BuildTarget.Android)
{
//TODO
}
}
#if UNITY_IOS
//添加lib方法
static void AddLibToProject(PBXProject inst, string targetGuid, string lib) {
string fileGuid = inst.AddFile("usr/lib/" + lib, "Frameworks/" + lib, PBXSourceTree.Sdk);
inst.AddFileToBuild(targetGuid, fileGuid);
}
#endif
}
[Unity3D]導(dǎo)出IOS工程后自動(dòng)化修改工程設(shè)置的代碼
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
- 文/潘曉璐 我一進(jìn)店門血久,熙熙樓的掌柜王于貴愁眉苦臉地迎上來突照,“玉大人,你說我怎么就攤上這事氧吐《锬ⅲ” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵筑舅,是天一觀的道長座慰。 經(jīng)常有香客問我,道長翠拣,這世上最難降的妖魔是什么版仔? 我笑而不...
- 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上蛮粮,老公的妹妹穿的比我還像新娘益缎。我一直安慰自己,他們只是感情好蝉揍,可當(dāng)我...
- 文/花漫 我一把揭開白布链峭。 她就那樣靜靜地躺著,像睡著了一般又沾。 火紅的嫁衣襯著肌膚如雪弊仪。 梳的紋絲不亂的頭發(fā)上,一...
- 文/蒼蘭香墨 我猛地睜開眼典予,長吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了乐严?” 一聲冷哼從身側(cè)響起瘤袖,我...
- 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎昂验,沒想到半個(gè)月后捂敌,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
- 正文 獨(dú)居荒郊野嶺守林人離奇死亡既琴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
- 正文 我和宋清朗相戀三年占婉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片甫恩。...
- 正文 年R本政府宣布滞磺,位于F島的核電站,受9級(jí)特大地震影響莱褒,放射性物質(zhì)發(fā)生泄漏击困。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望阅茶。 院中可真熱鬧蛛枚,春花似錦、人聲如沸脸哀。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽撞蜂。三九已至盲镶,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間蝌诡,已是汗流浹背溉贿。 一陣腳步聲響...
- 正文 我出身青樓,卻偏偏與公主長得像颁湖,于是被迫代替她去往敵國和親宣蠕。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...