-
Notifications
You must be signed in to change notification settings - Fork 586
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add custom signals support in Remote Config. #6410
Add custom signals support in Remote Config. #6410
Conversation
…eting' into tushar-khandelwal/rc-custom-targeting
Javadoc Changes:--- /home/runner/diff/original/firebase-kotlindoc/android/client/firebase-config/_toc.yaml 2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/client/firebase-config/_toc.yaml 2024-12-03 04:49:07.808037179 +0000
@@ -20,6 +20,10 @@
section:
- title: "ConfigUpdate"
path: "/docs/reference/android/com/google/firebase/remoteconfig/ConfigUpdate.html"
+ - title: "CustomSignals"
+ path: "/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html"
+ - title: "CustomSignals.Builder"
+ path: "/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html"
- title: "FirebaseRemoteConfig"
path: "/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html"
- title: "FirebaseRemoteConfigSettings" --- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html 1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html 2024-12-03 04:49:07.808037179 +0000
@@ -0,0 +1,102 @@
+<html devsite="true">
+ <head>
+ <title>CustomSignals.Builder</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <div id="metadata-info-block"></div>
+ <h1>CustomSignals.Builder</h1>
+ <p>
+ <pre>public class <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+ </p>
+ <hr>
+ <h2>Summary</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public constructors</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public methods</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>()</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key, @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> value)</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key, long value)</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key, double value)</code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="list">
+ <h2>Public constructors</h2>
+ <div class="api-item"><a name="Builder--"></a><a name="builder"></a>
+ <h3 class="api-name" id="Builder()">Builder</h3>
+ <pre class="api-signature no-pretty-print">public <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</pre>
+ </div>
+ </div>
+ <div class="list">
+ <h2>Public methods</h2>
+ <div class="api-item"><a name="build--"></a><a name="build"></a>
+ <h3 class="api-name" id="build()">build</h3>
+ <pre class="api-signature no-pretty-print">public @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>()</pre>
+ </div>
+ <div class="api-item"><a name="put(java.lang.String, java.lang.String)"></a><a name="put-java.lang.String-java.lang.String-"></a><a name="put"></a>
+ <h3 class="api-name" id="put(java.lang.String,java.lang.String)">put</h3>
+ <pre class="api-signature no-pretty-print">public @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key, @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/Nullable.html">Nullable</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> value)</pre>
+ </div>
+ <div class="api-item"><a name="put(java.lang.String, long)"></a><a name="put-java.lang.String-long-"></a><a name="put"></a>
+ <h3 class="api-name" id="put(java.lang.String,long)">put</h3>
+ <pre class="api-signature no-pretty-print">public @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key, long value)</pre>
+ </div>
+ <div class="api-item"><a name="put(java.lang.String, double)"></a><a name="put-java.lang.String-double-"></a><a name="put"></a>
+ <h3 class="api-name" id="put(java.lang.String,double)">put</h3>
+ <pre class="api-signature no-pretty-print">public @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key, double value)</pre>
+ </div>
+ </div>
+ </body>
+</html>
+ --- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.html 1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/CustomSignals.html 2024-12-03 04:49:07.808037179 +0000
@@ -0,0 +1,38 @@
+<html devsite="true">
+ <head>
+ <title>CustomSignals</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/android/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <div id="metadata-info-block"></div>
+ <h1>CustomSignals</h1>
+ <p>
+ <pre>public class <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+ </p>
+ <hr>
+ <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+ <h2>Summary</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Nested types</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td>
+ <div><code>public class <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </body>
+</html>
+ --- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html 2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html 2024-12-03 04:49:07.808037179 +0000
@@ -254,6 +254,13 @@
<tr>
<td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a><<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>></code></td>
<td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a> customSignals)</code></div>
+ <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance.</p>
+ </td>
+ </tr>
+ <tr>
+ <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a><<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>></code></td>
+ <td>
<div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setDefaultsAsync(java.util.Map<java.lang.String,java.lang.Object>)">setDefaultsAsync</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a><<a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a>, <a href="https://developer.android.com/reference/kotlin/java/lang/Object.html">Object</a>> defaults)</code></div>
<p>Asynchronously sets default configs using the given <code><a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a></code>.</p>
</td>
@@ -973,6 +980,33 @@
</td>
</tr>
</tbody>
+ </table>
+ </div>
+ </div>
+ <div class="api-item"><a name="setCustomSignals-com.google.firebase.remoteconfig.CustomSignals-"></a><a name="setcustomsignals"></a>
+ <h3 class="api-name" id="setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</h3>
+ <pre class="api-signature no-pretty-print">public @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a><<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a> customSignals)</pre>
+ <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance. </p>
+ <p>The <code>customSignals</code> parameter should be an instance of <code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code>, which enforces the allowed types for custom signal values (String, Long or Double).</p>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%">Parameters</th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code>@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a> customSignals</code></td>
+ <td>
+ <p>A dictionary of keys and the values of the custom signals to be set for the app instance</p>
+ </td>
+ </tr>
+ </tbody>
</table>
</div>
</div> --- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/RemoteConfigKt.html 2024-12-03 04:51:59.841690509 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/RemoteConfigKt.html 2024-12-03 04:49:07.812037220 +0000
@@ -53,6 +53,12 @@
</thead>
<tbody class="list">
<tr>
+ <td><code>static final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#customSignals(kotlin.Function1)">customSignals</a>(<br> @<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-extension-function-type/index.html">ExtensionFunctionType</a> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> Function1<@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>, <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>> builder<br>)</code></div>
+ </td>
+ </tr>
+ <tr>
<td><code>static final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigValue.html">FirebaseRemoteConfigValue</a></code></td>
<td>
<div><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html">RemoteConfigKt</a>.<a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#(com.google.firebase.remoteconfig.FirebaseRemoteConfig).get(kotlin.String)">get</a>(<br> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a> receiver,<br> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key<br>)</code></div>
@@ -98,6 +104,10 @@
</div>
<div class="list">
<h2>Public methods</h2>
+ <div class="api-item"><a name="customSignals-kotlin.Function1-"></a><a name="customsignals"></a>
+ <h3 class="api-name" id="customSignals(kotlin.Function1)">customSignals</h3>
+ <pre class="api-signature no-pretty-print">public static final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#customSignals(kotlin.Function1)">customSignals</a>(<br> @<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-extension-function-type/index.html">ExtensionFunctionType</a> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> Function1<@<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>, <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>> builder<br>)</pre>
+ </div>
<div class="api-item"><a name="-com.google.firebase.remoteconfig.FirebaseRemoteConfig-.get-kotlin.String-"></a><a name="get"></a>
<h3 class="api-name" id="(com.google.firebase.remoteconfig.FirebaseRemoteConfig).get(kotlin.String)">RemoteConfigKt.get</h3>
<pre class="api-signature no-pretty-print">public static final @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfigValue.html">FirebaseRemoteConfigValue</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html">RemoteConfigKt</a>.<a href="/docs/reference/android/com/google/firebase/remoteconfig/RemoteConfigKt.html#(com.google.firebase.remoteconfig.FirebaseRemoteConfig).get(kotlin.String)">get</a>(<br> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a> receiver,<br> @<a href="https://developer.android.com/reference/kotlin/androidx/annotation/NonNull.html">NonNull</a> <a href="https://developer.android.com/reference/kotlin/java/lang/String.html">String</a> key<br>)</pre> --- /home/runner/diff/original/firebase-kotlindoc/android/com/google/firebase/remoteconfig/package-summary.html 2024-12-03 04:51:59.841690509 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/android/com/google/firebase/remoteconfig/package-summary.html 2024-12-03 04:49:07.808037179 +0000
@@ -56,6 +56,16 @@
</td>
</tr>
<tr>
+ <td><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td></td>
+ </tr>
+ <tr>
<td><code><a href="/docs/reference/android/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code></td>
<td>
<p>Entry point for the Firebase Remote Config API.</p> --- /home/runner/diff/original/firebase-kotlindoc/kotlin/client/firebase-config/_toc.yaml 2024-12-03 04:51:59.833690432 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/client/firebase-config/_toc.yaml 2024-12-03 04:49:07.804037140 +0000
@@ -20,6 +20,10 @@
section:
- title: "ConfigUpdate"
path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/ConfigUpdate.html"
+ - title: "CustomSignals"
+ path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html"
+ - title: "CustomSignals.Builder"
+ path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html"
- title: "FirebaseRemoteConfig"
path: "/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html"
- title: "FirebaseRemoteConfigSettings" --- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html 1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html 2024-12-03 04:49:07.804037140 +0000
@@ -0,0 +1,102 @@
+<html devsite="true">
+ <head>
+ <title>CustomSignals.Builder</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <div id="metadata-info-block"></div>
+ <h1>CustomSignals.Builder</h1>
+ <p>
+ <pre>class <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+ </p>
+ <hr>
+ <h2>Summary</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public constructors</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Public functions</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>()</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(key: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>, value: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?)</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(key: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>, value: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html">Long</a>)</code></div>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(key: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>, value: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double/index.html">Double</a>)</code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ <div class="list">
+ <h2>Public constructors</h2>
+ <div class="api-item"><a name="Builder--"></a><a name="builder"></a>
+ <h3 class="api-name" id="Builder()">Builder</h3>
+ <pre class="api-signature no-pretty-print"><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#Builder()">Builder</a>()</pre>
+ </div>
+ </div>
+ <div class="list">
+ <h2>Public functions</h2>
+ <div class="api-item"><a name="build--"></a><a name="build"></a>
+ <h3 class="api-name" id="build()">build</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#build()">build</a>(): <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+ </div>
+ <div class="api-item"><a name="put(java.lang.String, java.lang.String)"></a><a name="put-java.lang.String-java.lang.String-"></a><a name="put"></a>
+ <h3 class="api-name" id="put(java.lang.String,java.lang.String)">put</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,java.lang.String)">put</a>(key: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>, value: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>?): <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+ </div>
+ <div class="api-item"><a name="put(java.lang.String, long)"></a><a name="put-java.lang.String-long-"></a><a name="put"></a>
+ <h3 class="api-name" id="put(java.lang.String,long)">put</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,long)">put</a>(key: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>, value: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-long/index.html">Long</a>): <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+ </div>
+ <div class="api-item"><a name="put(java.lang.String, double)"></a><a name="put-java.lang.String-double-"></a><a name="put"></a>
+ <h3 class="api-name" id="put(java.lang.String,double)">put</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html#put(java.lang.String,double)">put</a>(key: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>, value: <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-double/index.html">Double</a>): <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></pre>
+ </div>
+ </div>
+ </body>
+</html>
+ --- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.html 1970-01-01 00:00:00.000000000 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/CustomSignals.html 2024-12-03 04:49:07.804037140 +0000
@@ -0,0 +1,38 @@
+<html devsite="true">
+ <head>
+ <title>CustomSignals</title>
+{% setvar book_path %}/_book.yaml{% endsetvar %}
+{% include "docs/reference/kotlin/_reference-head-tags.html" %}
+ </head>
+ <body>
+ <div id="metadata-info-block"></div>
+ <h1>CustomSignals</h1>
+ <p>
+ <pre>class <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+ </p>
+ <hr>
+ <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+ <h2>Summary</h2>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%"><h3>Nested types</h3></th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td>
+ <div><code>class <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></div>
+ </td>
+ </tr>
+ </tbody>
+ </table>
+ </div>
+ </body>
+</html>
+ --- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html 2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html 2024-12-03 04:49:07.804037140 +0000
@@ -254,6 +254,13 @@
<tr>
<td><code><a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a><<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!></code></td>
<td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(customSignals: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>)</code></div>
+ <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance.</p>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a><<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!></code></td>
+ <td>
<div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setDefaultsAsync(java.util.Map<java.lang.String,java.lang.Object>)">setDefaultsAsync</a>(defaults: (<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-mutable-map/index.html">Mutable</a>)<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-map/index.html">Map</a><<a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-string/index.html">String</a>!, <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html">Any</a>!>)</code></div>
<p>Asynchronously sets default configs using the given <code><a href="https://developer.android.com/reference/kotlin/java/util/Map.html">Map</a></code>.</p>
</td>
@@ -990,6 +997,33 @@
</td>
</tr>
</tbody>
+ </table>
+ </div>
+ </div>
+ <div class="api-item"><a name="setCustomSignals-com.google.firebase.remoteconfig.CustomSignals-"></a><a name="setcustomsignals"></a>
+ <h3 class="api-name" id="setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html#setCustomSignals(com.google.firebase.remoteconfig.CustomSignals)">setCustomSignals</a>(customSignals: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a>): <a href="https://developers.google.com/android/reference/com/google/android/gms/tasks/Task.html">Task</a><<a href="https://developer.android.com/reference/kotlin/java/lang/Void.html">Void</a>!></pre>
+ <p>Asynchronously changes the custom signals for this <code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code> instance. </p>
+ <p>The <code>customSignals</code> parameter should be an instance of <code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code>, which enforces the allowed types for custom signal values (String, Long or Double).</p>
+ <div class="devsite-table-wrapper">
+ <table class="responsive">
+ <colgroup>
+ <col width="40%">
+ <col>
+ </colgroup>
+ <thead>
+ <tr>
+ <th colspan="100%">Parameters</th>
+ </tr>
+ </thead>
+ <tbody class="list">
+ <tr>
+ <td><code>customSignals: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <p>A dictionary of keys and the values of the custom signals to be set for the app instance</p>
+ </td>
+ </tr>
+ </tbody>
</table>
</div>
</div> --- /home/runner/diff/original/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/package-summary.html 2024-12-03 04:51:59.837690470 +0000
+++ /home/runner/diff/modified/firebase-kotlindoc/kotlin/com/google/firebase/remoteconfig/package-summary.html 2024-12-03 04:49:07.804037140 +0000
@@ -56,6 +56,16 @@
</td>
</tr>
<tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <p>Helper class which handles the storage and conversion to strings of key/value pairs with heterogeneous value types for custom signals.</p>
+ </td>
+ </tr>
+ <tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a></code></td>
+ <td></td>
+ </tr>
+ <tr>
<td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfig.html">FirebaseRemoteConfig</a></code></td>
<td>
<p>Entry point for the Firebase Remote Config API.</p>
@@ -135,6 +145,12 @@
</colgroup>
<tbody class="list">
<tr>
+ <td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></code></td>
+ <td>
+ <div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#customSignals(kotlin.Function1)">customSignals</a>(builder: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>.() <span style="white-space: nowrap;">-></span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>)</code></div>
+ </td>
+ </tr>
+ <tr>
<td><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.html">FirebaseRemoteConfigSettings</a></code></td>
<td>
<div><code><a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#remoteConfigSettings(kotlin.Function1)">remoteConfigSettings</a>(init: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder.html">FirebaseRemoteConfigSettings.Builder</a>.() <span style="white-space: nowrap;">-></span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>)</code></div>
@@ -194,6 +210,10 @@
</table>
</div>
<h2>Top-level functions</h2>
+ <div class="api-item"><a name="customSignals-kotlin.Function1-"></a><a name="customsignals"></a>
+ <h3 class="api-name" id="customSignals(kotlin.Function1)">customSignals</h3>
+ <pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#customSignals(kotlin.Function1)">customSignals</a>(builder: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.Builder.html">CustomSignals.Builder</a>.() <span style="white-space: nowrap;">-></span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>): <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/CustomSignals.html">CustomSignals</a></pre>
+ </div>
<div class="api-item"><a name="remoteConfigSettings-kotlin.Function1-"></a><a name="remoteconfigsettings"></a>
<h3 class="api-name" id="remoteConfigSettings(kotlin.Function1)">remoteConfigSettings</h3>
<pre class="api-signature no-pretty-print">fun <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/package-summary.html#remoteConfigSettings(kotlin.Function1)">remoteConfigSettings</a>(init: <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.Builder.html">FirebaseRemoteConfigSettings.Builder</a>.() <span style="white-space: nowrap;">-></span> <a href="https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-unit/index.html">Unit</a>): <a href="/docs/reference/kotlin/com/google/firebase/remoteconfig/FirebaseRemoteConfigSettings.html">FirebaseRemoteConfigSettings</a></pre> |
Vertex AI Mock Responses Check
|
Generated by 🚫 Danger |
The public api surface has changed for the subproject firebase-config: Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly. |
The public api surface has changed for the subproject firebase-config: Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly. |
…eting' into tushar-khandelwal/rc-custom-targeting
The public api surface has changed for the subproject firebase-config: Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly. |
The public api surface has changed for the subproject firebase-config: Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly. |
...-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClient.java
Show resolved
Hide resolved
...-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClient.java
Outdated
Show resolved
Hide resolved
...c/androidTest/java/com/google/firebase/remoteconfig/FirebaseRemoteConfigIntegrationTest.java
Outdated
Show resolved
Hide resolved
...-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClient.java
Outdated
Show resolved
Hide resolved
...fig/src/test/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClientTest.java
Show resolved
Hide resolved
Also in general can you update the PR title/description with more info - "Add method to set custom signals for Remote Config targeting" or something |
…ting # Conflicts: # firebase-config/gradle.properties
…eting' into tushar-khandelwal/rc-custom-targeting # Conflicts: # firebase-config/ktx/src/test/kotlin/com/google/firebase/remoteconfig/TestConstructorUtil.kt # firebase-config/ktx/src/test/kotlin/com/google/firebase/remoteconfig/ktx/RemoteConfigTests.kt # firebase-config/src/androidTest/java/com/google/firebase/remoteconfig/FirebaseRemoteConfigIntegrationTest.java # firebase-config/src/main/java/com/google/firebase/remoteconfig/FirebaseRemoteConfig.java # firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java # firebase-config/src/test/java/com/google/firebase/remoteconfig/FirebaseRemoteConfigTest.java # firebase-config/src/test/java/com/google/firebase/remoteconfig/RemoteConfigTests.kt # firebase-config/src/test/java/com/google/firebase/remoteconfig/TestConstructorUtil.kt # firebase-config/src/test/java/com/google/firebase/remoteconfig/internal/ConfigFetchHandlerTest.java # firebase-config/src/test/java/com/google/firebase/remoteconfig/ktx/RemoteConfigTests.kt
firebase-config/src/main/java/com/google/firebase/remoteconfig/FirebaseRemoteConfig.java
Show resolved
Hide resolved
firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java
Outdated
Show resolved
Hide resolved
...ase-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigMetadataClient.java
Outdated
Show resolved
Hide resolved
firebase-config/src/main/java/com/google/firebase/remoteconfig/CustomSignals.java
Show resolved
Hide resolved
...ase-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigMetadataClient.java
Outdated
Show resolved
Hide resolved
Rename ConfigMetadataClient to ConfigSharedPrefsClient Reflects expanded functionality to store both metadata and custom signals in shared preferences.
The public api surface has changed for the subproject firebase-config: Please update the api.txt files for the subprojects being affected by this change by running ./gradlew ${subproject}:generateApiTxtFile. Also perform a major/minor bump accordingly. |
…ndelwal/rc-custom-targeting # Conflicts: # firebase-config/src/main/java/com/google/firebase/remoteconfig/RemoteConfigComponent.java # firebase-config/src/main/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClient.java # firebase-config/src/test/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClientTest.java
firebase-config/src/main/java/com/google/firebase/remoteconfig/FirebaseRemoteConfig.java
Outdated
Show resolved
Hide resolved
...fig/src/test/java/com/google/firebase/remoteconfig/internal/ConfigSharedPrefsClientTest.java
Show resolved
Hide resolved
I think the PR title still needs to be updated? |
17cc491
into
remoteConfigCustomTargeting
feat(rc): Add custom signals support and methods to set custom signals for Remote Config Custom targeting