如何使用Vuforia?

时间:2013-11-04 15:32:12

标签: ios iphone vuforia

您好我正在尝试使用Vuforia SDK开发iOS应用,但是我可以在哪里找到开始集成此SDK的方法?我查看了Vuforia网站,但是没有关于如何在我的应用程序中集成SDK的有趣文档?有一个教程,我可以遵循,以了解它是如何工作的?在官方网站上只有Unity的教程,但我想在Objective-C中开发我的应用程序。 我希望你能帮助我

4 个答案:

答案 0 :(得分:15)

我意识到这是一个非常古老的主题,但也许你会收到一封电子邮件ping,或者谷歌会发现这个有用。

所以让我猜,你想使用Vuforia的一个示例应用程序,但在你自己的项目中,对吗?你导入了一切并使它看起来就像他们的项目一样,但它甚至不会接近编译,对吧?那个示例应用几乎可以肯定是SampleVideo示例?如果是这样,请继续阅读......

1)如果只是在项目中包含库,Xcode 导致导入错误。你想做的是......

a)在Vuforia API中制作build文件夹的副本并将其放在其他地方

b)将其重命名为更有用的内容,例如" Vuforia"

c)使用Add ...将新文件夹放入您自己的项目中(您可以参考它,我复制)

d)转到Build Settings,输入"搜索"进入搜索栏(似乎多余,我知道)

e)您现在应该看到两条非常重要的行,即标题搜索路径和库搜索路径。如果你不这样做,你需要找到它们

f)双击标题搜索路径,弹出Gizmo。按+按钮。现在进入查找程序,找到Vuforia / include文件夹(如果你复制它可能在你自己的项目中,就像我一样)并将该文件夹拖到弹出的Gizmo中

g)重复图书馆,但改为拖动lib文件夹。

好的,完成了!不,对不起,我撒谎......

2)从他们想要的样本中导入代码。它可能在几个不同的文件夹中

3)进入Build Phases并在屏幕启动时进行构建。

4)ARC会出现很多错误。使用搜索栏查找这些文件并添加" -fno-objc-arc"每个人都有旗帜。根据需要重复。

5)做另一个版本,注意你错过了Vuforia无法告诉你(叹息)的库。所以在Build Phases中,打开Link Binary With并添加......

a)AVFoundation b)AudioToolbox c)QuartzCore d)CoreMedia e)CoreVideo f)MediaPlayer g)OpenGLES h)CoreMotion i)SystemConfiguration

6)做另一个构建。现在你会得到一个不同的错误,但在你点击它之前它会变得明显不同。寻找"缺少必需的架构"。如果您看到这一点,请将目标更改为手机,因为Vuforia无法在模拟器中工作。这是有道理的,因为它没有相机......或者没有,因为我的应用程序不仅仅是Vuforia,但这个限制意味着我无法在SIM卡上测试任何一个。 (叹息

7)所以你将目标切换到闪亮的新iPhone 5S,构建和...获取有关缺少架构的错误。所以现在你看到它缺少arm64 ...所以你必须去你的Build Settings,删除标准架构并添加armv7和armv7s。

8)现在您可以查看警告并着手修复代码中的错误以及很久以前弃用的调用。 naturalSize很简单:

AVURLAsset getting video size

最后一个警告。一旦你完成了所有的编译,你就会尝试将一个Vuforia头文件导入到你自己的代码中,然后你会得到关于" namespace"的另一个错误。确保将从其代码导入的任何文件更改为.mm。

你玩得开心吗?

答案 1 :(得分:6)

我希望此链接对您有所帮助,https://developer.vuforia.com/resources/dev-guide/step-2-installing-vuforia-sdk-ios

https://developer.vuforia.com/resources/dev-guide/getting-started-ios-native-sdk

  1. 将未归档的Vuforia sdk放入您的开发中 目录/文件夹。
  2. 在项目中添加libQCAR.a框架。
  3. 在XCode构建设置“Library Search Paths”
  4. 中设置libQCAR.a框架路径
  5. 从未归档的Vuforia sdk设置Vuforia标头类文件夹路径 在“标题搜索路径”
  6. 中的开发目录/文件夹中

答案 2 :(得分:3)

答案 3 :(得分:2)

对于Vuforia 4.0(目前处于测试阶段),Maury的回答对我来说并不是很有用。尽管我已经将架构设置为armv7 / armv7s,但我仍然遇到错误,错过了所需的架构armv7s和#34;

然后我也要改变:

  • 构建设置中的C ++语言方言:C ++ 11
  • 构建设置中的C ++标准库:libc ++

完成上述更改后,我的项目成功构建。