[android] 안드로이드 Wi-Fi 다이렉트 연결

안드로이드 애플리케이션 개발을 하다 보면 Wi-Fi 다이렉트 연결을 구현해야 하는 경우가 있습니다. Wi-Fi 다이렉트는 Wi-Fi 기술을 사용하여 디바이스들을 직접 연결할 수 있는 기능입니다. 이 기능을 사용하면 인터넷에 연결되어 있지 않은 상황에서도 디바이스 간에 데이터를 교환할 수 있습니다.

Wi-Fi 다이렉트란?

Wi-Fi 다이렉트는 Wi-Fi 연결을 통해 인터넷에 연결되지 않은 상황에서도 디바이스 간에 직접 통신할 수 있는 기술입니다. 이를 통해 파일 전송, 멀티미디어 공유, 인쇄 등의 기능을 구현할 수 있습니다.

안드로이드에서 Wi-Fi 다이렉트 구현하기

안드로이드에서 Wi-Fi 다이렉트를 구현하려면 WifiP2pManagerWifiP2pManager.Channel을 사용해야 합니다. 먼저, Wi-Fi 다이렉트를 사용하기 위한 권한인 ACCESS_WIFI_STATECHANGE_WIFI_STATEAndroidManifest.xml에 추가합니다.

다음은 Wi-Fi 다이렉트 연결을 설정하는 간단한 예제 코드입니다.

WifiP2pManager manager = (WifiP2pManager) getSystemService(Context.WIFI_P2P_SERVICE);
WifiP2pManager.Channel channel = manager.initialize(this, getMainLooper(), null);

manager.discoverPeers(channel, new WifiP2pManager.ActionListener() {
    @Override
    public void onSuccess() {
        // Wi-Fi 다이렉트 피어 검색 성공
    }

    @Override
    public void onFailure(int reason) {
        // Wi-Fi 다이렉트 피어 검색 실패
    }
});

위 코드는 Wi-Fi 다이렉트 피어 검색을 수행하는 예제입니다.

결론

안드로이드에서 Wi-Fi 다이렉트를 활용하면 인터넷에 연결되어 있지 않은 상황에서도 디바이스 간에 쉽게 데이터를 교환할 수 있습니다. Wi-Fi 다이렉트를 활용하여 기기 간 편리한 연결 및 데이터 공유 기능을 구현할 수 있으니, 필요한 경우 활용해보시기 바랍니다.