Xcode7 and iOS9 the way to fit

Source: Internet
Author: User

After upgrading xcode7.2 from xcode6.x, it was discovered that a bunch of things would be done to fit, or the previous project could not be executed properly.

I. Changing the Library

Dylib suffix of the library to be replaced by the TBD suffix. For example, the following can be seen

Before changing the library:

After changing the library:



Two. HTTPS issues

xcode7.2 The default project is HTTPS. So in order to continue using HTTP. Need to be added to the info.plist for example to see:



Three. Bitcode Issues

Real machine test, hair now the simulator is not wrong, the real problem, reported such as the following similar problems:

'/users/**/framework/sdks/polymerpay/library/mobstat/lib**sdk.a (**FORSDK.O) ' does not contain bitcode. You must rebuild it with Bitcode enabled (Xcodesetting enable_bitcode), obtain a updated library from the vendor, or DISA Blebitcode for this target. For Architecture arm64


Including the words Bitcode,Bitcode is an intermediate form of code that is compiled by a program.

Programs that include Bitcode configuration will be compiled and linked on the App store. Bitcode agrees that Apple is optimizing the binaries of the program in the later stages without having to submit a new version number to the App store again.

When the program is submitted to the App Store, Xcode compiles the program into an intermediate representation (Bitcode). The App Store then compiles the botcode into a 64-bit or 32-bit program that can be run.

In the above error message, we mentioned how to deal with the problem we encountered:

You must rebuild it with Bitcode enabled (Xcode setting Enable_bitcode), obtain a updated library from the vendor, Ordisab Le Bitcode for this target. For Architecture arm64

Either let the third-party library support or turn off the target's bitcode option.

In fact, in Xcode 7, when we create a new iOS program, the Bitcode option is set to Yes by default. We can see this setting in the "Build Settings", "Enable bitcode" option. It's just that. What we need to consider now is three platforms: Ios,mac Os,watchos.

For iOS. Bitcode is optional and is required for Watchos,bitcode, while Mac OS does not support Bitcode.

Suppose we open the bitcode, and when we submit the package, the following interface will also have a bitcode option:


So. Suppose our project needs to support Bitcode. It is necessary to require all third-party libraries that are introduced to support Bitcode.

Otherwise, press the view to close the Bitcode



three. White list issues

Upgrade to xcode7.2. If the project has to jump to other apps, you need to add the app's Scheme in Info.plist , otherwise you can't call or jump


<key>LSApplicationQueriesSchemes</key>
<array>
<string>iosamap</string>
<string>baidumap</string>
<string>seeyaa</string>
<string>wechat</string>
<string>weixin</string>
<string>sinaweibohd</string>
<string>sinaweibo</string>
<string>sinaweibosso</string>
<string>weibosdk</string>
<string>weibosdk2.5</string>
<string>mqqapi</string>
<string>mqq</string>
<string>mqqOpensdkSSoLogin</string>
<string>mqqconnect</string>
<string>mqqopensdkdataline</string>
<string>mqqopensdkgrouptribeshare</string>
<string>mqqopensdkfriend</string>
<string>mqqopensdkapi</string>
<string>mqqopensdkapiV2</string>
<string>mqqopensdkapiV3</string>
<string>mqzoneopensdk</string>
<string>wtloginmqq</string>
<string>wtloginmqq2</string>
<string>mqqwpa</string>
<string>mqzone</string>
<string>mqzonev2</string>
<string>mqzoneshare</string>
<string>wtloginqzone</string>
<string>mqzonewx</string>
<string>mqzoneopensdkapiV2</string>
<string>mqzoneopensdkapi19</string>
<string>mqzoneopensdkapi</string>
<string>mqzoneopensdk</string>
<string>alipay</string>
<string>alipayshare</string>
</array>


Four. Packaging problems

Failed to locate or generate matching signing assets
Xcode attempted to locate or generate matching signing assets and failed to doing so because of the following issues.
Missing IOS distribution signing identity for ... Xcode can request one for you.

For example, the following

The reason for this is that Apple World Wide Developer Relations Certificate Authority has an expiration time of February 2016 14. Apple answers such as the following:

Thanks for bringing the attention of the community and apologies for the issues you ' ve been have. This issue stems from have a copy of the expired WWDR Intermediate certificate in both your System and Login keychains. To resolve the issue, your should first download and install the NEWWWDR Intermediate certificate (by double-clicking on th e file). Next, in the Keychain Access application, select the System Keychain. Make sure to select "Show Expired certificates" in the View menu and then delete the Expired version of the Apple Worldwid E Developer Relations Certificate Authority intermediate Certificate (expired on February 14, 2016). Your certificates should now appear as valid in Keychain Access and being available to Xcode for submissions to the APP Store .

Simply put, the root certificate that issued the developer certificate has expired. Suppose this time you open keychain to see your announcement certificate would be this:





This is the Apple World Wide Developer relations Certificate Authority expired. So the issued certificate is not available.

Now for the solution:
1. Open Keychain (keychain), locate the expired Apple World Wide Developer Relation Certification Authorityin the login and system, and then delete it
Note under the Keychain Display menu, set to show expired certificates




2. Download this link in the applewwdrca.cer certificate to local
3. Remember to set permissions on the system keychain to open


4. Install the applewwdrca.cer into the login and system
After the setup is successful, you can. Check to see if your published certificate is OK.






Reference link:

http://jingyan.baidu.com/ article/a3aad71ac4de98b1fb0096ac.html

Http://www.jianshu.com/p/cda1790ea317?appinstall=0

HTTP://WWW.JIANSHU.COM/P/3E1B4E2D06C6

http://www.jianshu.com/p/a8cce94d508e




Xcode7 and iOS9 adaptation of the road

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.