iOS-我遇到的问题(一)

如果有错误希望大家给指正,谢谢

  • 1.Xcode打包时遇到的问题
Code Sign error: Provisioning profile does not match bundle identifier:
 The provisioning profile specified in your build settings (“描述文件名”) 
has an AppID of “你修改后的bundle id”
 which does not match your bundle identifier “你修改前的bundle id”.

解决办法:找到"工程的.xcodeproj"->右击->显示包内容->打开project.pbxproj文件->commod+F 搜索“你修改前的bundle id”->把搜索到的你的所有的“修改前的bundle id” 修改成“你修改后的bundle id”->然后再打包就没有问题了。

  • 2.Xcode打包时遇到的问题
no identity found: Command /usr/bin/codesign failed with exit code 1 

解决办法:在桌面直接: shift+Command+G,
输入: ~/Library/MobileDevice/Provisioning Profiles
删除出问题的provisioning profile 然后重新导入就ok 了。
注:~/Library/MobileDevice/Provisioning Profiles 这个路径就是描述文件的路径

  • 3.打包上传,点击Upload to AppStore的时候遇到的问题:
    This action could not be conpleted .Try again(-22421)
    解决办法:用Applacition Loader提交ipa包
    借鉴于网上别人的资料,谢谢
    http://www.cnblogs.com/godlovexq/p/5556685.html

  • 4.SVN同步时遇到这个问题


    svn问题.png

    原因是:svn把代码同步下来了,但是没有导入到工程里
    解决办法:把CustomImageView和MyCaseModifyViewController两个类添加到工程里面

  • 5.集成微博登录和分享时遇到的错误

[NSConcreteMutableData wbsdk_base64EncodedString]: unrecognized selector
sent to instance 0x10908ed60…..

解决方案:在Other Linker Flags 中添加-ObjC就可以了 ,或者添加-all_load

  • 6.使用Application loader上传ipa文件遇到第一个问题


    屏幕快照.png

    原因:开发者账号下面没有这个identifier,我登录Application loader的账号和上架App的开发者账号不是同一个
    解决办法:替换一下登录Application loader的账号。

  • 7.使用Application loader上传ipa文件遇到第二个问题


    屏幕快照.png

    而且程序里面有警告:xxx.xcodeproj Applications using launch screen files and targeting iOS 7.1 and earlier need to also include a launch image in an asset catalog.
    原因:程序里面是缺了一个适配iPhone5的启动图
    解决办法:

  • 1、图片的名称必须叫Default-568.png。

  • 2、必须把图片放在工程的根目录下。

  • 3、图片尺寸必须是320*568。
    在info.plist里面添加

<key>UILaunchImages</key>
<array>
    <dict>
        <key>UILaunchImageName</key>
        <string>Default-568</string>
        <key>UILaunchImageSize</key>
        <string>{320, 568}</string>
    </dict>
</array>
  • 8.从项目中删除了某个目录、文件以后,编译出现警告信息:
    ld: warning: directory not found for option "xxxxxx"
    去掉警告的办法如下:

  • 1.选择工程, 编译的 (targets)

  • 2.选择 Build Settings 菜单

  • 3.查找Framework Search Paths、Header Search Paths、Library Search Paths, 删掉编译报warning的路径
    解决办法来自:StormerZ的博客 谢谢

  • 9.使用webview加载视频时,添加异常断点,出现问题崩溃-libc++abi.dylib`__cxa_throw,

    崩溃.png

    解决办法:将断点的Exception选项改为Objective-C
    解决办法.png

    解决办法来自于: 活在当下_L- 视频播放时异常 ,谢谢

  • 10.使用微博微信SDK时遇到这个问题:-[__NSArrayM enqueue:]: unrecognized selector sent to instance 0x60800025449
    网上都说是僵尸指针的问题,最后我的解决办法是在
    TARGETS->Builds Settings -> Other Linker Flags ->添加-all_load和-ObjC

  • 11.使用微博SDK时遇到的问题,程序崩溃

-[AppDelegate application:openURL:sourceApplication:annotation:]:
unrecognized selector sent to instance 0x600000032900

原因是微博开放平台上面没有保存本程序的bundleId,微博开放平台上面的每个应用,只能绑定三个bundleId,且使用的bundleId必须绑定在微博开放平台的应用上。
借鉴与 zhonggaorong的专栏,谢谢了

  • 12.崩溃如下
Terminating app due to uncaught exception 'NSGenericException', reason: 
'*** Collection <__NSArrayM: 0x170053c50> was mutated while being enumerated.'

问题原因:在遍历数组时,对数组元素进行了增删操作。知道问题了自己修改就好
解决办法来自于: 胡东东博客 ,谢谢

  • 13.真机调试时遇到的问题
Development cannot be enabled while your device is locked.
Please unlock your device and reattach. (0xE80000E2).

解决方法是:打开手机设置->通用->还原->还原位置与隐私;
然后会有弹窗提示你是否信任此电脑,点击信任,重启Xcode之后,运行项目到手机上
解决办法来自于:iOS中项目运行到真机上提示设备被锁定解决方法Development cannot be enabled while your device is locked. ,谢谢

推荐阅读更多精彩内容