我正在尝试通过将开发人员模式设置为发布模式来设置firebase远程配置false.但是,如果缓存到期时间小于3000(可能会少一点,通过实验确定)秒,则无法获取数据.它抛出FirebaseRemoteConfigFetchThrottledException
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
.setDeveloperModeEnabled(false)
.build();
Run Code Online (Sandbox Code Playgroud)
并且.setDeveloperModeEnabled(true)它允许我设置任何时间甚至0并且运行良好.
这是整个大块头:
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
.setDeveloperModeEnabled(false)
.build();
mFirebaseRemoteConfig.setConfigSettings(configSettings);
mFirebaseRemoteConfig.setDefaults(R.xml.remote_config_defaults);
mFirebaseRemoteConfig.fetch(CACHE_EXPIRATION)
.addOnSuccessListener(new OnSuccessListener<Void>() {
@Override
public void onSuccess(Void aVoid) {
Log.i("info32", "remote config succeeded");
mFirebaseRemoteConfig.activateFetched();
}
})
.addOnFailureListener(new OnFailureListener() {
@Override
public void onFailure(@NonNull Exception exception) {
Log.i("info32", "remote config failed");
}
});
}
}, 0);
Run Code Online (Sandbox Code Playgroud)
你能解释一下这是什么问题吗?
我正在尝试为我的项目设置Firebase远程配置.我通过助手添加了Firebase.我在Google Cloud Console上为服务器值添加了值:

我在res/xml中创建了默认值xml
<defaultsMap>
<!-- Strings-->
<entry >
<key>textView_send_text</key>
<value >your phrase goes here.</value>
</entry>
</defaultsMap>
Run Code Online (Sandbox Code Playgroud)
这就是我的主要活动:
final private FirebaseRemoteConfig mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
protected void onCreate(Bundle savedInstanceState) {
//..code..
//fetch from Firebase
fetchAll();
}
private void fetchAll(){
final FirebaseRemoteConfig mFirebaseRemoteConfig = FirebaseRemoteConfig.getInstance();
FirebaseRemoteConfigSettings configSettings = new FirebaseRemoteConfigSettings.Builder()
.setDeveloperModeEnabled(BuildConfig.DEBUG)
.build();
mFirebaseRemoteConfig.setConfigSettings(configSettings);
mFirebaseRemoteConfig.setDefaults(R.xml.defaults);
mFirebaseRemoteConfig.fetch()
.addOnCompleteListener(this, new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if(task.isSuccessful()){
Toast.makeText(MainActivity.this, "Fetch Succeeded",
Toast.LENGTH_SHORT).show();
mFirebaseRemoteConfig.activateFetched();
}else{
Toast.makeText(MainActivity.this, "Fetch Failed",
Toast.LENGTH_SHORT).show();
}
displayWelcomeMessage();
}
});
} …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用远程配置启动并运行A/B测试,我在iOS部分遇到了一些问题.按照文档中的说明设置实验后,它似乎不起作用.对于我尝试过的所有iOS版本,我总是收到默认的远程配置值(我尝试删除并重新安装应用程序几次).
几天过去了,现在我在firebase控制台中看到了该实验的以下错误:
任何想法为什么会发生这种情况?
我对android做了完全相同的事情,它工作得很好.当我只更改默认的远程配置值时,它会在两个平台上正确更新,所以我假设远程配置设置正确完成,我是对的吗?
我也无法在iOS设备上看到变量值,我已使用实例ID标记添加到托管测试设备.
Azure中是否有与Firebase Remote Config等效的任何功能,该功能允许无需重新发布即可将功能推出到移动应用程序中?
我已经看过Azure中提供的Azure移动和其他服务。但是,似乎没有任何东西可以提供类似的功能。
当我添加com.google.firebase:firebase-config:19.1.0使用 firebase 远程配置时出现此问题。
java.lang.RuntimeException: Duplicate class com.google.protobuf.AbstractMessageLite found in modules protobuf-java-2.5.0.jar (com.google.protobuf:protobuf-java:2.5.0) and protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
Run Code Online (Sandbox Code Playgroud)
我已经更新都firebase-analytics和google-play-services到最新版本。但问题仍然存在。但是当我将远程配置更改为旧版本时,18.0.0 or less它工作正常。但我想使用最新版本。我的依赖:
firebase_analytics : "com.google.firebase:firebase-analytics:17.2.2",
fcm : "com.google.firebase:firebase-messaging:20.1.0",
performance : "com.google.firebase:firebase-perf:19.0.0",
config : "com.google.firebase:firebase-config:19.0.0",
Run Code Online (Sandbox Code Playgroud)
也试图排除下面不起作用:
exclude group: 'com.google.protobuf', module: 'protobuf-lite'
exclude group: 'com.google.protobuf', module: 'protobuf-java'
Run Code Online (Sandbox Code Playgroud) 我将Firebase集成到我的Android项目中,以便为不同的应用程序用户获取不同的参数值.我做了以下事情:

