我需要找到一種方法,在黑莓10 我的web應用程序是純普通瀏覽器,工作從打開瀏覽器原生地圖應用程序,而無需使用的WebWorks。原生地圖應用在BlackBerry 10
我想它必須是一個URI方案,應該提供一個簡單的方法來執行此操作。 我已經爲iOS,Android和WP8做了這個。但黑莓10設備給我一個真正的痛苦。
同樣,我的網絡應用程序在BB10設備上的瀏覽器中工作。
我需要找到一種方法,在黑莓10 我的web應用程序是純普通瀏覽器,工作從打開瀏覽器原生地圖應用程序,而無需使用的WebWorks。原生地圖應用在BlackBerry 10
我想它必須是一個URI方案,應該提供一個簡單的方法來執行此操作。 我已經爲iOS,Android和WP8做了這個。但黑莓10設備給我一個真正的痛苦。
同樣,我的網絡應用程序在BB10設備上的瀏覽器中工作。
我現在有一個類似的問題,我可以打開本機應用程序,但它總是會顯示在當前位置,並且不會有不同位置的指針(我無法將任何參數傳遞到地圖),但要打開地圖,只需使用
var url =「maps:any address」; //地址不會有所作爲 ,因爲我無法傳遞參數。window.open(url);
(黑莓Z10測試)
嘗試這些URI:
地理:-34.6033,-58.3817(布宜諾斯艾利斯,阿根廷)
地理:52.5167,13.3833 (德國柏林)
在瀏覽器中爲我工作。
看起來像沒有webworks那樣工作。 剛剛嘗試了geo:URI,但它們不適用於應用程序。 在BB瀏覽器中,它們工作正常,但不在應用程序中。
由於最近有關於BlackBerry的文檔如何做到這一點。
'延伸杆descriptor.xml' 文件具有所需urischeme:
<invoke-target id="com.mycompany.myapplication">
<type>APPLICATION</type>
<filter>
<action>bb.action.VIEW</action>
<mime-type>*</mime-type>
<property var="uris" value="activetext:"/>
</filter>
<invoke-target-pattern>
<pattern-value type="uri">activetext:</pattern-value>
</invoke-target-pattern>
之後,在應用程序代碼(從黑莓文檔):
// File: service.cpp
#include "service.hpp"
#include <bb/Application>
#include <bb/platform/Notification>
#include <bb/platform/NotificationDefaultApplicationSettings>
#include <bb/system/InvokeManager>
using namespace bb::platform;
using namespace bb::system;
Service::Service() :
QObject(),
m_notify(new Notification(this)),
m_invokeManager(new InvokeManager(this))
{
// Whenever the app is invoked, call handleInvoke()
m_invokeManager->connect(m_invokeManager,
SIGNAL(invoked(const bb::system::InvokeRequest&)),
this,
SLOT(handleInvoke(const bb::system::InvokeRequest&)));
// Configure app to allow notifications
NotificationDefaultApplicationSettings settings;
settings.setPreview(NotificationPriorityPolicy::Allow);
settings.apply();
// Set a common notification title
m_notify->setTitle("Headless service");
}
void Service::handleInvoke(
const bb::system::InvokeRequest & request)
{
// Check if timer trigger invoked the app
if (request.action().compare("bb.action.VIEW")
== 0) {
m_notify->setBody("Timer alert!");
Notification::clearEffectsForAll();
Notification::deleteAllFromInbox();
m_notify->notify();
// Do necessary handling here.
qDebug() << request.uri();
}
}
謝謝@invisible520,我已經在Z10設備上試過這個uri方案,是的,地圖ap p打開,但是,我也沒有設法在那裏傳遞經緯度參數... – kio21