アプリの幅が無限に広がる、Androidの通信Android技術者認定試験「ACE」ドリル(8)(1/2 ページ)

今回の演習テーマは、Androidの「通信」について。通信機能により外部連携ができるようになれば、アプリケーションの幅は無限に広がるはずだ。

» 2012年01月05日 10時57分 公開
[奥 崇(elan),@IT MONOist]

 連載第8回目を迎える「Android技術者認定試験『ACE』ドリル」。今回は、Androidの「通信」を取り上げます。

 Androidアプリケーションと、これまでの携帯電話(フィーチャーフォン)アプリケーションとの大きな違いの1つとして、“自由に外部と通信ができる”点が挙げられます。これにより、Androidでは「外の世界」と連携したアプリケーションを作成することが可能になります。具体的には他のデバイスとの連携や、サーバサイドとの連携による高度な処理、インタラクティブなアプリケーションなどを作成できます。

 今回は、このような「スマホらしい」アプリケーションに必須となる通信にフォーカスした演習問題を解いていきましょう。それでは、早速演習に移ります。

今回の演習問題

演習1:ネットワークプロトコル

演習1 以下のコードは、java.netパッケージを用いたHTTP通信のコード例です。コード内の(1)から(4)の中に1つだけ誤りがあります。それはどれか? 選択してください。

import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
 
    HttpURLConnection http = null;
    InputStream in = null;
 
    try {
        URL url = new URL(“http://www.oesf.jp”); ……★(1)★
        http = (HttpURLConnection) url.openConnection(); ……★(2)★
        http.setMethod("GET"); ……★(3)★
        http.connect(); ……★(4)★
        in = http.getInputStream();
 
        <……以下、省略……>
        ・
        ・
        ・

(1)URL url = new URL(“http://www.oesf.jp”);

(2)http = (HttpURLConnection) url.openConnection();

(3)http.setMethod("GET");

(4)http.connect();



演習2:Bluetooth

演習2 Bluetoothを用いるには、BluetoothAdapterクラスのインスタンスが必要になりますが、それを取得するコードとして、正しいものはどれか? 選択してください。なお、このコードはActivityに記載されているものとします。

(1)BluetoothAdapter.getDefaultAdapter();

(2)(BluetoothAdapter)getSystemService(BLUETOOTH_SERVICE);

(3)(BluetoothAdapter)getSystemService(BLUETOOTH_ADAPTER);

(4)BluetoothAdapter.getAdapter();



演習3:Wi-Fi

演習3 Wi-Fi機能を利用する方法の説明として、誤っているものはどれか? 選択してください。

(1)Context#getSystemServiceを用いて、WiFiManagerのインスタンスを取得する

(2)WiFiManager#startScanで、アクセスポイントをスキャンできる

(3)WiFiManager#getWifiStateで、現在のWi-Fiの状態を取得できる

(4)WiFiManager#setEnableで、Wi-FiをONにできる



       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.