你能指导我如何正确地将静态库链接到iPhone项目.我使用添加到app项目的静态库项目作为直接依赖(目标 - >一般 - >直接依赖)并且所有工作正常,但是类别.静态库中定义的类别在app中不起作用.
所以我的问题是如何将静态库与一些类别添加到其他项目中?
一般来说,在其他项目的应用程序项目代码中使用的最佳做法是什么?
我正在为iOS应用程序开发一个插件.我正在将它编译成.a文件,然后由主xcode项目使用.
到目前为止,我已在此库中创建了一个UIDevice类的类别.当我使用此库运行主项目时,由于无法识别的选择器而崩溃
- [UIDevice platform]:发送到实例的无法识别的选择器
平台是我通过类别添加的功能之一.
所以我认为它根本没有链接这些函数,并且将ac函数添加到与UIDevice类相同的文件中,然后从我的代码中调用它.
这次主项目运行正常...所以我想也许这是我做的其他事情并删除了C函数.但是,由于无法识别的选择器,它再次崩溃了.
我的问题:为什么xcode忽略了类别定义,除非我调用在同一个文件中声明的函数?
是否有一个xcode设置我可以更改,使其包含来自UIDevice类别的这些方法,无论我是否从该文件调用函数?
干杯
是否有可能以某种方式锁定字段,MFMailComposeViewController以便用户无法更改正文,收件人等?我需要用户发送的电子邮件去特定帐户和身体符合某些标准,所以如果用户大幅度编辑格式,一切都可能会出现可怕的错误.当时正文从用户的数据填充输入到上一个视图中的文本字段和日期选择器.
基本上我认为将字段锁定而不是显示警告或者说"请不要编辑消息"这样更专业,所以如果字段无法锁定,这不是一个大问题,但任何帮助我将不胜感激.
我的第一个iPhone应用程序已准备好使用Application Uploader提交.我想我明白我必须通过在Xcode中使用Product:Archive来创建文件,但是当我这样做时,我收到以下消息:
错误:无法打开可执行文件'/Users/Library/Developer/Xcode/DerivedData/test-euevazxsqeehnwantvxjhqwkytxr/ArchiveIntermediates/test/InstallationBuildProductsLocation/Applications/test.app/test'
该应用程序在我的手机和模拟器上构建并运行良好,所以我可以就如何解决这个问题提出一些建议吗?谢谢.
我正在尝试实现SVProgressHUD活动指示器.我将这些类复制到我的项目中,并将以下代码添加到我的appDelegate中,但无法弄清楚它崩溃的原因.
我得到他们跟随错误,我不知道在哪里修复它:
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_SVProgressHUD", referenced from:
objc-class-ref in QuotesAppDelegate.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)
这是代码:
#import "SVProgressHUD.h"
@implementation QuotesAppDelegate
- (void)startLoading
{
//call this in your app delegate instead of setting window.rootViewController to your main view controller
//you can show a UIActivityIndiocatorView here or something if you like
[SVProgressHUD show];
[self performSelectorInBackground:@selector(loadInBackground) withObject:nil];
}
- (void)loadInBackground
{
//do your loading …Run Code Online (Sandbox Code Playgroud) 请从下面的错误帮助我.
我正在使用第三方框架(libIPhonecharting)处理图形,每个东西在模拟器中工作正常,但是当我尝试构建.app文件以在IPAD设备中安装时,我收到以下错误消息.
忽略文件/Users/xyz/Desktop/xyzIPAD/library/4.0/Release-iphoneos/libIPhoneCharting.a,文件是为归档而构建的,而不是被链接的体系结构(armv6)
体系结构armv6的未定义符号:"_ OBJC_CLASS _ $ _ DTCStroke",引自:DemoLineChart.o中的objc-class-ref"_OBJC_CLASS _ $ _ IPCBar3DChart",引自:DemoBar3DChart.o中的objc-class-ref"_OBJC_CLASS _ $ _ IPCLineChart",引用自:DemoLineChart.o中的objc-class-ref"_ OBJC_CLASS _ $ _ DTCDefaultCategoryDataset",引自:DemoBar3DChart.o中的objc-class-ref,DemoLineChart.o中的objc-class-ref"_DTC_STROKE_CAP_SQUARE",引用自:+ [DemoLineChart(Private) getRenderWithRender:]在DemoLineChart.o"_ OBJC_CLASS _ $ _ IPCTitle"中,引用自:DemoBar3DChart.o中的objc-class-ref,在DemoLineChart.o中的objc-class-ref"_DTC_STROKE_JOIN_BEVEL",引自:+ [DemoLineChart(Private)getRenderWithRender:]在DemoLineChart.o ld:找不到架构armv6的符号collect2:ld返回1退出状态
我在我的项目中使用了几个'.o'文件,在编译时显示以下错误,
error:linker command failed with exit code 1 (use -v to see invocation)
Run Code Online (Sandbox Code Playgroud)
我在下面发布了错误日志
Ld /Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator/app.app/app normal i386
cd /Users/deepak/Workspace/iosDevelopement/PROJECTS/KML/app
setenv IPHONEOS_DEPLOYMENT_TARGET 4.3
setenv PATH "/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Applications/Xcode.app/Contents/Developer/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin"
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang -arch i386 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator6.0.sdk -L/Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator -F/Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator -F/Users/deepak/Workspace/iosDevelopement/PROJECTS/KML/app -filelist /Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Intermediates/app.build/Debug-iphonesimulator/app.build/Objects-normal/i386/app.LinkFileList -Xlinker -objc_abi_version -Xlinker 2 -fobjc-arc -fobjc-link-runtime -Xlinker -no_implicit_dylibs -mios-simulator-version-min=4.3 -lstdc++ -licucore -lz -framework MapKit -framework CoreLocation -framework QuartzCore -framework UIKit -framework Foundation -framework CoreGraphics -framework KML -o /Users/deepak/Library/Developer/Xcode/DerivedData/app-bnwpvhpbrfdurbdgxucyddqyfosh/Build/Products/Debug-iphonesimulator/app.app/app
Undefined symbols for architecture i386:
"_OBJC_CLASS_$_ZipException", referenced from:
objc-class-ref in ZipFile.o
objc-class-ref in ZipReadStream.o
objc-class-ref in …Run Code Online (Sandbox Code Playgroud) 大家好,
[Error: objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)]
I am running an application which will produce sound after button is clicked ,
Run Code Online (Sandbox Code Playgroud)
看到错误后,我已经包含了音频的所有框架
[ objc-class-ref in ViewController.o
ld: symbol(s) not found for architecture i386
clang: error: linker command failed with exit code 1 (use -v to see invocation)
]
Run Code Online (Sandbox Code Playgroud)
从堆栈溢出但仍然不适合我..请看下面的代码我已经包括我的.h和.m文件,并建议我一些解决方案
它可能是一个链接器错误,但我已经从构建阶段包含了框架并包含了#import框架..请查看我的下面的代码,如果我遗漏了一些东西请告诉我...我是iPhone开发的自学初学者..
// ViewController.h
// Audioplaying
//
// Created by Vaibhav on 12/31/12. …Run Code Online (Sandbox Code Playgroud) 我需要在我的应用程序中加入QR,即时使用zxing,
扫描测试运行得非常好,并且在遵循所有指令后导入小部件时,一切顺利,但是
我在实现widget和QRCodeReader的代码时遇到了这个错误
体系结构i386的未定义符号:"_ OBJC_CLASS _ $ _ ZXingWidgetController",引自:AttendanceVC.o中的objc-class-ref"_OBJC_CLASS _ $ _ QRCodeReader",引自:AttendanceVC.o中的objc-class-ref ld:未找到符号对于体系结构i386 clang:错误:链接器命令失败,退出代码为1(使用-v查看调用)
那么如何解决这个问题呢?
编辑:我的构建设置架构是: i386 armv6 armv7
非常感谢!
ios ×5
iphone ×4
objective-c ×3
xcode ×3
categories ×2
armv6 ×1
armv7 ×1
build ×1
cocoa-touch ×1
email ×1
ios4 ×1
linker ×1
locking ×1
mfmailcomposeviewcontroller ×1
xcode4 ×1
xcode4.2 ×1
xcode4.5 ×1
zxing ×1