iOS10 App適配權限 Push Notifications 字體Frame 遇到的坑!!!!


添加配置權限

    <!-- 相冊 -->
    <key>NSPhotoLibraryUsageDescription</key>
    <string>"xx"想使用您的相冊,需要您的允許</string>
    <!-- 相機 -->
    <key>NSCameraUsageDescription</key>
    <string>"xx"想使用您的相機,需要您的允許</string>
    <!-- 麥克風 -->
    <key>NSMicrophoneUsageDescription</key>
    <string>"xx"想使用您的麥克風,需要您的允許</string>
    <!-- 位置 -->
    <key>NSLocationUsageDescription</key>
    <string>"xx"想訪問您的位置,請您允許</string>
    <!-- 日歷 -->
    <key>NSCalendarsUsageDescription</key>
    <string>"xx"想訪問您的日歷,請您允許</string>
    <!-- 媒體資料庫 -->
    <key>NSAppleMusicUsageDescription</key>
    <string>"xx"想訪問您的媒體資料庫,請您允許</string>
    <!-- 藍牙 -->
    <key>NSBluetoothPeripheralUsageDescription</key>
    <string>"xx"想訪問您的藍牙,請您允許</string>
    <!--通訊錄 -->
    <key>NSContactsUsageDescription</key>
    <string>"xx"想訪問您的通訊錄,請您允許</string>
    <key>NSLocationWhenInUseUsageDescription</key>
    <string>請點擊“允許”。若不允許,您將無法正常使用“附近”的功能。</string>

添加Push Notifications支持

 

開關開啟后會自動生成xxxx.entitlements文件

這里需要注意幾點

    生成的該文件是否包含到你的打包工程中Bundle Resources中 如果沒有手動添加進去

 

 如果工程有多個Target 且多個證書在一起建議不要使用 Automatically manage signing

采用下面的這種方法

 

總結

 第一個 我們的項目是多個app時的所以在配置證書的時候要指定對應的證書,自動適配會適配不准確,因為我們的多個工程分多個target好多共用的工程。

 第二個 就是生成的entitlements文件要包含到bundle中

 

適配字體

ios中適配sb中的文本... 最好的辦法就是手動變更frame

純代碼的頁面可以在計算字體size的時候根據比例添加一些frame

+(CGSize)textFrameWithString:(NSString *)text width:(float)width fontSize:(NSInteger)fontSize
{
    NSDictionary *dict = @{NSFontAttributeName: [UIFont systemFontOfSize:fontSize]};
    // 根據第一個參數的文本內容,使用280*float最大值的大小,使用系統14號字,返回一個真實的frame size : (280*xxx)!!
    CGRect frame = [text boundingRectWithSize:CGSizeMake(width, CGFLOAT_MAX) options:NSStringDrawingUsesLineFragmentOrigin attributes:dict context:nil];
    CGSize textSize = frame.size;
    CGFloat scale = 17.5/17.0;
    
    // iOS 10
    if ([[UIDevice currentDevice].systemVersion floatValue] >= 10.0) {
        textSize.width = textSize.width * scale;
        textSize.height = textSize.height * scale;
    }
    return textSize;
}

 

iOS10好多坑 大家慢慢趟過去。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM