开发工程中遇到的BUG

Xcode7自带Git创建的项目"Couldn’t communicate with a helper application"

zhunjiee 2015年10月08日提问

  • 关注 3 关注
  • 收藏 0 收藏,4.9k 浏览

问题对人有帮助,内容完整,我也想知道答案0问题没有实际价值,缺少关键内容,没有改进余地

Xcode7在创建项目的时候勾选此选项,

创建出来的项目会报如下错误警告:
"Couldn‘t communicate with a helper application",

我重启Xcode然后编译代码,通过Xcode自带commit提交,

还是会出现下面的错误警告

"Couldn‘t communicate with a helper application",
我就去了,helper application是什么啊?????
实在搞不懂了????
是我打开的方式不对吗?

1、Couldn’t communicate with a helper application in Xcode 7

问题一:

Couldn‘t communicate with a helper application in Xcode 7

翻译:不能与助手应用程序通信在Xcode7中(helper ->指的是git)

解决:

终端输入:

Xcrun git config --global user.email 邮箱

xcrun git config --global user.name gitHub的你的名字


2、网上下载的Demo运行时报错

问题二:

网上下载的Demo运行时报错

ld:library not find for -lpods-xxxxxx

clang: error: linker command failed with exit code 1 (use -v to see invocation)

解决:

1. 首先查看本地是否安装cocoapods, 如果没安装请先安装pod,

2. 如果安装cocoapods,请打开终端,cd ~/到你工程文件夹(或者将文件夹直接拖到终端中)

3. 使用命令行 pop install --verbose --no-repo-update

4. 请使用xxx.xcworkspace打开工程


3、Xcode升级导致插件失效

问题三:

Xcode升级导致插件失效

解决:

1. 在终端输入defaults read /Applications/Xcode.app/Contents/Info DVTPlugInCompatibilityUUID查看xcode的UUID。

2. 找到xcode插件所在的目录:~/Library/Application Support/Developer/Shared/Xcode/Plug-ins。在plist文件中找到DVTPlugInCompatibilityUUIDs, 点击加号, 添加一个item, 对应的value值为输入刚才终端中获得的UUID,cmd + s保存。

3. 重启Xcode,弹出的对话框中选择Load Bundle

4. 如果误点Skip Bundle,找到该插件安装路径下,继续打开在 info.plist 删除与命令端里面同样的UUID号,一般都是会在最后一行,自己添加的那一行也要删除掉。保存之后重启Xcode,再次重复上面的步奏。在重启就再次出现了插件提示


4、Unable to add app id because the ‘10‘ APP ID limit in ‘7‘days has been exceeded

问题四:

Unable to add app id because the ‘10‘ APP ID limit in ‘7‘days has been exceeded

翻译:无法添加应用程序id,因为“10”应用程序id已经超过限制(7日)

解决:

此问题针对于真机测试:

在developer center 重新设置一遍自己的APP ID 然后将APP ID 作为 Bundle ID添加到工程

免证书进行xcode真机调试方法:http://www.jianshu.com/p/3b2be6454462


5、Undefined symbols for architecture armv7:ld: symbol(s) not found for architecture armv7

问题五:

5.1: Undefined symbols for architecture armv7:

"_compress2", referenced from:

+[UMANDeflated deflatedDataPrefixedWith:level:source:] in libMobClickLibrary.a(UMDeflated.o)

ld: symbol(s) not found for architecture armv7

clang: error: linker command failed with exit code 1 (use -v to see invocation)

解决:

检查项目友盟这个库的依赖呀.确认库已经导入而且在链接的二进制库里面.(就是build phases里面).

检查是否某些文件路径未加入进来或者写错了

把xx文件库+进来

5.2: *** does not contain bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this target. for architecture armv7

解决:友盟的二进制库不支持bitcode.而Xcode默认是要支持bitcode的,而且如果支持的话,其中所有的二进制库和framework都必须包含bitcode(工程build setting -> build options ->Enable Bitcode设置为关闭)


6、installation failed invalid argument

问题6

installation failed invalid argument

翻译:安装失败,参数非法

原因:我把Bundle indentifier 置为空了!

解决1:

1、Quit Xcode

2、Clean out ~/Library/Developer/Xcode/DerivedData manually

3、rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"

4、iOS Simulator > Reset Content and Settings

解决2:随便添加一个Bundle indentifier


7、看不见控件是什么原因

原因:

1、根本没有创建实例化这个控件

2、没有设置尺寸

3、控件的颜色跟父控件的背景色一样

