Apple Mach-O链接器(Id)可达性错误

时间:2012-04-07 23:08:03

标签: objective-c ios xcode reachability mach-o

当我尝试构建使用可访问性的项目时,我不断收到此错误(错误仅在我尝试实现可访问性后出现): enter image description here

我在互联网上阅读了一些其他帖子,但似乎没有任何效果。我添加了SystemConfiguration.framework(项目,构建阶段,+),但这不起作用(我已经在错误出现时添加了它)。这是我实现文件的方式:

#import <UIKit/UIKit.h>
#import "Reachability.h"

@interface catalogDetailView : UIViewController{

}

-(void)checkNetwork;

@end

然后在.m:

#import "catalogDetailView.h"
-(void)checkNetwork{
    if ([self reachable]) {
        NSLog(@"Connected to Network");
    }
    else {
        NSLog(@"Connection Failed");
    }
}
-(BOOL)reachable {
    Reachability *r = [Reachability reachabilityWithHostName:@"apple.com"];
    NetworkStatus internetStatus = [r currentReachabilityStatus];
    if(internetStatus == NotReachable) {
        return NO;
    }
    return YES;
}

所以如果你能帮到那就太棒了!!谢谢 ;) 路加

2 个答案:

答案 0 :(得分:8)

您需要将Reachability.m添加到目标的“编译源”构建阶段。

一种方法:

  1. 在项目导航器中,在Xcode窗口的左侧选择Reachability.m。如果您没有看到,请选择菜单视图&gt;导航器&gt;显示Project Navigator。
  2. 在Xcode窗口的右侧显示文件检查器。查看&gt;公用事业&gt;显示文件检查器。
  3. 在目标会员资格部分,选中目标旁边的复选框。

答案 1 :(得分:1)

我敢打赌你的'编译源列表'不包含reachability.m。将其在构建阶段选项卡下拖到列表中。我经常发现在向项目添加文件时,Xcode通常不会添加目标编译列表中的文件(因为默认情况下不添加它们)。