Firebase Analytics 디버그 보기에 아무것도 표시되지 않음
나는 안드로이드 스튜디오를 사용하여 안드로이드 앱을 파이어베이스와 연결했고, 이를 통해 구글 서비스.json을 내 프로젝트에 생성하고 설정했습니다.
logcat에서 이벤트 로깅을 디버그할 때 다음 메시지가 표시됩니다.
V/FA-SVC: Successful upload. Got network response. code, size: 204, 0
그러나 Firebase 콘솔 디버그 보기에 아무것도 표시되지 않습니다.
장치 설정 테스트
구성된 Firebase Analytics 앱에 대해 연결된 Android 테스트 장치에서 DebugView 데이터를 전송할 수 있도록 하려면 다음 단계를 수행합니다.
단순히 단일 빌드 변형으로 작업하는 경우 다음 명령으로 충분합니다.
adb shell setprop debug.firebase.analytics.app [your_app_package_name]그러나 응용 프로그램 ID가 다른 여러 빌드 변형을 사용하는 경우에는 다음 명령을 실행해야 합니다.
adb shell setprop debug.firebase.analytics.app [your_application_id]여기서 응용프로그램 ID는 해당 그라들 파일에 있는 빌드 변형의 응용프로그램 ID입니다.예를 들어 두 개의 빌드 변형 x와 y에 대해 x.gradle과 y.gradle이 있고 일반 build.gradle 파일도 있다고 가정해 보겠습니다.애플리케이션 ID com.abc.x로 빌드 변형 x를 디버깅하려면 다음 명령을 사용합니다.
adb shell setprop debug.firebase.analytics.app com.abc.x마찬가지로 응용 프로그램 ID com.abc.y로 빌드 변형을 디버그하려면 다음 명령을 사용합니다.
adb shell setprop debug.firebase.analytics.app com.abc.y
이 동작은 다음 명령을 실행하여 사용하지 않도록 명시적으로 설정할 때까지 계속됩니다.
adb shell setprop debug.firebase.analytics.app .none.
- 디버그 모드에서 앱 실행
- 개발자 옵션으로 이동 -> 디버그 앱 선택 -> 선택
Firebase Debug View에 장치가 나열됩니다.
디버그 모드 사용 단계를 수행한 후 디버그 장치 또는 에뮬레이터와 PC의 날짜와 시간이 올바른지 확인합니다.
날짜 및 시간을 수정한 후에도 DebugView에 이벤트가 표시되지 않으면 앱 저장소를 지웁니다.그런 다음 앱을 다시 시작하고 다시 시도합니다.
디버그 로깅을 활성화하는 것은 디버그 모드를 활성화하는 것과 다릅니다.Frank van Puffelen이 그의 의견에서 제안했듯이 디버그 모드를 활성화하려면 "디버그"를 설정해야 합니다.화력 기지analytics.app" 속성을 앱 패키지 이름에 입력합니다.
다음 명령을 사용하여 adb를 사용하여 이 작업을 수행할 수 있습니다.
adb shell setprop debug.firebase.analytics.app "your.app.package.name"
안에서 찾을 수 있습니다.AndroidManifest.xml▁the로서package의 manifest요소(xml 문서의 첫 번째 요소).
내 경우에는, 심지어 운영하는 것도.adb shell setprop debug.firebase.analytics.app "your.app.package.name"도움이 되지 않았습니다.절망적으로 무언가를 찾으려던 중 Android Studio용 Firebase 플러그인에 관련된 내용이 있는지 확인하기로 결정하고 자세한 로깅을 위해 다음 명령이 필요하다는 것을 분석 섹션 아래에서 알게 되었습니다.
adb shell setprop log.tag.FA VERBOSE
adb shell setprop log.tag.FA-SVC VERBOSE
adb logcat -v time -s FA FA-SVC
적어도 앱이 서버에 추적 정보를 보내고 있는지 확인하고 그 명령을 실행하는 것이 도움이 될 수 있다고 생각했습니다.놀랍게도 DebugView에도 도움이 되었고 제 장치를 볼 수 있었습니다.
먼저 장치/에뮬레이터에서 앱을 삭제합니다!
터미널 실행에서:
adb shell setprop debug.firebase.analytics.app [your_app_package_name]
그런 다음 장치/에뮬레이터에서 앱을 다시 빌드/디버깅합니다.
마지막으로 디버깅 데이터가 Firebase > Analytics > DebugView에 표시됩니다.
사람들은 "콘텐츠 및 설정 지우기"와 "앱 저장소 지우기" 등의 말을 했지만, 저는 이해하지 못했고 이 작업을 수행하기 위해 몇 시간을 보냈습니다.이 문제를 해결하려면 단말기에서 앱을 삭제하기만 하면 됩니다.모든 앱 데이터를 지우지 않으면 디버그가 작동하지 않습니다.
_app_package_name을 찾고 있는 경우 패키지 아래의 AndroidManifest.xml 파일에 있습니다.
또한 장치/에뮬레이터에 최신 Google Play 서비스가 설치되어 있는지 확인합니다. 그렇지 않으면 아무 것도 작동하지 않습니다.
에뮬레이터의 설정으로 이동하면 업데이트 버튼이 있습니다.안타깝게도 Google 계정을 통해 로그인해야 합니다.
다른 사람들이 언급했듯이, 여기서 공통적으로 문제가 되는 것은 잘못된 패키지 이름을 사용하는 것이라고 생각합니다.최근에 공동 작업을 시작한 앱에서 이 문제가 발생하여 AndroidManifest.xml의 패키지 특성을 사용할 수 없습니다.빌드에서 패키지 이름에 무언가를 추가하는 것으로 의심했지만 정의된 위치를 찾을 수 없습니다.실제 패키지 이름을 찾는 가장 간단한 방법은 Android Studio의 상단 표시줄에서 "Attach debugger to Android process"를 시작하는 것입니다. 그러면 AVD에 프로세스 목록과 관련 패키지 이름이 표시됩니다.아니나 다를까, 이 목록에서 가져온 정확하게 추가된 패키지 이름을 사용하면 Firebase Analytics Debug View가 활성화됩니다.
디버깅 장치에서 광고 차단 메커니즘을 비활성화합니다.이것이 여기서 문제였습니다.애드어웨이를 활성화했습니다.
질문이 오래된 것은 알지만 누군가에게 도움이 될 수도 있습니다.
저에게 문제는 문서에서 제안하는 대로 adb 명령에 "package name"을 사용하는 것이었습니다.그러나 반드시 사용해야 하는 것은 빌드의 applicationId는 appId를 appId로 수 .build.gradle파일을 작성하거나 특정 빌드 변형에 대한 포스트픽스를 추가합니다.
왜 그들이 항상 "패키지 이름"이라는 단어를 사용하는지 모르겠습니다. 왜냐하면 그것은 단지 우리가 코드를 구성하는 방식을 의미하기 때문입니다.
여기서 설명을 읽은 후 터미널에서 다음 명령을 실행하는 것이 유용하다는 것을 알게 되었습니다.
adb kill-server
adb start-server
adb shell setprop debug.firebase.analytics.app package_name
그런 다음 Firebase 디버그 장치 목록에서 에뮬레이터를 선택하고 Android Studio Bumblebee에서 실행되는 앱에서 Firebase 이벤트를 볼 수 있었습니다. | 2021.1.1 베타 1
저의 경우, 저는 두 가지를 했습니다.
첫째로
Android studio Terminal에서 다음 명령을 추가합니다.
adb shell setprop debug.firebase.analytics.app [your_application_id]
두 번째:
저는 제 물리적 장치의 개발자 옵션으로 가서 "디버깅 앱 선택"을 클릭한 다음 제 앱을 선택했습니다.
디버그 보기 장치에 내 장치가 나타납니다.
인터넷에서 모든 잠재적인 해결책을 시도했지만 아무도 작동하지 않았습니다.DebugView를 사용하여 장치를 찾을 수 있도록 설정한 단계는 다음과 같습니다.
작업 중인 장치에서 앱 닫기
Firebase 콘솔로 이동하여 계정에서 로그아웃합니다.
다시 로그인하고 콘솔로 이동하여 작업 중인 프로젝트를 선택합니다.
이것이 차이를 만들었는지는 모르겠지만 "프로젝트 바로 가기" 목록 아래에 있는 DebugView 항목을 클릭하지 마십시오.대신 "Analytics" 드롭다운을 클릭하고 거기서 DebugView를 선택합니다.
이 프로세스는 DebugView 페이지에서 사용되는 데이터 스트림을 업데이트할 수 있습니다. 이러한 단계를 수행한 후 처음에 놓쳤던 이벤트가 이제 표시되는 것을 발견했습니다. 마치 이벤트가 제대로 전송/수신되었지만 DebugView가 올바른 데이터 스트림을 표시하지 않는 것처럼 말입니다.
보너스 팁:
오늘도 이 문제가 발생하여 Firebase에 로그아웃/로그인한 후에도 DebugView에서 내 장치를 찾지 못했습니다.내 장치에서 앱을 백그라운드로 이동합니다. 즉, 아래에서 위로 스와이프하여 홈 화면으로 이동합니다.
앱을 전경으로 다시 열면 DebugView에 이벤트 표시가 시작됩니다.앱을 백그라운드로 이동하는 동작이 Firebase로 전송되는 장치의 저장된 이벤트를 트리거하여 대기열을 플러시하기 때문에 이것이 작동한다고 생각합니다.
이벤트 및 장치가 Firebase 디버그 보기에 표시되지 않는 문제가 발생했습니다.
내 네트워크의 파이홀이 모든 이벤트를 먹어치우고 있다는 것을 알게 되었습니다.따라서 네트워크에 광고 차단기가 있는 경우 이를 비활성화하고 다시 시도하십시오.
저는 모든 것을 올바르게 구성했고 에뮬레이터와 장치를 실행했습니다.안 에 저는 '에 장치 것을 . 2.DebugView장치를 선택하면 항상 이벤트가 표시됩니다.
당신이 iOS 시뮬레이터에 있다면요.사용해 보십시오.
1단계: 시뮬레이터의 "모든 콘텐츠 및 설정 지우기" 및 시뮬레이터가 다시 시작되도록 합니다.
2단계: 앱 시작
3단계 : Firebase 디버그 탭을 닫고 다시 시작합니다.
디버그 로그가 전송되지 않았고 이 작업을 수행한 후 로그를 가져오는 중입니다.
참고: 위와 같은 일이 지난 며칠 동안 최소 7/8회 발생했습니다.
당신이 답변을 받았는지는 모르겠지만, 제가 곤란하게 만든 한 가지는 이 명령어를 입력하고 패키지 이름을 사용하라는 모든 지시사항이었습니다. 그러나 만약 당신이 맛을 사용하고 패키지 접미사를 추가하고 있다면 셸 명령어에도 그것이 있는지 확인해야 합니다.
dev /uat /prod variant/flavor 콤보가 있는 경우 접미사가 있는 경우 접미사를 추가해야 합니다.내 경우 '.dev' 접미사가 있으므로 명령어는 다음과 같습니다.
adb shell setprop debug.firebase.analytics.app com.myapp.something.dev
우선 인터넷에 연결되어 있지 않으면 Firebase에서 디버깅 데이터를 수신할 수 없기 때문에 디버깅 장치가 인터넷에 연결되어 있는지 확인합니다.
두 번째로, 당신의 디버깅 장치는 내 것처럼 Firebase Analytics Debug View에 여러 번 표시될 수 있습니다.
이상하게도 현재 실행 중인 장치에 해당하는 올바른 항목을 선택해야 활성 로그를 볼 수 있습니다.Google은 세션을 현재의 세션으로 대체하는 대신 이전 디버깅 세션의 장치 목록을 유지하는 것처럼 보이는데, 이는 따라야 할 올바른 접근 방식일 것입니다.
저도 비슷한 상황에 직면했습니다.Windows 장치에서 다음 명령을 실행했습니다.
adb shell setprop debug.firebase.analytics.app "app_package_name"
에서 확인할 수 있습니다.AndroidManifest.xml파일.
됐어요.
모든 것이 올바르게 설정되었지만 여전히 디버그 보기가 작동하지 않는 경우
명령을 통해 디버그 보기를 활성화하고 제대로 작동하는 다른 장치 및 시스템과 교차 확인했음에도 불구하고 이 문제에 직면했습니다.하지만 왠지 제 에뮬레이터에서 작동하지 않았습니다.이 문제는 실제 장치에서도 발생할 수 있습니다.
시스템의 특정 장치 또는 에뮬레이터에서만 작동하지 않는 솔루션:
디버그 보기에서 로그 및 이벤트를 확인합니다.에뮬레이터 또는 장치 Date & Time with Timezone이 분석 콘솔에서도 동일하게 현지 시간으로 설정되어 있는지 확인해야 합니다.동일한 날짜와 시간을 만든 후 디버그 뷰에서 로그와 이벤트를 확인할 수 있었습니다.
이것이 모든 것을 올바르게 지켰지만 이 사건을 놓친 사람들에게 도움이 되기를 바랍니다.
Firebase 디버그 모드 사용
이 명령을 사용하여 장치에서 Firebase 디버그 모드를 활성화합니다.
adb shell setprop debug.firebase.analytics.app yourappid
잘 모를 경우 다음 명령을 사용하여 앱 ID(패키지 이름)를 확인합니다.
aapt dump badging path-to-your-apk
예: apt 덤프 배지 c:\myapp.pk
Google_app_id 정확성 확인
그리고 특히 앱에 변형이 있을 때는 앱이 예상되는 구글 앱을 사용하고 있는지 확인하십시오.
사용할 수 있습니다.apktoolapk의 포장을 풀고, 그것을 찾기 위해.google_app_id에/res/values/strings이 값은 화재 기지 프로젝트 설정의 appid와 같아야 합니다.
만약에google_app_id당신의 apk가 예상되지 않습니다. 당신은 그것이 올바른 것을 사용하고 있는지 확인해야 할 수도 있습니다.google-services.json.
문제가 없으면 프로젝트를 정리하고 다시 빌드합니다.
저도 같은 문제를 겪고 있습니다.DebugView는 에뮬레이터와 잘 작동하지만 분산 앱이 선택되지 않습니다.도식을 확인해보니 깃발이 포함되어 있습니다.
<CommandLineArgument
argument = "-FIRDebugEnabled"
isEnabled = "YES">
분산 앱에서 작동하는 방법이 있습니까?저는 만약을 위해 앱센터를 이용하고 있습니다.
아이디어를 주셔서 GETEM5에게 감사드립니다.저는 가능한 모든 것을 시도했지만 결과가 없었습니다.응용 프로그램을 백그라운드로 이동한 후 디버거에서 연결이 끊기고 응용 프로그램 아이콘에서 응용 프로그램을 언로드한 후 다시 실행하면 장치가 실시간으로 DebugView에 나타납니다.하지만 내 생각에 보내기 위해 배경으로 이동하는 것을 도울 수 있습니다.
나의 경우, 나는 이전의 구글-services.json 파일을 새 파일로 교체했습니다.이 경우, "build" 폴더를 제거하고, 프로젝트를 다시 빌드하고, 장치에서 디버그를 실행해야 했습니다. 예를 들어, adb 셸 setprop debug와 같은 다른 단계도 마찬가지였습니다.화력 기지analytics.app "your.app.package.name "도 마찬가지입니다.효과가 있었습니다.
프로젝트에 필요한 NDK 버전을 설치합니다.버전 21.0.6113669가 작동했습니다.
언급URL : https://stackoverflow.com/questions/42769236/firebase-analytics-debug-view-does-not-show-anything
'source' 카테고리의 다른 글
| __init_.py를 사용하여 전역 변수를 정의할 수 있습니까? (0) | 2023.06.06 |
|---|---|
| com.google 클래스를 찾을 수 없습니다.화력 기지파이어베이스InitProvider"? (0) | 2023.06.06 |
| Ruby 및/또는 Rails에서 사용자 정의 오류 유형을 정의하는 위치 (0) | 2023.06.06 |
| 각 그룹 내 행 수 카운트 (0) | 2023.06.06 |
| 이전에 배포한 Firebase 콘솔에서 코드 가져오기 (0) | 2023.06.06 |








