2012-01-19 47 views
0

規格: 的WebWorks 2.2,曲線9330 OS 6模擬器和設備黑莓WebWorks的短信監聽器異常

我們,我已經試過剛纔的一切,我不明白這一點。我的應用程序有一個主網頁(index.html的)和背景頁面(listener.html),按指定的位置:

<?xml version="1.0" encoding="UTF-8"?> 
<widget xmlns="http://www.w3.org/ns/widgets" 
    xmlns:rim="http://www.blackberry.com/ns/widgets" 
    version="1.0.0.0" rim:header="SimpleSMS"> 
    <name>SimpleSMS</name> 
    <description>Simple SMS</description> 
    <content src="index.html"> 
     <rim:background src="listener.html" runOnStartup="true" /> 
    </content> 
    <rim:navigation mode="focus" /> 
    <access subdomains="false" uri="http://jsconsole.com"/> 
    <feature id="blackberry.message.sms" /> 
    <feature id="blackberry.app" /> 
    <feature id="blackberry.io.dir" /> 
    <feature id="blackberry.io.file" /> 
    <feature id="blackberry.utils" /> 
</widget> 

的listener.html看起來是這樣的:

<!DOCTYPE html> 
<html> 
    <head> 
    <script type="text/javascript" src="message_db2.js"></script> 
    <script type="text/javascript"> 
    </script> 
    </head> 
    <body onload="initializeListener();"> 
    </body> 
</html> 

的initializeListener( )功能如下:

function initializeListener() { 
    blackberry.message.sms.isListeningForMessage = true; 
    blackberry.message.sms.addReceiveListener(messageListener); 
} 

問題: 當我安裝我的應用程序,與聽者開始運行,我的應用程序可以毫無問題接收短信。只要我打開主應用程序,就會出現問題。如果我只是使用後退或結束按鈕將應用程序最小化到後臺,接收到的下一個短消息會導致異常。如果我通過菜單關閉應用程序,則沒有例外,但監聽程序停止運行。我已經評論messageListener和index.html中的所有代碼完全不會顯示一些html。幾乎沒有關於建立背景頁面的文檔。有沒有人有任何想法?提前致謝。

+0

你好,你是否能夠使用WebWorks 2.2在黑莓上收聽並閱讀短信?如果是,你想不久之後解釋一下?提前致謝。 –

回答

0

是不是webworks會轉到這些不同的頁面並丟棄前一頁中的所有內容? (什麼樣的事情發生在填寫表單了,當你去一個新的頁面在瀏覽器中)

也許你需要利用Application Events檢查時,應用程序進入到前景或背景;也許雙重檢查isListeningForMessage?

我想的有點像

function onFG() 
{ 
    if (!blackberry.message.sms.isListeningForMessage) 
    { 
    blackberry.message.sms.isListeningForMessage = true; 
    blackberry.message.sms.addReceiveListener(messageListener); 
    } 
} 

blackberry.app.event.onForeground(onFG); 

您還可以使用isForeground布爾的,如果你需要在你的代碼區分它正在運行。