📡 Nearby Connections API에서 기기 이름이 다르게 나오는 이유

Android에서 Nearby Connections API를 사용하다 보면, 상대 기기의 이름이 Pixel 6이나 SM-G991N 같은 모델명이 아닌, 이상한 문자열이나 내가 설정한 것과 다른 이름으로 나오는 경우가 있습니다.
이번 글에서는 그 이유와 함께, 어떻게 하면 내 의도대로 기기 이름을 설정하고 표시할 수 있는지 알아보겠습니다.
📌 문제 상황
기기 간 연결을 요청할 때 사용하는 아래의 코드에서:
connectionsClient.requestConnection(
Build.MODEL, // 👈 상대방에게 보이는 내 이름
endpointId,
connectionLifecycleCallback
)
여기서 사용된 Build.MODEL은 기기의 모델명입니다. 예를 들어, 삼성 갤럭시 A 시리즈는 SM-A536N 같은 이름으로 나타날 수 있습니다.
따라서 상대방이 ConnectionInfo.endpointName으로 받은 값은 이처럼 친숙하지 않은 기기 모델명이 되는 거죠.
🔍 근본 원인
endpointName은 기기 스스로가 지정하는 값이기 때문입니다. 즉, Nearby 연결을 시작할 때 아래 코드에서 우리가 넘긴 값이 상대방에게 보이게 됩니다:
connectionsClient.startAdvertising(
Build.MODEL, // 👈 이 값이 endpointName이 됨
serviceId,
connectionLifecycleCallback,
advertisingOptions
)
즉, 기기 이름처럼 보이는 endpointName은 사실 내가 직접 지정한 문자열</strong이며, 시스템이 자동으로 정해주는 게 아닙니다.
✅ 해결 방법
1. 사용자 지정 이름 사용하기
사용자가 설정한 닉네임 또는 앱 내에서 정의한 이름을 사용할 수 있습니다:
val userDeviceName = "홍길동의 폰"
connectionsClient.startAdvertising(
userDeviceName, // 사용자 지정 이름
serviceId,
connectionLifecycleCallback,
advertisingOptions
)
이렇게 하면 상대방의 ConnectionInfo.endpointName에는 홍길동의 폰이 표시됩니다.
2. 시스템에 등록된 기기 이름 가져오기
아래 방법으로 설정된 기기 이름을 불러올 수도 있습니다:
val defaultName = Settings.Global.getString(
context.contentResolver,
"device_name"
) ?: Build.MODEL
null일 수 있으므로 Build.MODEL을 기본값으로 지정하는 것이 좋습니다.📬 정리
- endpointName은 자동으로 설정되는 기기 이름이 아님
- 내가
startAdvertising()또는requestConnection()에서 넘긴 문자열이 그대로 사용됨 - 보다 친숙한 이름을 위해 사용자가 설정한 값 또는
Settings.Global에서 기기 이름을 불러오는 방식 권장
🎯 예시 결과 화면
📱 startAdvertising("DY의 Galaxy")를 호출하면 상대방 기기에서는:
connectionInfo.endpointName == "DY의 Galaxy"
이처럼 보다 직관적이고 의미 있는 이름으로 표시됩니다.
작성자: 빌코리아. · 정리 도움: ChatGPT
'모바일 앱(안드로이드)' 카테고리의 다른 글
| Wear OS 워치에서 심박수 측정 → 30초마다 폰으로 전송하기 (2) | 2025.08.02 |
|---|---|
| Kotlin으로 복식 경기 Round-Robin 매칭 구성하기 (3) | 2025.07.29 |
| Google Nearby Connections API 완전 정복 가이드 (feat Claude.ai) (6) | 2025.07.23 |
| Android에서 Kakao 로컬 API로 주소/좌표 변환하기 : 앱에 적용해 보기. (3) | 2025.07.21 |
| Android에서 Hilt + Room + Firebase Realtime Database를 함께 사용하는 구조 설계 (4) | 2025.07.15 |