Notes for iOS9 and Xcode7
iOS9 problem
The iOS9 in- app jump adds a privacy mechanism. The scheme jump needs to configure a whitelist, otherwise it cannot jump to the Momo client for interaction. Solution: Right-click on info.plist -> Open As -> Source Code , and then add the following code:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>momoSDK</string>
<string>momochat</string>
</array>
There is a high chance of crashing in iOS9 because the Jsonkit used is incompatible under iOS9 ;
iOS9 needs to upgrade https , you can fall back to allowing http requests, the solution: add the following code to info.plist :
<key>NSAppTransportSecurity</key>
<dict>
<key>NSAllowsArbitraryLoads</key>
<true/>
</dict>
Xcode7 problem
After the enterprise certificate is installed, it is found that it cannot be opened, and the following warning pops up. After iOS9 , the certificate needs to be trusted. Method: Settings -> General -> Description File -> Select the corresponding enterprise certificate description file -> Trust;
Regarding the replacement of the library, because the suffixes of some static libraries in the new xcode have changed, from .dylib to .tbd , a compilation error occurs. The solution is as follows:
add manully: 1. Click the "+" to add a static library ;
2. Select add other ;
3. Then use the shortcut key Command+shift+g ;
4. There is a corresponding .dylib file in the /usr/lib folder ;
5. Clean the project, and then recompile;
Bitcode mode is an intermediate form of code for the compiled program. Programs containing the bitcode configuration will be compiled and linked on the App store . Bitcode allows Apple to re-optimize program binaries at a later stage without resubmitting a new version to the App Store . It is enabled by default in the new Xcode . Since MomoSDK , UnionPay, Alipay, etc. currently do not support this mode, it needs to be disabled in the Build settings . The method is as follows:
Solution: Build settings -> search for bitcode -> select No , then clean and recompile.