0

我正在尝试运行地图示例 Qml,但是我的 MapView 一直加载为黑色。我检查了控制台输出并发现了这一点。

slogger2 buffer handle not initialized. ../../lgmon_api.c, logEvent(), around line 578!
cpp:: Created document 
cpp:: properties set 
MapViewPrivate::removeRenderEngine 
using the following render engine:  bb::cascades::maps::BlankRenderEngine 
MapViewPrivate::removeRenderEngine 
removing the old render engine:  bb::cascades::maps::BlankRenderEngine 
RenderEngineManager::RenderEngineManager 
RenderEngineManager::scanForPlugins() 
render engine search: searching   QDir( "/apps/com.example.GConnectBB.testDev__GConnectBB7836cab4/native/mapview-renderengine" , nameFilters = { * },  QDir::SortFlags( Name | IgnoreCase ) , QDir::Filters( Dirs|Files|Drives|AllEntries ) )  
render engine search: searching   QDir( "/base/usr/lib/qt4/plugins/mapview-renderengine" , nameFilters = { * },  QDir::SortFlags( Name | IgnoreCase ) , QDir::Filters( Dirs|Files|Drives|AllEntries ) )  
render engine search: attempting to load  "/base/usr/lib/qt4/plugins/mapview-renderengine/libRenderEngine3d.so" 
unknown symbol: _ZTIN2bb8platform3geo11GeoLocationE
unknown symbol: _ZTIN2bb8platform3geo11GeoLocationE
unknown symbol: _ZNK2bb8platform3geo11GeoLocation10metaObjectEv
unknown symbol: _ZN2bb8platform3geo11GeoLocation11qt_metacastEPKc
unknown symbol: _ZN2bb8platform3geo11GeoLocation11qt_metacallEN11QMetaObject4CallEiPPv
unknown symbol: _ZNK2bb8platform3geo11GeoLocation11boundingBoxEv
unknown symbol: _ZTIN2bb8cascades4maps17BlankRenderEngineE
unknown symbol: _ZN2bb8cascades4maps17BlankRenderEngine16staticMetaObjectE
unknown symbol: _ZTIN2bb8platform3geo10GeographicE
RenderEngineManager::engine(  <ViewProperties altitude=0, heading=0, lat=43.4682, lon=-80.5196, tilt=0, window=QSize(0, 0) >  ) 
using the following render engine:  bb::cascades::maps::BlankRenderEngine 

所以看起来它没有为我的地图加载合适的渲染引擎。我尝试使用黑莓操作系统更新更新我的 SDK 并更新手机上的操作系统,但无济于事。

这是我的地图的完整 Qml:

import bb.cascades 1.0
import bb.cascades.maps 1.0

Page {
    Container {
        layout: StackLayout {
        }
        MapView {
            id: mapview
            latitude: 43.468245
            longitude: -80.519603
            altitude: 10000
        }
    }
}

更多详细信息:操作系统版本:10.9.10.35 本机 SDK:10.0.9.1673 Momentics 版本:10.0.9

我也尝试了另一个 SDK 版本,10.0.10.xxx,它也没有工作。

4

2 回答 2

3

正如@Hithredin 上面在评论中提到的那样,为了拥有地图功能,您需要确保在.pro文件中为链接器指定了所有要链接的库:

LIBS += -lbbplatform -lbbcascadesmaps -lGLESv1_CM

而且,如果您正在使用地理定位(在您使用地图时经常发生这种情况),您需要在bar-descriptor.xml文件中拥有以下权限集:

<permission>read_geolocation</permission>
<permission>access_location_services</permission>

有关 Blackberry 开发网站上的地图和位置的更多信息:

于 2013-03-13T04:38:48.100 回答
0

确保包括

#include <bb/cascades/maps/MapView>

在您的 ApplicationUI.hpp 或 ApplicationUI.cpp 中。

于 2015-08-17T14:37:58.333 回答