最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS使用Target如何快速科學的區(qū)分開發(fā)環(huán)境詳解

 更新時間:2017年12月06日 16:16:55   作者:海邊的1984_  
這篇文章主要給大家介紹了關于iOS使用Target如何快速科學的區(qū)分開發(fā)環(huán)境的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。

前言

本文主要給大家介紹了關于iOS利用Target區(qū)分開發(fā)環(huán)境的相關內(nèi)容,分享出來供大家參考學習,下面話不多說了,來一起看看詳細的介紹吧。

什么是區(qū)分開發(fā)環(huán)境:

請求的域名+第三方SDK賬號的不同。

  • 請求的域名-->因為開發(fā)環(huán)境和正式環(huán)境的服務器和數(shù)據(jù)庫基本上都不是同一個。
  • 第三方SDK賬號-->第三方SDK需要賬號區(qū)分防止開發(fā)測試數(shù)據(jù)污染正式環(huán)境
    (推送+友盟統(tǒng)計是最明顯的例子)

這篇文章要點:

  • 如何使用Target去區(qū)分開發(fā)環(huán)境
  • 如何在1的基礎上面巧妙的區(qū)分第三方SDK的賬號

最終目的

在打包的時候切換對應環(huán)境的Target進行編譯即可獲得對應的安裝包。

引子:

開發(fā)APP區(qū)分環(huán)境是必不可少的話題,從 開發(fā)測試環(huán)境->pr環(huán)境->生產(chǎn)環(huán)境,甚至更多的環(huán)境,如何快速的進行管理是一個值得探討的話題。

不少項目在這方面好像沒有一個很好的解決方案導致項目到后期的時候第三方SDK的混亂以及各個環(huán)境之間的相互污染。雖然很多SDK已經(jīng)提前給出了測試機的注冊等等方案,但是個人覺得還是比較麻煩。所以我們公司在很早的時候iOS小組一起討論出下面這種方案。已經(jīng)在我們公司的后期開發(fā)的多個APP進行使用。

下面開始講講我們公司的解決方案吧(文章底部有Demo鏈接)

1.建立項目

2.將項目的target更改為dev環(huán)境的


3.建立管理第三方平臺的類目

這張有疑問不要緊,步驟完成后會詳細講解


4.建立APPStore環(huán)境下對應的Target

在開發(fā)環(huán)境的Target上面右鍵Duplicate一個新的Target,并且修改Target名稱為CBTDisTingGuishAppStoreEnvironment

5.修改Plist文件,對應上正確的Target

這時候你會看到多生成了一個Plist文件,不同的Target的Plist文件不共享我們需要修改這個Plist的對應關系以及名字。在修改plist名字的時候你會發(fā)現(xiàn)Target下面的對應的plist都空了,這時候就可以選擇對應的plist文件了。

下面是新建好對應關系的Target和Plist文件


6.ManagerScheme

修改對應的scheme名字,用于更好的辨認APP環(huán)境

7.上面步驟完成之后,打包之用切換Target進行編譯即可獲取對應環(huán)境的APP

(demo里面切換環(huán)境運行打印,你會發(fā)現(xiàn)得到的是不同的結果)


這里來解釋一下這個方案的核心


文件

      a.分別定義兩個環(huán)境的BundleID對應的宏

      b.定義了一個能夠在不同環(huán)境下面獲取到對應環(huán)境BundleID的宏

      c.定義根據(jù)不同環(huán)境區(qū)分不同的請求地址

      d.定義根據(jù)不同環(huán)境區(qū)分不同的sdk區(qū)域

用法:

kGetuiConfig[kBundleID][@"AppID"]

假設現(xiàn)在APP環(huán)境處于測試環(huán)境

kGetuiConfig是一個字典


kGetuiConfig[kBundleID] 是如圖字典


kGetuiConfig[kBundleID][@"AppID"]--> ebCsh9J11111111GhSZ9Hb5


如果你覺得有點繞是正常的,多看兩遍就知道了。

踩過的坑和注意點

1、第三方SDK去注冊賬號需要區(qū)分BundleID的時候,這時候一定需要創(chuàng)建兩個賬號(n個環(huán)境n個賬號),其他不需要區(qū)分BundleID的,盡量創(chuàng)建兩個賬號,這樣區(qū)分環(huán)境才有意義。

2、不同Target必須要對應不同的Plist,需要進行配置,如果實在搞不清楚,就刪除所有的Plist,然后重新添加,這樣Target上面對應的pilst為空的時候就能進行選擇配置。

