首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >添加ScanAPISDK后iOS应用程序崩溃

添加ScanAPISDK后iOS应用程序崩溃
EN

Stack Overflow用户
提问于 2017-04-01 12:43:37
回答 1查看 109关注 0票数 1

我正在尝试将socketscan SDK集成到我的objective C iOS应用程序中。我下载了scanapisdk,在我的项目主文件夹中复制了一份scanapisdk。我将文件和库引用添加到Xcode项目中。编译并构建应用程序。在设备上运行它。下面的代码已经运行了几年,没有任何问题。

我在m文件中将一个常量NSString声明为全局变量

NSString *const kSymbology =@“符号系统”;

并在h文件中声明为extern。

外部NSString *const kSymbology;

然后在数据库类中有这样的代码片段

代码语言:javascript
复制
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
const char *Symbology = (const char*)sqlite3_column_text(statement, 0);
strSymbology = [NSString stringWithUTF8String:Symbology];

[dict setValue:strSymbology forKey:kSymbology];
[symbologies addObject:dict];
[dict release];

代码崩溃在这一行dict setValue:strSymbology forKey:kSymbology;

当我将其更改为dict setValue:strSymbologyAlias forKey:@“Symbology”时,应用程序不会崩溃。

这对我来说没什么意义。错误似乎在其他地方,它在这里意外地显示出来。我在项目中添加的唯一新内容是对socketScan文件和库的引用。我甚至不会调用SDK中的任何方法。我注释掉了ScanApiHelper.mm文件中的所有方法,现在应用程序不会崩溃。我开始重新使用ScanApiHelper.mm中的一些方法,我发现当任何提到SktClassFactory的代码行(例如SktClassFactory createScanObject)都是活动的时,应用程序就会崩溃。

这是否与不使用CocoaPods安装软件开发工具包有关?

EN

回答 1

Stack Overflow用户

发布于 2017-04-04 09:02:43

这看起来像是名称空间冲突。这个libScanApiCore.a有一个名为kSymbology的变量,我的全局变量也叫kSymbology。一旦我将变量名改为ksymbology (小写s),我的应用程序就不再崩溃。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43152929

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档