2010-04-19 63 views
2

我所試圖做的是顯示在我的應用一個簡單的網頁(沒有了JavaScript,Cookie或任何腳本,而不是試圖檢測任何事件,如鼠標點擊等) 。顯示簡單的網頁在我的應用程序使用BlackBerry BrowserField

我使用的下方,現在我得到的代碼是空白屏幕。我知道,應用程序訪問互聯網(在右上角的數據傳輸箭頭閃爍),但不知道爲什麼它不渲染。

我使用的代碼是:要注意

HttpConnectionFactory factory = new HttpConnectionFactory("www.google.ca",HttpConnectionFactory.TRANSPORT_WIFI | HttpConnectionFactory.TRANSPORT_WAP2 | HttpConnectionFactory.TRANSPORT_DIRECT_TCP); 

while(true) 
{ 
    try 
    { 
      HttpConnection connection = factory.getNextConnection(); 
      try 
      { 
       BrowserContent bc = RenderingSession.getNewInstance().getBrowserContent(connection,null,0); 
       Field f = bc.getDisplayableContent(); 
       add(f); 
      } 
      catch(RenderingException e) 
      { 
       //Log the error or store it for displaying to 
       //the end user if no transports succeed 
       System.out.println("error with rendering page"); 
      } 
    } 
    catch(NoMoreTransportsException e) 
    { 
      //There are no more transports to attempt 
      //Dialog.alert("Unable to perform request"); //Note you should never 
      //attempt network activity on the event thread 
      System.out.println("no more transport"); 
      break; 
    } 
} 

幾點:使用

  1. IM的HTTP連接工廠類從www.versatilemonkey.com只有監守他們impelemented抽象的httpConnection類。如果有人也可以指導我如何實現我自己的,這將是偉大的。

  2. 我使用「0」標誌的getBrowserContent功能。我瀏覽了rimn文檔,找不到解釋。

任何幫助將不勝感激。

感謝, ANKIT

回答

1

您在模擬器或真實設備運行此。如果在真實的設備上,你在什麼載體上?我問的原因是,如果你使用的是GSM網絡(例如美國的AT & T或T-Mobile),則很可能需要在設備設置中配置APN或在連接URL上指定APN。通過查看您正在使用的HTTP連接庫的代碼,我沒有看到任何內容將APN設置附加到URL - 因此,如果未在設備設置中配置它,則直接TCP將無法工作。這留下了WAP2和Wi-Fi - 並非所有設備都具有Wi-Fi,並且根據我的經驗,並非所有設備/運營商都支持WAP2。

相關問題