3、添加新類的的時候記得勾選上兩個Target


4、Target進行Duplicate的時候會復制所有的代碼。但是plist不共享。

源碼下載:

github下載地址:點擊這里

本地下載地址:http://xiazai.jb51.net/201712/yuanma/CBTDisTingGuishDevEnvironment(jb51.net).rar

總結

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • IOS 開發(fā)之UIView動畫的實例詳解

    IOS 開發(fā)之UIView動畫的實例詳解

    這篇文章主要介紹了IOS 開發(fā)之UIView動畫的實例詳解的相關資料,需要的朋友可以參考下
    2017-07-07
  • IOS實戰(zhàn)之自定義轉場動畫詳解

    IOS實戰(zhàn)之自定義轉場動畫詳解

    這篇文章主要介紹了IOS實戰(zhàn)之自定義轉場動畫,CAAnimation的子類,用于做轉場動畫,能夠為層提供移出屏幕和移入屏幕的動畫效果,感興趣的小伙伴們可以參考一下
    2016-02-02
  • iOS微信分享后關閉發(fā)送成功提示并返回應用

    iOS微信分享后關閉發(fā)送成功提示并返回應用

    這篇文章主要為大家詳細介紹了iOS微信分享后關閉發(fā)送成功提示并返回應用的相關資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • iOS中UIAlertView3秒后消失的兩種實現(xiàn)方法

    iOS中UIAlertView3秒后消失的兩種實現(xiàn)方法

    這篇文章主要介紹了iOS中UIAlertView3秒后消失的兩種實現(xiàn)方法,實現(xiàn)方法涉及到NSTimer和PerformSelector:withObject:afterDelay:方法的結合使用,需要的朋友可以參考下
    2017-12-12
  • iOS實現(xiàn)的多條折線圖封裝實例

    iOS實現(xiàn)的多條折線圖封裝實例

    這篇文章主要跟大家分享了關于利用iOS實現(xiàn)多條折線圖的封裝實例,文中給出了詳細的示例代碼供大家參考學習,對大家具有一定的參考學習價值,需要的朋友們下面來一起看看吧。
    2017-07-07
  • ios用AFN進行文件上傳的示例代碼

    ios用AFN進行文件上傳的示例代碼

    本篇文章主要介紹了ios用AFN進行文件上傳的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • iOS如何封裝帶復制功能的UILabel示例代碼

    iOS如何封裝帶復制功能的UILabel示例代碼

    如果是在IOS的應用方面,很多時候我們需要封裝UILabel,下面這篇文章主要給大家介紹了關于iOS如何封裝帶復制功能的UILabel的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2018-08-08
  • 詳解iOS應用開發(fā)中autoresizing尺寸自動適應屬性的用法

    詳解iOS應用開發(fā)中autoresizing尺寸自動適應屬性的用法

    這篇文章主要介紹了iOS應用開發(fā)中autoresizing尺寸自動適應屬性的用法,文中講解了使用代碼和Storyboard兩種方式調(diào)節(jié)autoresizing的方法,示例代碼為Objective-C,需要的朋友可以參考下
    2016-03-03
  • iOS中管理剪切板的UIPasteboard粘貼板類用法詳解

    iOS中管理剪切板的UIPasteboard粘貼板類用法詳解

    在iOS中,通過UITextField、UITextView和UIWebView剪切或復制的內(nèi)容都可以通過UIPasteboard類來管理粘貼操作,下面就為大家?guī)韎OS中管理剪切板的UIPasteboard粘貼板類用法詳解:
    2016-06-06
  • iOS自定義圓形進度提示控件

    iOS自定義圓形進度提示控件

    這篇文章主要為大家詳細介紹了iOS自定義圓形進度提示控件,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-06-06

最新評論

沈丘县| 祁连县| 彭州市| 芷江| 太康县| 麻江县| 保亭| 砚山县| 稻城县| 咸宁市| 濉溪县| 海兴县| 海口市| 尚志市| 广水市| 平陆县| 开平市| 怀安县| 治县。| 班戈县| 东丰县| 灵璧县| 湾仔区| 宽甸| 阳城县| 龙州县| 双城市| 北川| 恩施市| 抚宁县| 兴海县| 石台县| 云阳县| 庄河市| 衡南县| 尤溪县| 兴义市| 定边县| 通河县| 镇平县| 大名县|