programing

FirebaseRemoteConfig 오류 "파라미터 키에 대해 'String' 유형의 값이 없습니다."

lastmoon 2023. 6. 11. 11:13
반응형

FirebaseRemoteConfig 오류 "파라미터 키에 대해 'String' 유형의 값이 없습니다."

Firebase Core 및 일부 다른 기능을 사용하고 있지만 원격 구성은 사용하지 않습니다.다음 출력은 Logcat에 초당 여러 번 표시됩니다.

원격 구성 기능을 비활성화하거나 존재하지 않는 값을 설정할 수 있는 위치는 어디입니까?

종속성:

// Project
classpath 'com.android.tools.build:gradle:3.2.1'
classpath 'com.google.gms:google-services:4.2.0'
classpath 'com.google.firebase:firebase-plugins:1.2.0'

classpath 'io.fabric.tools:gradle:1.26.1'

// Module
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'com.android.support:support-v4:28.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.1.3'
implementation 'com.android.support:support-vector-drawable:28.0.0'
implementation 'com.android.support:preference-v7:28.0.0'
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'com.android.support:recyclerview-v7:28.0.0'
implementation 'com.android.support:design:28.0.0'
implementation 'org.jsoup:jsoup:1.11.3'
implementation 'com.squareup.okhttp3:okhttp:3.11.0'
implementation 'com.android.support:cardview-v7:28.0.0'

implementation 'com.google.firebase:firebase-core:16.0.8'
implementation 'com.google.firebase:firebase-messaging:17.5.0'
implementation 'com.google.firebase:firebase-perf:16.2.4'
implementation 'com.google.android.gms:play-services-location:16.0.0'
implementation 'com.jsibbold:zoomage:1.2.0'
implementation 'com.android.support:exifinterface:28.0.0'
implementation 'com.squareup.picasso:picasso:2.71828'

implementation 'com.crashlytics.sdk.android:crashlytics:2.9.9'
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'sessions_max_length_minutes'.
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'sessions_max_length_minutes'.
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'sessions_feature_enabled'.
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'sessions_max_length_minutes'.
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'fpr_vc_trace_sampling_rate'.
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'sessions_feature_enabled'.
W/FirebaseRemoteConfig: No value of type 'String' exists for parameter key 'fpr_vc_trace_sampling_rate'.

콘솔을 스팸으로 처리하는 것이 귀찮아서 문제를 일으키는 것이 아니라고 생각합니다.

버그 보고서에 대한 Firebase 답변:

원격 구성에 대한 경고를 받고 있는 것 같습니다.우리는 간신히 복제에 성공했고, 엔지니어들은 이것이 의도한 대로 작동한다는 것을 확인했습니다.이는 성능 모니터링 SDK가 앱에 추가되었기 때문에 발생합니다.이는 성능 모니터링이 내부적으로 Firebase Remote Config를 사용하기 때문입니다.하지만 우리 엔지니어들은 앞으로 이러한 경고를 줄이려고 노력할 것이라고 확인했습니다.현재로서는 경고일 뿐 앱 성능에 영향을 미치지 않기 때문에 이를 무시할 수 있습니다.

의 마지막 버전에서 제공됩니다.firebase-perf(예: 16.2.5), 내부 변수가 있기 때문입니다.firebase-remote-config의존.동일한 문제가 있지만 이 로그 스팸을 제대로 해결하는 방법을 모르겠습니다(로그캣의 "다음과 같이 접기" 옵션 제외).파이어베이스 팀이 빨리 고쳐주길 바랍니다.

해결책

Firebase 성능 릴리스 버전19.0.8로그 스팸 문제를 해결하기 위해 지난 주.(Release Note https://firebase.google.com/support/release-notes/android#2020-07-17) 을 참조하십시오. 종속성을 업데이트할 수 있습니다.com.google.firebase:firebase-perf동일하거나 더 높은 버전으로 수정해야 합니다.


설명

이 문제의 원인에 대해 자세히 설명하려면 다음과 같이 하십시오.Firebase Performance는 Firebase Remote Config를 사용하여 Firebase로 전송되는 이벤트 수를 줄이므로 샘플링 구성 값이 필요할 때마다 Firebase Remote Config API getValue(String)를 호출합니다.

그러나 Firebase 원격 구성 가져오기는 12시간마다 수행됩니다.개발 시점까지 구성 값이 존재하지 않을 수 있습니다.이 경우 Firebase Performance SDK는 기본값을 사용합니다.

구성 값이 없는 경우 Firebase Remote Config는 경고를 위해 이 로그를 생성합니다. 이 로그는 Firebase Performance 사용자의 로그 스팸의 소스입니다(소스 코드 참조).

이 로그가 트리거되지 않도록 Firebase Performance의 호출 빈도를 Firebase Remote Config로 낮췄습니다.

Firebase 콘솔을 사용하는 경우 원격 구성 탭에서 두 값을 모두 설정하면 경고가 중지됩니다.

사용한 적이 있습니다: (문자열 값으로)

  • 매개 변수 키: sessions_max_length_minutes | 값: "15"
  • 매개 변수 키: sessions_feature_enabled | 값: "true"

부작용이 있는지 확실하지 않지만, (바라건대) 이것은 내부 테스트이며 아무것도 바꾸지 않습니다.

Firebase 성능 모니터링은 내부적으로 Firebase Remote Config를 사용합니다.출력을 변경할 수는 없지만, 위의 코멘트에서 내가 준 링크를 사용하여 팀에 피드백을 보낼있습니다.

Firebase Android 라이브러리 Firebase 코어는 더 이상 필요하지 않습니다.이 SDK에는 Google Analytics용 Firebase SDK가 포함되어 있습니다.

build.gradle에서 firebase-core 제거

이는 다음과 관련되거나 결과일 수 있습니다.

W/zzd: Application name is not set. Call Builder#setApplicationName

안 함perf-plugin&firebase-perf성가신 로그 항목을 제거합니다.

// classpath "com.google.firebase:perf-plugin:1.2.1"
// apply plugin: "com.google.firebase.firebase-perf"
// implementation "com.google.firebase:firebase-perf:17.0.0"

firebase-config그 자체로도 잘 작동합니다.

이것이 제 의견이었습니다.

당신이 특정한 있경항는우이가 .keyRemoteConfig 콘솔에 설정하고 추가하지 않았습니다.defaultxml 키("xml "(으)로 됨)setDefaultsAsync()).

리고만약경, 드문우에그어떤,,에그경▁if우.
가 값을. 이 Firebase RemoteConfig인 경우key인 본값을가데는사습니다었기용되져오▁a▁to를 가져오는 데 되었습니다.
로그캣에 메시지가 표시될 수 있습니다.

언급URL : https://stackoverflow.com/questions/55510223/firebaseremoteconfig-error-no-value-of-type-string-exists-for-parameter-key

반응형