我正在尝试使用POI功能创建一个简单的Wikitude AR Xamarin应用程序。我在iPhone 5S上使用Wikitude组件5.3.0和iOS 10.2,使用Xamarin Studio 6.1.1和Xamarin iOS 10.0.1.8。我正在使用MvvmCross创建具有共享代码的PCL库,并尝试使用WTArchitectView
创建我的UIViewController。我已经创建了一个自定义绑定,用于从myviewmodel获取位置更新。可在此处https://bitbucket.org/ershovd/xamarin-augmented/src访问项目代码。
问题是我无法获得位置更新,并且不会调用onLocationChanged
JS函数。我已设置LocationAlwaysUsageDescription设置,并在提示时启用应用程序中的位置信息。我甚至在调试时获得位置信息(纬度,经度)。但是,当我尝试使用具有特定坐标信息的InjectLocation()
方法时,JS中的onLocationChanged处理程序不会被调用。此外,WTArchitectView实例上的IsUsingInjectedLocation始终设置为false,即使我指定UseInjectedLocation = true;
Android项目的类似设置工作正常,我也附上了它。
我试图使用官方的Xamarin示例https://github.com/Wikitude/wikitude-xamarin/,但它们已经过时了。在我升级到最新版本并修复一些编译错误(API与最新版本相比有一些变化)之后,它仍会产生相同的结果(例如onLocationChanged事件不会被调用而InjectLocation方法什么都不做。
我是否遗漏了我需要在iOS应用程序中设置的用于接收更新位置更新的内容?为什么IsUsingInjectedLocation属性始终设置为false,如何将其设置为启用?
此外,如果有人可以在iOS的最新Xamarin组件版本(5.3.0)的位置示例中提供POI的工作示例,这将非常有用。
谢谢,
答案 0 :(得分:0)
问题是我将错误的枚举Wikitude.Architect.WTFeatures.Geo
值传递给方法void foo() {
struct detail {
static void bar() {
//statements
}
};
detail::bar();
}
。对我有用的价值是foo
。 https://developers.google.com/maps/faq#usage_apis