我在qml中添加了导入Qtpositioning 5.3,在.pro文件中添加了QT = qml快速定位
继承我的positionSource元素
positionSource { ID: src active: true preferredpositioningMethods: positionSource.SatellitepositioningMethods Component.onCompleted: { src.start() src.update() var supPos = "UnkNown" if (src.supportedpositioningMethods == positionSource.NopositioningMethods) { supPos = "NopositioningMethods" } else if (src.supportedpositioningMethods == positionSource.AllpositioningMethods) { supPos = "AllpositioningMethods" } else if (src.supportedpositioningMethods == positionSource.SatellitepositioningMethods) { supPos = "SatellitepositioningMethods" } else if (src.supportedpositioningMethods == positionSource.NonSatellitepositioningMethods) { supPos = "NonSatellitepositioningMethods" } console.log("position Source Loaded || Supported: "+supPos+" ValID: "+valID) } onpositionChanged: { var coord = src.position.coordinate; console.log("Coordinate:",coord.longitude,coord.latitude); } }
当我在iOS 8.1(iphone 4s)上运行应用程序时,它给了我AllpositioningMethods和ValID True.但是当我打电话时:
function getPos() { var coord = src.position.coordinate; posTest.text = "Coordinates lat:"+coord.latitude+" lon:"+coord.longitude+" time:"+src.position.timestamp}
它jus给了我NaN NaN和无效的时间戳…
有人尝试在真实设备上使用positionSource元素并让它工作……?我很快就会在其他设备上试试… ios和androID ..
更新****
似乎在AndroID 4.4.4(MotoX)上正常工作
>确保.pro文件中的构建中包含QT =定位.它在AndroID上似乎不是必需的,但在iOS上是必需的.
>确保为您的项目设置自定义Info.pList(http://doc.qt.io/qt-5/platform-notes-ios.html),并且它包括以下之一:
<key>NSLocationWhenInUseUsageDescription</key><string>Explanation to user.</string>
要么
<key>NSLocationAlwaysUsageDescription</key><string>Explanation to user.</string>
无论你添加哪一个,它都会提示.
总结以上是内存溢出为你收集整理的QtPositioning 5.3,QML PositionSource在ios 8.1上没有返回数据?全部内容,希望文章能够帮你解决QtPositioning 5.3,QML PositionSource在ios 8.1上没有返回数据?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)