4、透明度alpha<=0.01

5、hidden = YES

6、没有添加到父控件中

7、被其他控件挡住了

8、位置不对

9、父控件发生了以上变化

10、特殊情况

*UIIamgeView没有设置image属性,或者设置的图片名不对

*UILabel没有设置文字,或者文字颜色和父控件的背景色一样

*UITextField没有设置文字,或者没有设置边框样式borderStyle

*UIPageControl没有设置总页数,不会显示小圆点

*UIButton内部imageView和titleLabel的frame被篡改了,或者没有内容

建议:

1、最好设置背景色和尺寸

2、控件的颜色尽量不要跟父控件的背景色一样


8、在Archive项目时,出现了“Your build settings specify a provisioning profile with the UUID “”, however, no such provisioning profile was found”的出错。一直提示指定UUID的provisioning profile找不到

问题8

在Archive项目时,出现了“Your build settings specify a provisioning profile with the UUID “”, however, no such provisioning profile was found”的出错。一直提示指定UUID的provisioning profile找不到

解决:

1.找到项目中的**.xcodeproj文件,点击右键,show package contents(打开包内容)。

2.打开后找到project.pbxproj文件,用文本编辑器打开。其实就是右键,点击open就好了。

3.打开这个文件后,按command+F,在这个文件中查找“PROVISIONING_PROFILE",找到和这个“

PROVISIONING_PROFILE = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";

"PROVISIONING_PROFILE[sdk=iphoneos*]" = "487F3EAC-05FB-4A2A-9EA0-31F1F35760EB";”类似的都删除。

4.然后保存文件,重新打开项目。xcode会提示你重新下载安装provisioning profile文件。下载后安装上就可以。


9、真机运行时,提示The executable was signed with invalid entitlements.

1.在工程中添加文件new file,选择plist文件,添加后名称为Entitlements.plist。

2.点击Entitlements.plist进行编辑,删除所有Root下的Key,然后添加一个Boolean类型,名称为get-task-allow的Key,Value为YES。

3.在Targets中的Build Setting选项卡中的Code Signing Entitlements的值设为Entitlements.plist,重新Build即可解决。


10、the file couldn‘t be opened because you don‘t have permission to view it

解决方法一:changed the value of the "Compiler for C/C++/Objective-C" to Default Compiler.

解决方法二:Project---Build Setting中 修改这一项,变成Default Compiler(Apple LLVM 6.0)

解决方法三:command + shift + k

解决方法四:xcode页面command +‘,‘调出设置页面点击最后一个‘Location选项‘,点击第一个小箭头 会跳转到一个文件夹-->>删除文件夹-->>command+shift+K Claen一下-->> command + R


11、error: [__NSArrayI objectAtIndex:]: index 1 beyond bounds [0 .. 0]

@interface ...

@property (nonatomic, readonly, strong) NSMutableArray *videos;

@end

@implementation ...

//懒加载初始化

- (id)init {

self = [super init];

if (self) {

_videos = [NSMutableArray new];

}

return self;

}


12、UIWebView 加载https站点出现NSURLConnection/CFURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9843)

http://www.itnose.net/detail/6042798.html


13、在使用百度地图时,使用的时候下面一句报错了~BMKMapPoint *pionts = new BMKMapPoint[index];用下面这句也报错    delete []points;

解决方案:将把文件后缀从m改成了mm。

分析:变态的百度静态库中采用ObjectC++实现,以上两句时ObjectC++的特性。如果把文件后缀改为mm,则xcode会用ObjectC++的方式来编译文件。


14、setValue:forUndefinedKey: this class is not key value coding-compliant for the key

要设置tableviewCell的customClass,而不是file‘s owner的custom class


15、_BSMachError: (os/kern) invalid capability (20) \

_BSMachError: (os/kern) invalid name (15) \

原因:是自己在alertAction中添加了时间,但是并未采用延时机制。

[alertVC addAction:[UIAlertAction actionWithTitle:@"现在升级" style:UIAlertActionStyleDefault handler:^(UIAlertAction * _Nonnull action) {

//这里添加了多线程,消除警告

dispatch_after(0.2, dispatch_get_main_queue(), ^{

NSURL *appStoreUrl = [NSURL URLWithString:[NSString stringWithFormat:kAppStore_APPVersionUrl,APP_ID]];

[[UIApplication sharedApplication] openURL:appStoreUrl];

NSLog(@"链接--%@",appStoreUrl);

});

}]];


16、command/usr/bin/codesign failed with exit code 1- code sign error

