Blackberry, как отобразить сообщение в приложении, если устройство не подключено к интернету? - PullRequest
0 голосов
/ 29 апреля 2010

Я только начал программировать для устройства Blackberry. Я использую API версии 5.

Я создаю очень простое приложение, которое является просто полем браузера. Пока все работает отлично. Я могу отобразить поле моего браузера с необходимым мне содержанием.

Проблема, с которой я столкнулся сейчас, заключается в том, что если на устройстве нет активного подключения к Интернету, появляется сообщение «Ошибка запроса содержимого для».

Мне нужно, чтобы кто-то отобразил мое собственное сообщение, если устройство не имеет активного подключения.

Что-то вроде «Вам нужно активное интернет-соединение, чтобы использовать это приложение» с кнопкой «Выход», которая закрывает приложение.

Я пытался найти это часами, но безуспешно.

Надеюсь, это что-то относительно простое, поэтому я могу получить помощь здесь.

Вот мой код:

package com.mycompany.webview;

import net.rim.device.api.browser.field2.*;
import net.rim.device.api.ui.*;
import net.rim.device.api.ui.container.*;

public class webview extends UiApplication
{
    public static void main(String[] args)
    {
        webview app = new webview();
        app.enterEventDispatcher();
    }
    public webview()
    {
    pushScreen(new webviewScreen());
    }
}
class webviewScreen extends MainScreen
{
    public webviewScreen()
    {
        BrowserField myBrowserField = new BrowserField();
        add(myBrowserField);
        myBrowserField.requestContent("http://www.google.com");
    }
}

Буду очень признателен за помощь, пожалуйста.

Спасибо

1 Ответ

0 голосов
/ 30 апреля 2010

Я получил это работает. Если кому-то еще интересно, как это делается, вот как я это сделал:

package com.mycompany.webview;

import net.rim.device.api.browser.field2.*;
import net.rim.device.api.ui.*;
import net.rim.device.api.ui.component.Dialog;
import net.rim.device.api.ui.container.*;
import net.rim.device.api.system.CoverageInfo;

public class webview extends UiApplication
{
    public static void main(String[] args)
    {
        webview app = new webview();
        app.enterEventDispatcher();
    }
    public webview()
    {
    pushScreen(new webviewScreen());
    }
}
class webviewScreen extends MainScreen
{   
    public webviewScreen()
    {
            if (CoverageInfo.isOutOfCoverage())
            {
                UiApplication.getUiApplication().invokeLater(new Runnable()
                {
                    public void run()
                    {
                        Dialog.alert("You need an active internet connection to use this application");
                        System.exit(0);
                    }
                });
            }
            else
            {
                BrowserField myBrowserField = new BrowserField();
                add(myBrowserField);
                myBrowserField.requestContent("http://www.google.com");
            }
    }
}
...