0

Blackberry デバイスから HTTP リクエストを送信するとどうなるか、誰か説明してもらえますか?

非常に多くのことを聞いて、MDS 接続サービスなどの用語に混乱しました。http 要求を受信するには、BES でいくつかの設定を変更する必要があるとさえ聞きました。本当に設定を変更する必要がありますか?

ブラックベリーのアプリケーション開発は初めてなので、わかりやすく説明してください。

4

2 に答える 2

1

BES: 組織のすべての BB デバイスで構成されるプライベート ネットワークと考えてください。企業は通常、独自のネットワーク内に配置され、制御下にある独自の BES サーバーを実行します。BES 内の各デバイスは、このネットワーク内のデバイス、BES サーバー、および BES サーバー経由でアクセスできるネットワーク リソース (通常は他の企業アプリケーション サーバー) にのみ接続できます。通信は暗号化されます。また、エンタープライズ メール システムとの統合も提供します。さらに、BES 内のすべての BB は、各デバイスのポリシーを制御する BES 管理者によって管理されます。たとえば、特定のデバイスの GPS やインターネットを無効にすることができます。また、デバイスからアプリケーションをリモートでデプロイまたは削除することもできます。

MDS: BES のコンポーネントです。

BIS: これは特定の顧客を対象としています。BB が BIS にある場合、データは圧縮されて RIM サーバーに送信され、そこから目的地に中継されます。プロキシです。また、プッシュ メールやメッセージを可能にするものでもあります。BB を BIS に登録するには、携帯通信会社を通じて契約する必要があります。

詳細:
http://docs.blackberry.com/en/admin/deliverables/7335/BES_overview_658676_11.jsp

于 2012-11-13T09:34:18.370 に答える
0

BlackBerryデバイスからHttpリクエストを送信すると、BlackBerryクライアントアプリはHTTPを使用してWebサービス/サーブレットに接続し、クライアント–>サーブレット–>クライアントからbyte[]を転送します。クライアントアプリは、接続を試みる前に、まずネットワークカバレッジをチェックします。

BlackBerryデバイスからHTTPサーバー(Webサービス、サーブレットなど)へのHTTPネットワーク接続を作成するにはさまざまな方法があります。これには、Wifi、APN / Direct TCP、BlackBerry Internet Service(BIS)、BlackBerry Enterprise Server(BES / MDS)を介したHttpリクエストの送信が含まれ、BlackBerryをBESに接続する必要があります。

BlackBerry Mobile Data System(MDS)は、アプリケーション開発用の柔軟なフレームワークであり、BlackBerry Enterprise Server(BES)のコンポーネントです。BlackBerry MDSは、セキュリティ、ワイヤレス接続、および管理機能のオプションを提供します。BlackBerryMDSサービスはBlackBerryEnterpriseServerソフトウェアに含まれており、すべてのブラウザーまたは接続要求を処理し、それに応じて要求をルーティングします。BISやその他の接続とは異なり、BlackBerryスマートフォンとBlackBerry Enterprise Serverの間を流れるデータは暗号化され、BlackBerry MDSを介して行われる接続により、BlackBerryスマートフォンサービスをサポートするワイヤレスサービスプロバイダー間でローミングが提供されます。この接続では受話器をBESに登録する必要があるため、すべてのユーザーが登録されているとは限らないため、アプリの実行にいくつかの制限があります。したがって、

次のメソッドを呼び出して、使用可能な接続でhttpリクエストを作成できます。最初にWifi、2番目にBIS、3番​​目にTCP、最後にMDSが優先されます。

public String checkInternetConnection()
{
    String connectionString = null;
    if ((WLANInfo.getWLANState() == WLANInfo.WLAN_STATE_CONNECTED)&& RadioInfo.areWAFsSupported(RadioInfo.WAF_WLAN))
    {
        //WiFi is available
        connectionString = ";interface=wifi";
    }
    // Is the carrier network the only way to connect?
    else if((CoverageInfo.getCoverageStatus() & CoverageInfo.COVERAGE_DIRECT) == CoverageInfo.COVERAGE_DIRECT)
    {
        //Carrier coverage
        String carrierUid = getCarrierBIBSUid();
        if(carrierUid == null)
        {
            // Has carrier coverage, but not BIBS. So use the carrier's TCP network
            connectionString = ";deviceside=true";
        }
        else
        {
            // otherwise, use the Uid to construct a valid carrier BIBS request
            connectionString = ";deviceside=false;connectionUID="+carrierUid + ";ConnectionType=mds-public";
        }
    }
    // Check for an MDS connection instead (BlackBerry Enterprise Server)
    else if((CoverageInfo.getCoverageStatus() & CoverageInfo.COVERAGE_MDS) == CoverageInfo.COVERAGE_MDS)
    {
        connectionString = ";deviceside=false";
    }
    // If there is no connection available abort to avoid bugging the user unnecssarily.
    else if(CoverageInfo.getCoverageStatus() == CoverageInfo.COVERAGE_NONE)
    {
        Dialog.alert("There is no available connection.");
    }
    return connectionString;
}

/**
 * Looks through the phone's service book for a carrier provided BIBS network
 * @return The uid used to connect to that network.
 */
public String getCarrierBIBSUid()
{
    ServiceRecord[] records = ServiceBook.getSB().getRecords();
    int currentRecord;
    for(currentRecord = 0; currentRecord < records.length; currentRecord++)
    {
        if(records[currentRecord].getCid().toLowerCase().equals("ippp"))
        {
            if(records[currentRecord].getName().toLowerCase().indexOf("bibs") >= 0)
            {
                return records[currentRecord].getUid();
            }
        }
    }
    return null;
}
于 2012-11-13T07:17:30.140 に答える