http://stackoverflow.com/questions/29242485/command-usr-bin-codesign-failed-with-exit-code-1-code-sign-error


17、ld: 4 duplicate symbols for architecture x86_64

问题  ld: 4 duplicate symbols for architecture x86_64

clang: error: linker command failed with exit code 1 (use -v to see invocation)

解决: "duplicate"和"symbols"。duplicate的中文意思是“重复的、复制的”,而symbols的意思是“符号”。也就是可能在你工程中引入了重复的东西。

第一种情况:在工程中重复导入了某一个类或文件,这一般出现在你添加第三方库的时候比较多,在不知道的情况下又导入了一次相同的类。

第二种情况:工程中在#import引入头文件的时候,将#import "XXX.h" 写成了#import "XXX.m"。错误的引入.m头文件


18、layoutSubviews什么时候调用

layoutSubviews在以下情况下会被调用:

1、init初始化不会触发layoutSubviews

2、addSubview会触发layoutSubviews

3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化

4、滚动一个UIScrollView会触发layoutSubviews

5、旋转Screen会触发父UIView上的layoutSubviews事件

6、改变一个UIView大小的时候也会触发父UIView上的layoutSubviews事件


19、-[__NSPlaceholderDictionary initWithObjects:forKeys:count:]: attempt to insert nil object from objects[2]

字典不能传空值


20、-[__NSDictionaryM objectAtIndexedSubscript:]: unrecognized selector sent

__NSDictionaryM  无法将值传到下标索引对象,就是数组越界,并且不是数组,而是字典,所以,遇到这种crash

两种情况:

1.首先看看你 indexPath.row 用的有没有问题;

2.看看你请求下来的数据类型对不对。

21、Error Domain=kCLErrorDomain Code=2 “The operation couldn’t be completed. (kCLErrorDomain error 2.)”

网络错误,CLGeocoder需要一个网络连接,不应该每分钟发送多个地理编码请求.geocoder断绝希望保护自己免受被请求从一个设备过载。你只是必须限制你发送的请求数

22、NSInternalInconsistencyException‘, reason: ‘Could not load NIB in bundle: NSBundle

方法一:

1. Right Click - Delete and Remove Reference

2. 重新引入文件

方法二:重命名该文件

23、objc_msgSend()报错Too many arguments to function call ,expected 0,have3

Build Setting--> Apple LLVM  - Preprocessing--> Enable Strict Checking of objc_msgSend Calls  改为 NO