UID是AAAAAAA ......和BBBBBBB ......因此.
并设置条件的值: 
输入以下代码以从应用程序登录用户:
Task resultTask =
firebaseAuth.signInWithEmailAndPassword("test1@gmail.com", password);firebaseRemoteConfig.fetch()
.addOnCompleteListener(new OnCompleteListener() {
@Override
public void onComplete(@NonNull Task task) {
if (task.isSuccessful()) {
// Once the config is successfully fetched it must be activated before newly fetched
// values are returned.
firebaseRemoteConfig.activateFetched();
Log.d(TAG, firebaseRemoteConfig.getString("MyParameter"));
} else {
Log.d(TAG, "fetch firebase remote config failed. Reason = " + task.getException());
}
}
});结果是我总是得到默认值:DefaultValue
我做错了什么?我错过了什么?
android firebase firebase-authentication firebase-remote-config
我正在使用 Firebase 远程配置来获取远程数据,而我的应用程序需要第一次启动时的最新数据。
我正在我的应用程序中进行获取和更新onCreate():
mFirebaseRemoteConfig.fetch(cacheExpiration)
.addOnCompleteListener(new OnCompleteListener<Void>() {
@Override
public void onComplete(@NonNull Task<Void> task) {
if (task.isSuccessful()) {
mFirebaseRemoteConfig.activateFetched();
}
}
});
Run Code Online (Sandbox Code Playgroud)
并读取值:
myValue = mFirebaseRemoteConfig.getBoolean(Constants.FIREBASE_REMOTE_MY_VALUE);
Run Code Online (Sandbox Code Playgroud)
activateFetched()已成功触发),但它返回remote_config_defaults值而不是已发布的远程配置。 知道为什么在第一次调用时没有获取我的远程值吗?
我需要获取JSONObject远程的默认值config在Firebase。By FirebaseRemoteConfig.getString(),它被转换为字符串,但不是在JSONObject,说
org.json.JSONException: Unterminated object at character xx
我在config下面附加远程的默认值:
<entry>
<key>welcome_message</key>
<value>{"version" :1,"type":"category","name":"CATEGORY"}
</value>
</entry>
Run Code Online (Sandbox Code Playgroud)
我现在在下面附上我的 Java 代码:
String welcomeMessage = mFirebaseRemoteConfig.getString(WELCOME_MESSAGE_KEY);
JSONObject categoryListInJson = new JSONObject(welcomeMessage);
Run Code Online (Sandbox Code Playgroud)
预先感谢您的回答。
我正在进行Firebase RemoteConfig集成.在其中一个场景中我需要打破文本行,所以我尝试使用换行符(\n).
但这不起作用,既不是显示为额外的角色,也不是创建另一条线.
这里有任何建议!
我面临一个问题,我需要为我的 iOS 应用程序使用 FirebaseRemoteConfig。我添加了以下 Pod:
pod 'Firebase/RemoteConfig'
Run Code Online (Sandbox Code Playgroud)
现在,当我在终端上运行命令时:
pod install
Run Code Online (Sandbox Code Playgroud)
它向我显示了错误:
Framework not found 'Protobuf'
Run Code Online (Sandbox Code Playgroud)
确实令人沮丧,因为该项目在此之前运行良好。我尝试了堆栈溢出的一些建议,但无法解决问题。
# Uncomment this line to define a global platform for your project
platform :ios, '10.0'
# ignore all warnings from all pods
inhibit_all_warnings!
use_frameworks!
target 'S****k' do
pod 'AFNetworking', '~> 2.6'
pod 'TPKeyboardAvoiding', '~> 1.2'
pod 'SVProgressHUD', '~> 1.1'
pod 'Google/SignIn'
pod 'Mantle', '~> 2.0'
pod 'FBSDKCoreKit'#, '~> 4.8'
pod 'FBSDKLoginKit'#, '~> 4.8'
pod 'GooglePlaces', '~> 3.0.0'
#pod 'Firebase/Core'
pod 'GoogleTagManager'
pod 'GoogleIDFASupport'
pod …Run Code Online (Sandbox Code Playgroud)