Ben*_*rst 11 javascript c++ html5 android qt4
尝试使用Necessitas的QWebView端口查看HTML5网页中的GPS坐标.但是它总是响应不支持.
function load( )
{
if ( navigator.geolocation )
{
alert( "Supported." );
}
else
{
alert( "Not Supported!" );
}
}
Run Code Online (Sandbox Code Playgroud)
我已经改变了QWebPage以允许权限:
BrowserWebPage::BrowserWebPage( QObject* parent ) : QWebPage( parent )
{
connect( this,
SIGNAL( featurePermissionRequested( QWebFrame*, QWebPage::Feature ) ),
SLOT( permissionRequested( QWebFrame*, QWebPage::Feature ) ) );
}
void BrowserWebPage::permissionRequested( QWebFrame* frame, QWebPage::Feature feature )
{
if ( feature == Geolocation )
{
setFeaturePermission( frame, feature, PermissionGrantedByUser );
}
else //denied
{
setFeaturePermission( frame, feature, PermissionDeniedByUser );
}
}
Run Code Online (Sandbox Code Playgroud)
并设置以下权限:
android.permission.INTERNET对
android.permission.ACCESS_FINE_LOCATION
android.permission.ACCESS_COARSE_LOCATION
编辑
根据此页面,GeoLocation API存在于QtWebKit构建中.
http://trac.webkit.org/wiki/QtWebKitFeatures22
细节
电话:Galaxy Nexus
平台:Android 4.1.1(SDK 14)
框架:Qt 4.8.0 for Android armv7a
我认为你必须设置粗略位置和互联网权限,因为如果我是对的,精细位置仅用于 GPS。在任何情况下,两者都有是很好的原因,如果 GPS 不可用,则将使用互联网连接上的位置。
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.INTERNET" />
Run Code Online (Sandbox Code Playgroud)
我确实没有使用 qtwebkit 的经验,但这是我可以告诉你的基础知识。
| 归档时间: |
|
| 查看次数: |
1052 次 |
| 最近记录: |