24、void SendDelegateMessage(NSInvocation *): delegate (webView:decidePolicyForNewWindowAction:request:

- (void)dealloc {

_webview.delegate = nil;

[_webview stopLoading];

}

25、too many errors emitted, stopping now解决办法 / 莫名其妙的错误:could not build module ‘Foundation’

让整个pch文件的内容在这两行代码以内

#ifdef __OBJC__

#endif

26、Host is down -sendto(2) ‘192.168.1.2‘ port 53

看看自己的网络吧骚年,DNS和路由器IP不对应。

27、[NSISObjectiveLinearExpression coefficientForVariable:]: unrecognized selector sent to instance 0x1cd93850

- (void) viewWillDisappear: (BOOL) animated {

[super viewWillDisappear: animated];

// Force any text fields that might be being edited to end so the text is stored

[self.view.window endEditing: YES];

}

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

持续更新中。。。

。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。

作者:JJ骏
链接:https://www.jianshu.com/p/39bb64d8397f
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

原文地址:https://www.cnblogs.com/sundaysgarden/p/9094775.html

时间: 2024-08-02 22:51:18

开发工程中遇到的BUG的相关文章

在Andorid开发项目中遇到的Bug记录(续)

[22]遇到query cannot be resolved to a variable错误, 解决:1.Java里面定义的变量不能跟系统包里面的关键字相同(大小写不同也不行),系统包里面有个Query,把query改 2.变量在方法中是否被定义为局部变量,从而不能作为方法的返回值成其他名字即可 [23]Unable to execute dex: Multiple dex files define Landroid/support/v4/accessibilityservice/Accessi

关于web开发工程中URL参数的编码问题

近日在项目中,在velocity开发的页面模板中的使用a标签创建链接,并且带有需要提交的参数(这里没有使用form的原因是因为该模板生成的email,发送给客户,由于客户的email客户端可能是https,而模板上面的链接并不是跳转到https的站点,使用form将导致浏览器这种混合的链接).当通过该模板生成的页面上进行跳转时,发现链接提交的参数发生了变化,具体表现是参数提交时是一串包含10位任意可输出字符的字符串,字符串里有“+”字符,提交后后台后“+”字符不见了,取而代之是一个空格.通过fi

让你提前认识软件开发(51):VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改

第3部分 软件研发工作总结 VC++集成开发环境中Linux下Pclint工程的配置方法及常见错误修改 [文章摘要] Pclint是一种C/C++软件代码静态分析工具.它是一种更加严格的编译器,能够发现普通编译器所不能发现的代码中的很多问题,因此被广泛应用于软件开发项目中. 本文介绍了如何在VC++集成开发环境中配置Linux下的Pclint工程,给出了C语言中pclint规则A检查的常见错误,并描述了对应的修改办法. [关键词] VC++  Pclint  配置  操作  修改 1. 前言 P

如何通过热修复,搞定开发中的那些 Bug?

作为程序员,Bug 修复终究是绕不开的话题,本期移动开发精英俱乐部讨论的主题便是 Bug 修复中的 Hotfix,即热修复.接下来让我们跟随大牛的脚步来了解 Hotfix,就算你不能一下豁然开朗,相信也一定会有所启发.非常感谢赖春辉的整理,本文系国内 ITOM 管理平台 OneAPM 审校. 什么是热修复? 主持人-牛树民:我们自己的项目中还没有这方面的技术方案,最近一直在考虑这个.大家对热修复这个名词是怎么理解的?什么是热修复? 七里小晴天:是不是跟游戏打补丁差不多? longway:运行时,

iOS开发--Swift 如何完成工程中Swift和OC的混编桥接(Cocoapods同样适用)

由于SDK现在大部分都是OC版本, 所以假如你是一名主要以Swift语言进行开发的开发者, 就要面临如何让OC和Swift兼容在一个工程中, 如果你没有进行过这样的操作, 会感觉异常的茫然, 不用担心, 整个过程非常简单. 在已有的Swift工程中, 当你需要使用OC的类文件, 或者需要集成SDK时, 创建你需要的OC的类文件, 创建结束后, 会提示生成一个桥接头文件, 点击蓝色Create按钮. *OC工程也一样, 只是要进行相反的操作, 在需要创建OC文件的时候创建一个Swift的文件 *创

如何为Eclipse开发工具中创建的JavaWeb工程创建Servlet

在博客<在Eclipse中如何创建JavaWeb工程>中图文并茂的说明了Eclipse中创建JavaWeb工程的方法,本篇博客将告诉大家如何为Eclipse开发工具中创建的JavaWeb工程创建Servlet: 1.在Eclipse开发工具中创建的JavaWeb工程文件目录结构如下图: 说明: a).红框框定的结构用于存放Java类及其相应的包:用于存放Libraries文件夹: b).灰框框定的结构用于显示(非"存放")JavaWeb工程所依赖的JDK相关的jar包: c

web工程中的各种路径(eclipse开发)

目前遇到的 web 工程中要写url和路径的文件有 webContent中.jsp/.html src中的servlet类 src非servlet类的普通类 .jsp/.html form表单提交的action 1. 跳转到.jsp 使用相对路径,相对于web工程根目录 <!-- from JSP1.jsp to JSP2.jsp --> <!-- JSP1.jsp中的form --> <form action="File/JSP2.jsp"> &l

开发遇到的问题---【导入别人的工程后,父工程中的pom依赖引入报错】

解决方法: 1.先查看responsity中下载下来了没有,如果没有,就去查看conf目录下的settings.xml文件,看看配置的保存依赖的地址和仓库地址配置的是否正确(国内建议配成阿里的仓库). 2.重新复制依赖,删除之后,重新导入,这时候一般就能解决. 3.若在父工程中的pom文件报红,但不影响工程的使用,这时候只用在<dependencyManagement>上边,再新建一个<dependencies>,再次导入依赖,这时候就会自动下载了.</dependencie

JSPatch来更新已上线的App中出现的BUG(超级详细)

JSPatch来更新已上线的App中出现的BUG(超级详细) 字数2858 阅读422 评论15 喜欢29 JSPatch的作用是什么呢? 简单来说:(后面有具体的操作步骤以及在操作过程中会出现的错误) 1.iOS应用程序上架到AppStore需要等待苹果公司的审核,一般审核时间需要1到2周.虽然程序在上架前会经过测试人员的测试,但有时候还是不免会发生新版本上线后出现严重的bug,导致用户刚升级到新版本就出现crash,严重影响用户体验. 2.这时能做的只是赶紧修复bug然后提交等待漫长的App