你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> 總結適配IOS10開發需求留意的問題

總結適配IOS10開發需求留意的問題

編輯:IOS開發綜合

就在前不久,蘋果剛剛對外正式發布了新的操作零碎IOS10。喜劇的是就在發布新零碎的當天公司就急著要發布一個新版本,問題來了。。。誰知道APP在IOS10上會遇到什麼鬼狀況!最怕的就是閃退。。。於是在上線前做了很多關於IOS10的適配任務,其中也踩了很多坑。所以在這裡記載總結一下。

1、自動管理證書

首先要說的就是Xcode8。翻開Xcode8最分明的就是Targets-->General下的自動管理證書模塊。以前關於老手來說無論是開發還是打包都必需要被蘋果的開發簽名零碎虐上幾遍才干真正明白它的原理和規程。如今貌似直接勾上“Automatically manage signing”,Xcode8一切都幫我們做好了。不得不說的確很方便!

不過仔細想想,這個“Automatically manage signing”按鈕無非就是自動幫我們在開發者中心創立appid、cetificaiton、profire provision等等證書文件並且自動關聯上。但是假如我們證書管理不標准,很有能夠呈現revoke證書的狀況。這是不斷以來很頭疼的事情。所以我還是推崇開發者自己手動創立和管理證書。呵呵,這個自動管理證書的按鈕我們選擇不勾上。

2、蕪雜無章的日志輸入

Xcode8啟動後一連串蕪雜無章的日志輸入,第一反響就是這是什麼鬼!

在網上查了一下,原來這個日志的輸入是可以封閉的。封閉途徑:Edit Scheme-->Run-->Arguments-->Enviroment Variables ,添加一個配置選項就好了 “OS_ACTIVITY_MODE = Disable”。

3、推送添加 entitlements 文件簽名

Xcode8添加了一項很重要的功用:為推送添加了entitlements 文件簽名。所以,假如你的使用是支持推送的,那一定要記得翻開這個entitlements文件簽名的開關!否則APP在啟動注冊推送服務的時分就報簽名錯誤了,Push音訊也就不能夠接納的到。

下圖的開關記得翻開!

另外,蘋果對推送的框架和API也做了嚴重的調整,需求開發者對IOS10+做相應的適配,前面會詳細引見。

4、零碎權限設置

IOS10對零碎權限的運用做了愈加嚴厲的控制。

APP想要運用零碎的某個權限,必需要在項目設置info.plist文件中設置相應的權限闡明,否則在IOS10上會呈現解體。

現實上,假如你的使用運用了零碎某個權限,但是沒有設置相應的權限闡明,那麼你的使用在上傳到itunes connect後會馬上被changed to invalid binary。

由於這個坑我們第一天就踩了:用Xcode 8打包上傳App,本地驗證和ipa上傳都正常,但是上傳成功後,包馬上被changed
 to invalid binary,itunes connect後台的構建版本也不斷出不來。一看反應郵件,緣由就是運用了某個零碎權限但是沒有添加相應權限的闡明!

相應的零碎權限闡明如下:

麥克風權限---> Privacy - Microphone Usage Description :能否允許此App運用你的麥克風?

相機權限---> Privacy - Camera Usage Description :能否允許此App運用你的相機?

相冊權限---> Privacy - Photo Library Usage Description :能否允許此App訪問你的媒體材料庫?

通訊錄權限---> Privacy - Contacts Usage Description :能否允許此App訪問你的通訊錄?

藍牙權限---> Privacy - Bluetooth Peripheral Usage Description :能否許允此App運用藍牙?

語音轉文字權限---> Privacy - Speech Recognition Usage Description :能否允許此App運用語音辨認?

日歷權限---> Privacy - Calendars Usage Description :能否允許此App運用日歷?

定位權限---> Privacy - Location When In Use Usage Description :我們需求經過您的天文地位信息獲取您周邊的相關數據

定位權限---> Privacy - Location Always Usage Description :我們需求經過您的天文地位信息獲取

5、字體變大,原來的一些控件呈現字體顯示不全

IOS10下的字體比原來的字體更大。

以前剛剛好顯示的下的文字在IOS10上居然顯示不全了,由於IOS10的中文字體比原先的字體要大,目前的處理辦法就是把原來定寬且剛好顯示完全的控件重新調整一遍:要麼把寬度加寬要麼內容自順應大小。

6、IOS10跳轉到零碎設置的相應辦法曾經制止

在iOS10以前,我們可以經過以下辦法跳轉到設置相應的頁面去:

//跳轉到設置的 WIFI 頁面  
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"prefs:root=WIFI"]]; 

另外:

IOS6和IOS7需求設置URL Schemes:在URL Types中添加一個新項(prefs)。

IOS8和IOS9則不需求設置這個。

IOS10曾經制止,所以IOS10的零碎可以去除這局部業務邏輯了。

7、Xcode代碼正文不能用

這個是由於蘋果處理xcode ghost,把插件屏蔽了。

處理辦法

翻開終端,命令運轉:

sudo /usr/libexec/xpccachectl

然後必需重啟電腦後失效

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支持本站。

【總結適配IOS10開發需求留意的問題】的相關資料介紹到這裡,希望對您有所幫助! 提示:不會對讀者因本文所帶來的任何損失負責。如果您支持就請把本站添加至收藏夾哦!

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved