워키토키 기능을 Android 앱에 추가하는 방법



운전 중 문자 메시지는 매우 위험합니다. 눈은 전화기 화면을 봐야 하지만 동시에 도로도 봐야 합니다. 시야에 초점이 맞지 않아 원치 않는 사고가 발생할 수 있습니다. 자신과 다른 사람에게 위험한 일이 일어날 수 있습니다.

하지만 친구나 가족과 소통해야 한다면 어떻게 해야 할까요? 아니면 동료들에게? 이를 위해 음성 통신을 사용할 수 있습니다. 워키토키는 그 시나리오에서 사용할 수 있는 음성 통신 중 하나입니다. VoicePing 앱( https://voicepingapp.com )은 이를 위한 훌륭한 옵션입니다.

하지만 Android 개발자이고 워키토키 기능을 Android 앱에 구현하고 싶다면 어떻게 해야 할까요? VoicePing Android SDK가 답입니다.

솔루션: VoicePing Android SDK



VoicePing Android SDK는 워키토키 또는 PTT 기능을 앱에 제공하는 Android 라이브러리입니다. 무료이며 오픈 소스입니다. 이 저장소에서 해당 코드를 살펴볼 수 있습니다: https://github.com/SmartWalkieOrg/VoicePing-Walkie-Talkie-AndroidSDK . 관련 문서는 웹사이트에서 볼 수 있습니다: https://opensource.voiceping.info/ .

VoicePing Android SDK를 사용하면 한 사람 또는 여러 사람에게 즉시 음성 메시지를 보낼 수 있습니다. Android 앱에 쉽게 통합할 수 있습니다. 원하는 대상에게 음성을 보내는 데 매우 효율적인 Opus Codec을 사용합니다. 데이터 소모가 적어 이동통신에 적합하다.

사용 방법?



이제 실제 코드로 들어가 봅시다. 좋아하는 Android Studio를 열고 아래 지침을 따르세요.

설치



Android 프로젝트에 이 SDK를 설치하려면 다음 단계를 수행해야 합니다.

  • 프로젝트 수준 Gradle 파일에 jitpack을 추가합니다.

    allprojects {
        repositories {
            ...
            maven { url "https://jitpack.io" }
        }
    }
    


  • 모듈 수준 gradle 파일에 모듈을 추가합니다.

    dependencies {
        implementation 'com.github.SmartWalkieOrg:VoicePing-Walkie-Talkie-AndroidSDK:1.0'
    }
    

  • Gradle 동기화 및 사용

  • 초기화



    SDK가 Android 프로젝트에 성공적으로 설치되면 이제 워키토키 기능을 앱에 추가할 수 있습니다. 먼저 애플리케이션 코드에서 라이브러리를 초기화해야 합니다.

    class VoicePingClientApp : Application() {
        override fun onCreate() {
            super.onCreate()
            VoicePing.init(this, "voiceping_sdk_server_url")
        }
    }
    

    "voiceping_sdk_server_url"는 실제 VoicePing 서버 URL로 변경될 수 있습니다. 공용 서버를 사용하려면 “wss://router-lite.voiceping.info”로 변경하면 됩니다.

    로그인



    음성을 보내거나 받기 전에 다음 코드를 사용하여 SDK에 로그인해야 합니다.

    VoicePing.connect("your_user_id", "your_company", object : ConnectCallback {
        override fun onConnected() {
            // Do something
        }
    
        override fun onFailed(exception: VoicePingException) {
            // Do something
        }
    })
    

    “your_company”는 회사명 또는 회사 홈페이지로 변경 가능합니다. 서로 이야기하고 싶다면 친구와 같은 회사를 삽입했는지 확인하세요. 현재 VoicePing SDK는 다른 회사의 다른 사용자와의 대화를 지원하지 않습니다.
    “your_user_id”는 원하는 사용자 ID로 변경할 수 있습니다. 고유하고 다른 사용자와 달라야 합니다. 다른 사용자와 동일한 사용자 ID를 입력하면 이전 사용자의 연결이 끊어지거나 로그아웃됩니다.

    PTT 버튼 추가



    PTT 버튼을 추가하려면 레이아웃에 다음 코드를 추가할 수 있습니다.

    <com.smartwalkie.voicepingsdk.VoicePingButton
                android:id="@+id/voice_ping_button"
                android:layout_width="match_parent"
                android:layout_height="100dp"
                android:layout_marginTop="16dp" />
    


    그런 다음 다음 코드를 사용하여 대상을 설정할 수 있습니다.

    binding.voicePingButton.receiverId = receiver_id
    binding.voicePingButton.channelType = ChannelType.PRIVATE
    


    사용자 정의 PTT 버튼 사용



    VoicePing에 내장된 PTT 버튼을 사용하지 않으려면 사용자 정의 버튼을 사용할 수 있습니다. 다음과 같이 할 수 있습니다.

    binding.voicePingButton.setOnTouchListener { _, motionEvent ->
                val eventAction = motionEvent?.action ?: return@setOnTouchListener false
                when (eventAction) {
                    MotionEvent.ACTION_DOWN -> {
                        VoicePing.startTalking("receiver_id", ChannelType.PRIVATE, null)
                        return@setOnTouchListener true
                    }
                    MotionEvent.ACTION_UP -> {
                        VoicePing.stopTalking()
                        return@setOnTouchListener true
                    }
                }
                return@setOnTouchListener false
            }
    
    


    요약



    VoicePing Android SDK를 사용하면 워키토키 기능을 Android 앱에 쉽게 추가할 수 있습니다. 구현하기 위해 몇 달 동안 작업할 필요가 없으며 아마도 1시간 미만이면 충분할 것입니다. 오픈 소스이므로 기본 기술을 수정하려는 경우 직접 할 수 있습니다. 원하는 것을 얻기 위해 수천 달러를 지불할 필요가 없습니다.

    이 게시물은 원래 https://opensource.voiceping.info/blog/how-to-add-walkie-talkie/에 게시되었습니다.

    좋은 웹페이지 즐겨찾기