[nearby][clean up] Delete all Fast Pair AOSP and HalfSheetUX code

Test: -m
Fix: 292812342
Fix: 297413048
Fix: 214879640
Ignore-AOSP-First: merge conflicts, need to be merged in downstream first
Change-Id: I7efa92469f0c061a972a7dadf6a38686b78c61b4
Merged-In: I7efa92469f0c061a972a7dadf6a38686b78c61b4
This commit is contained in:
Xinyi Zhou
2023-08-28 17:32:17 -07:00
parent 966bb3e0d6
commit fcd2b7ccb0
477 changed files with 11 additions and 61636 deletions

View File

@@ -52,5 +52,7 @@ java_library {
static_libs: [
"modules-utils-preconditions",
],
visibility: ["//packages/modules/Connectivity/nearby/tests:__subpackages__"],
visibility: [
"//packages/modules/Connectivity/nearby/tests:__subpackages__",
],
}

View File

@@ -1,183 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.nearby.aidl.FastPairAccountKeyDeviceMetadataParcel;
/**
* Class for metadata of a Fast Pair device associated with an account.
*
* @hide
*/
public class FastPairAccountKeyDeviceMetadata {
FastPairAccountKeyDeviceMetadataParcel mMetadataParcel;
FastPairAccountKeyDeviceMetadata(FastPairAccountKeyDeviceMetadataParcel metadataParcel) {
this.mMetadataParcel = metadataParcel;
}
/**
* Get Device Account Key, which uniquely identifies a Fast Pair device associated with an
* account. AccountKey is 16 bytes: first byte is 0x04. Other 15 bytes are randomly generated.
*
* @return 16-byte Account Key.
* @hide
*/
@Nullable
public byte[] getDeviceAccountKey() {
return mMetadataParcel.deviceAccountKey;
}
/**
* Get a hash value of device's account key and public bluetooth address without revealing the
* public bluetooth address. Sha256 hash value is 32 bytes.
*
* @return 32-byte Sha256 hash value.
* @hide
*/
@Nullable
public byte[] getSha256DeviceAccountKeyPublicAddress() {
return mMetadataParcel.sha256DeviceAccountKeyPublicAddress;
}
/**
* Get metadata of a Fast Pair device type.
*
* @hide
*/
@Nullable
public FastPairDeviceMetadata getFastPairDeviceMetadata() {
if (mMetadataParcel.metadata == null) {
return null;
}
return new FastPairDeviceMetadata(mMetadataParcel.metadata);
}
/**
* Get Fast Pair discovery item, which is tied to both the device type and the account.
*
* @hide
*/
@Nullable
public FastPairDiscoveryItem getFastPairDiscoveryItem() {
if (mMetadataParcel.discoveryItem == null) {
return null;
}
return new FastPairDiscoveryItem(mMetadataParcel.discoveryItem);
}
/**
* Builder used to create FastPairAccountKeyDeviceMetadata.
*
* @hide
*/
public static final class Builder {
private final FastPairAccountKeyDeviceMetadataParcel mBuilderParcel;
/**
* Default constructor of Builder.
*
* @hide
*/
public Builder() {
mBuilderParcel = new FastPairAccountKeyDeviceMetadataParcel();
mBuilderParcel.deviceAccountKey = null;
mBuilderParcel.sha256DeviceAccountKeyPublicAddress = null;
mBuilderParcel.metadata = null;
mBuilderParcel.discoveryItem = null;
}
/**
* Set Account Key.
*
* @param deviceAccountKey Fast Pair device account key, which is 16 bytes: first byte is
* 0x04. Next 15 bytes are randomly generated.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setDeviceAccountKey(@Nullable byte[] deviceAccountKey) {
mBuilderParcel.deviceAccountKey = deviceAccountKey;
return this;
}
/**
* Set sha256 hash value of account key and public bluetooth address.
*
* @param sha256DeviceAccountKeyPublicAddress 32-byte sha256 hash value of account key and
* public bluetooth address.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setSha256DeviceAccountKeyPublicAddress(
@Nullable byte[] sha256DeviceAccountKeyPublicAddress) {
mBuilderParcel.sha256DeviceAccountKeyPublicAddress =
sha256DeviceAccountKeyPublicAddress;
return this;
}
/**
* Set Fast Pair metadata.
*
* @param metadata Fast Pair metadata.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setFastPairDeviceMetadata(@Nullable FastPairDeviceMetadata metadata) {
if (metadata == null) {
mBuilderParcel.metadata = null;
} else {
mBuilderParcel.metadata = metadata.mMetadataParcel;
}
return this;
}
/**
* Set Fast Pair discovery item.
*
* @param discoveryItem Fast Pair discovery item.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setFastPairDiscoveryItem(@Nullable FastPairDiscoveryItem discoveryItem) {
if (discoveryItem == null) {
mBuilderParcel.discoveryItem = null;
} else {
mBuilderParcel.discoveryItem = discoveryItem.mMetadataParcel;
}
return this;
}
/**
* Build {@link FastPairAccountKeyDeviceMetadata} with the currently set configuration.
*
* @hide
*/
@NonNull
public FastPairAccountKeyDeviceMetadata build() {
return new FastPairAccountKeyDeviceMetadata(mBuilderParcel);
}
}
}

View File

@@ -1,119 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.nearby.aidl.FastPairAntispoofKeyDeviceMetadataParcel;
/**
* Class for a type of registered Fast Pair device keyed by modelID, or antispoofKey.
*
* @hide
*/
public class FastPairAntispoofKeyDeviceMetadata {
FastPairAntispoofKeyDeviceMetadataParcel mMetadataParcel;
FastPairAntispoofKeyDeviceMetadata(
FastPairAntispoofKeyDeviceMetadataParcel metadataParcel) {
this.mMetadataParcel = metadataParcel;
}
/**
* Get Antispoof public key.
*
* @hide
*/
@Nullable
public byte[] getAntispoofPublicKey() {
return this.mMetadataParcel.antispoofPublicKey;
}
/**
* Get metadata of a Fast Pair device type.
*
* @hide
*/
@Nullable
public FastPairDeviceMetadata getFastPairDeviceMetadata() {
if (this.mMetadataParcel.deviceMetadata == null) {
return null;
}
return new FastPairDeviceMetadata(this.mMetadataParcel.deviceMetadata);
}
/**
* Builder used to create FastPairAntispoofkeyDeviceMetadata.
*
* @hide
*/
public static final class Builder {
private final FastPairAntispoofKeyDeviceMetadataParcel mBuilderParcel;
/**
* Default constructor of Builder.
*
* @hide
*/
public Builder() {
mBuilderParcel = new FastPairAntispoofKeyDeviceMetadataParcel();
mBuilderParcel.antispoofPublicKey = null;
mBuilderParcel.deviceMetadata = null;
}
/**
* Set AntiSpoof public key, which uniquely identify a Fast Pair device type.
*
* @param antispoofPublicKey is 64 bytes, see <a href="https://developers.google.com/nearby/fast-pair/spec#data_format">Data Format</a>.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setAntispoofPublicKey(@Nullable byte[] antispoofPublicKey) {
mBuilderParcel.antispoofPublicKey = antispoofPublicKey;
return this;
}
/**
* Set Fast Pair metadata, which is the property of a Fast Pair device type, including
* device images and strings.
*
* @param metadata Fast Pair device meta data.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setFastPairDeviceMetadata(@Nullable FastPairDeviceMetadata metadata) {
if (metadata != null) {
mBuilderParcel.deviceMetadata = metadata.mMetadataParcel;
} else {
mBuilderParcel.deviceMetadata = null;
}
return this;
}
/**
* Build {@link FastPairAntispoofKeyDeviceMetadata} with the currently set configuration.
*
* @hide
*/
@NonNull
public FastPairAntispoofKeyDeviceMetadata build() {
return new FastPairAntispoofKeyDeviceMetadata(mBuilderParcel);
}
}
}

View File

@@ -1,714 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.accounts.Account;
import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.Service;
import android.content.Intent;
import android.nearby.aidl.ByteArrayParcel;
import android.nearby.aidl.FastPairAccountDevicesMetadataRequestParcel;
import android.nearby.aidl.FastPairAccountKeyDeviceMetadataParcel;
import android.nearby.aidl.FastPairAntispoofKeyDeviceMetadataRequestParcel;
import android.nearby.aidl.FastPairEligibleAccountParcel;
import android.nearby.aidl.FastPairEligibleAccountsRequestParcel;
import android.nearby.aidl.FastPairManageAccountDeviceRequestParcel;
import android.nearby.aidl.FastPairManageAccountRequestParcel;
import android.nearby.aidl.IFastPairAccountDevicesMetadataCallback;
import android.nearby.aidl.IFastPairAntispoofKeyDeviceMetadataCallback;
import android.nearby.aidl.IFastPairDataProvider;
import android.nearby.aidl.IFastPairEligibleAccountsCallback;
import android.nearby.aidl.IFastPairManageAccountCallback;
import android.nearby.aidl.IFastPairManageAccountDeviceCallback;
import android.os.IBinder;
import android.os.RemoteException;
import android.util.Log;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
/**
* A service class for fast pair data providers outside the system server.
*
* Fast pair providers should be wrapped in a non-exported service which returns the result of
* {@link #getBinder()} from the service's {@link android.app.Service#onBind(Intent)} method. The
* service should not be exported so that components other than the system server cannot bind to it.
* Alternatively, the service may be guarded by a permission that only system server can obtain.
*
* <p>Fast Pair providers are identified by their UID / package name.
*
* @hide
*/
public abstract class FastPairDataProviderService extends Service {
/**
* The action the wrapping service should have in its intent filter to implement the
* {@link android.nearby.FastPairDataProviderBase}.
*
* @hide
*/
public static final String ACTION_FAST_PAIR_DATA_PROVIDER =
"android.nearby.action.FAST_PAIR_DATA_PROVIDER";
/**
* Manage request type to add, or opt-in.
*
* @hide
*/
public static final int MANAGE_REQUEST_ADD = 0;
/**
* Manage request type to remove, or opt-out.
*
* @hide
*/
public static final int MANAGE_REQUEST_REMOVE = 1;
/**
* @hide
*/
@Retention(RetentionPolicy.SOURCE)
@IntDef(value = {
MANAGE_REQUEST_ADD,
MANAGE_REQUEST_REMOVE})
@interface ManageRequestType {}
/**
* Error code for bad request.
*
* @hide
*/
public static final int ERROR_CODE_BAD_REQUEST = 0;
/**
* Error code for internal error.
*
* @hide
*/
public static final int ERROR_CODE_INTERNAL_ERROR = 1;
/**
* @hide
*/
@Retention(RetentionPolicy.SOURCE)
@IntDef(value = {
ERROR_CODE_BAD_REQUEST,
ERROR_CODE_INTERNAL_ERROR})
@interface ErrorCode {}
private final IBinder mBinder;
private final String mTag;
/**
* Constructor of FastPairDataProviderService.
*
* @param tag TAG for on device logging.
* @hide
*/
public FastPairDataProviderService(@NonNull String tag) {
mBinder = new Service();
mTag = tag;
}
@Override
@NonNull
public final IBinder onBind(@NonNull Intent intent) {
return mBinder;
}
/**
* Callback to be invoked when an AntispoofKeyed device metadata is loaded.
*
* @hide
*/
public interface FastPairAntispoofKeyDeviceMetadataCallback {
/**
* Invoked once the meta data is loaded.
*
* @hide
*/
void onFastPairAntispoofKeyDeviceMetadataReceived(
@NonNull FastPairAntispoofKeyDeviceMetadata metadata);
/** Invoked in case of error.
*
* @hide
*/
void onError(@ErrorCode int code, @Nullable String message);
}
/**
* Callback to be invoked when Fast Pair devices of a given account is loaded.
*
* @hide
*/
public interface FastPairAccountDevicesMetadataCallback {
/**
* Should be invoked once the metadatas are loaded.
*
* @hide
*/
void onFastPairAccountDevicesMetadataReceived(
@NonNull Collection<FastPairAccountKeyDeviceMetadata> metadatas);
/**
* Invoked in case of error.
*
* @hide
*/
void onError(@ErrorCode int code, @Nullable String message);
}
/**
* Callback to be invoked when FastPair eligible accounts are loaded.
*
* @hide
*/
public interface FastPairEligibleAccountsCallback {
/**
* Should be invoked once the eligible accounts are loaded.
*
* @hide
*/
void onFastPairEligibleAccountsReceived(
@NonNull Collection<FastPairEligibleAccount> accounts);
/**
* Invoked in case of error.
*
* @hide
*/
void onError(@ErrorCode int code, @Nullable String message);
}
/**
* Callback to be invoked when a management action is finished.
*
* @hide
*/
public interface FastPairManageActionCallback {
/**
* Should be invoked once the manage action is successful.
*
* @hide
*/
void onSuccess();
/**
* Invoked in case of error.
*
* @hide
*/
void onError(@ErrorCode int code, @Nullable String message);
}
/**
* Fulfills the Fast Pair device metadata request by using callback to send back the
* device meta data of a given modelId.
*
* @hide
*/
public abstract void onLoadFastPairAntispoofKeyDeviceMetadata(
@NonNull FastPairAntispoofKeyDeviceMetadataRequest request,
@NonNull FastPairAntispoofKeyDeviceMetadataCallback callback);
/**
* Fulfills the account tied Fast Pair devices metadata request by using callback to send back
* all Fast Pair device's metadata of a given account.
*
* @hide
*/
public abstract void onLoadFastPairAccountDevicesMetadata(
@NonNull FastPairAccountDevicesMetadataRequest request,
@NonNull FastPairAccountDevicesMetadataCallback callback);
/**
* Fulfills the Fast Pair eligible accounts request by using callback to send back Fast Pair
* eligible accounts.
*
* @hide
*/
public abstract void onLoadFastPairEligibleAccounts(
@NonNull FastPairEligibleAccountsRequest request,
@NonNull FastPairEligibleAccountsCallback callback);
/**
* Fulfills the Fast Pair account management request by using callback to send back result.
*
* @hide
*/
public abstract void onManageFastPairAccount(
@NonNull FastPairManageAccountRequest request,
@NonNull FastPairManageActionCallback callback);
/**
* Fulfills the request to manage device-account mapping by using callback to send back result.
*
* @hide
*/
public abstract void onManageFastPairAccountDevice(
@NonNull FastPairManageAccountDeviceRequest request,
@NonNull FastPairManageActionCallback callback);
/**
* Class for reading FastPairAntispoofKeyDeviceMetadataRequest, which specifies the model ID of
* a Fast Pair device. To fulfill this request, corresponding
* {@link FastPairAntispoofKeyDeviceMetadata} should be fetched and returned.
*
* @hide
*/
public static class FastPairAntispoofKeyDeviceMetadataRequest {
private final FastPairAntispoofKeyDeviceMetadataRequestParcel mMetadataRequestParcel;
private FastPairAntispoofKeyDeviceMetadataRequest(
final FastPairAntispoofKeyDeviceMetadataRequestParcel metaDataRequestParcel) {
this.mMetadataRequestParcel = metaDataRequestParcel;
}
/**
* Get modelId (24 bit), the key for FastPairAntispoofKeyDeviceMetadata in the same format
* returned by Google at device registration time.
*
* ModelId format is defined at device registration time, see
* <a href="https://developers.google.com/nearby/fast-pair/spec#model_id">Model ID</a>.
* @return raw bytes of modelId in the same format returned by Google at device registration
* time.
* @hide
*/
public @NonNull byte[] getModelId() {
return this.mMetadataRequestParcel.modelId;
}
}
/**
* Class for reading FastPairAccountDevicesMetadataRequest, which specifies the Fast Pair
* account and the allow list of the FastPair device keys saved to the account (i.e., FastPair
* accountKeys).
*
* A Fast Pair accountKey is created when a Fast Pair device is saved to an account. It is per
* Fast Pair device per account.
*
* To retrieve all Fast Pair accountKeys saved to an account, the caller needs to set
* account with an empty allow list.
*
* To retrieve metadata of a selected list of Fast Pair devices saved to an account, the caller
* needs to set account with a non-empty allow list.
* @hide
*/
public static class FastPairAccountDevicesMetadataRequest {
private final FastPairAccountDevicesMetadataRequestParcel mMetadataRequestParcel;
private FastPairAccountDevicesMetadataRequest(
final FastPairAccountDevicesMetadataRequestParcel metaDataRequestParcel) {
this.mMetadataRequestParcel = metaDataRequestParcel;
}
/**
* Get FastPair account, whose Fast Pair devices' metadata is requested.
*
* @return a FastPair account.
* @hide
*/
public @NonNull Account getAccount() {
return this.mMetadataRequestParcel.account;
}
/**
* Get allowlist of Fast Pair devices using a collection of deviceAccountKeys.
* Note that as a special case, empty list actually means all FastPair devices under the
* account instead of none.
*
* DeviceAccountKey is 16 bytes: first byte is 0x04. Other 15 bytes are randomly generated.
*
* @return allowlist of Fast Pair devices using a collection of deviceAccountKeys.
* @hide
*/
public @NonNull Collection<byte[]> getDeviceAccountKeys() {
if (this.mMetadataRequestParcel.deviceAccountKeys == null) {
return new ArrayList<byte[]>(0);
}
List<byte[]> deviceAccountKeys =
new ArrayList<>(this.mMetadataRequestParcel.deviceAccountKeys.length);
for (ByteArrayParcel deviceAccountKey : this.mMetadataRequestParcel.deviceAccountKeys) {
deviceAccountKeys.add(deviceAccountKey.byteArray);
}
return deviceAccountKeys;
}
}
/**
* Class for reading FastPairEligibleAccountsRequest. Upon receiving this request, Fast Pair
* eligible accounts should be returned to bind Fast Pair devices.
*
* @hide
*/
public static class FastPairEligibleAccountsRequest {
@SuppressWarnings("UnusedVariable")
private final FastPairEligibleAccountsRequestParcel mAccountsRequestParcel;
private FastPairEligibleAccountsRequest(
final FastPairEligibleAccountsRequestParcel accountsRequestParcel) {
this.mAccountsRequestParcel = accountsRequestParcel;
}
}
/**
* Class for reading FastPairManageAccountRequest. If the request type is MANAGE_REQUEST_ADD,
* the account is enabled to bind Fast Pair devices; If the request type is
* MANAGE_REQUEST_REMOVE, the account is disabled to bind more Fast Pair devices. Furthermore,
* all existing bounded Fast Pair devices are unbounded.
*
* @hide
*/
public static class FastPairManageAccountRequest {
private final FastPairManageAccountRequestParcel mAccountRequestParcel;
private FastPairManageAccountRequest(
final FastPairManageAccountRequestParcel accountRequestParcel) {
this.mAccountRequestParcel = accountRequestParcel;
}
/**
* Get request type: MANAGE_REQUEST_ADD, or MANAGE_REQUEST_REMOVE.
*
* @hide
*/
public @ManageRequestType int getRequestType() {
return this.mAccountRequestParcel.requestType;
}
/**
* Get account.
*
* @hide
*/
public @NonNull Account getAccount() {
return this.mAccountRequestParcel.account;
}
}
/**
* Class for reading FastPairManageAccountDeviceRequest. If the request type is
* MANAGE_REQUEST_ADD, then a Fast Pair device is bounded to a Fast Pair account. If the
* request type is MANAGE_REQUEST_REMOVE, then a Fast Pair device is removed from a Fast Pair
* account.
*
* @hide
*/
public static class FastPairManageAccountDeviceRequest {
private final FastPairManageAccountDeviceRequestParcel mRequestParcel;
private FastPairManageAccountDeviceRequest(
final FastPairManageAccountDeviceRequestParcel requestParcel) {
this.mRequestParcel = requestParcel;
}
/**
* Get request type: MANAGE_REQUEST_ADD, or MANAGE_REQUEST_REMOVE.
*
* @hide
*/
public @ManageRequestType int getRequestType() {
return this.mRequestParcel.requestType;
}
/**
* Get account.
*
* @hide
*/
public @NonNull Account getAccount() {
return this.mRequestParcel.account;
}
/**
* Get account key device metadata.
*
* @hide
*/
public @NonNull FastPairAccountKeyDeviceMetadata getAccountKeyDeviceMetadata() {
return new FastPairAccountKeyDeviceMetadata(
this.mRequestParcel.accountKeyDeviceMetadata);
}
}
/**
* Callback class that sends back FastPairAntispoofKeyDeviceMetadata.
*/
private final class WrapperFastPairAntispoofKeyDeviceMetadataCallback implements
FastPairAntispoofKeyDeviceMetadataCallback {
private IFastPairAntispoofKeyDeviceMetadataCallback mCallback;
private WrapperFastPairAntispoofKeyDeviceMetadataCallback(
IFastPairAntispoofKeyDeviceMetadataCallback callback) {
mCallback = callback;
}
/**
* Sends back FastPairAntispoofKeyDeviceMetadata.
*/
@Override
public void onFastPairAntispoofKeyDeviceMetadataReceived(
@NonNull FastPairAntispoofKeyDeviceMetadata metadata) {
try {
mCallback.onFastPairAntispoofKeyDeviceMetadataReceived(metadata.mMetadataParcel);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
@Override
public void onError(@ErrorCode int code, @Nullable String message) {
try {
mCallback.onError(code, message);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
}
/**
* Callback class that sends back collection of FastPairAccountKeyDeviceMetadata.
*/
private final class WrapperFastPairAccountDevicesMetadataCallback implements
FastPairAccountDevicesMetadataCallback {
private IFastPairAccountDevicesMetadataCallback mCallback;
private WrapperFastPairAccountDevicesMetadataCallback(
IFastPairAccountDevicesMetadataCallback callback) {
mCallback = callback;
}
/**
* Sends back collection of FastPairAccountKeyDeviceMetadata.
*/
@Override
public void onFastPairAccountDevicesMetadataReceived(
@NonNull Collection<FastPairAccountKeyDeviceMetadata> metadatas) {
FastPairAccountKeyDeviceMetadataParcel[] metadataParcels =
new FastPairAccountKeyDeviceMetadataParcel[metadatas.size()];
int i = 0;
for (FastPairAccountKeyDeviceMetadata metadata : metadatas) {
metadataParcels[i] = metadata.mMetadataParcel;
i = i + 1;
}
try {
mCallback.onFastPairAccountDevicesMetadataReceived(metadataParcels);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
@Override
public void onError(@ErrorCode int code, @Nullable String message) {
try {
mCallback.onError(code, message);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
}
/**
* Callback class that sends back eligible Fast Pair accounts.
*/
private final class WrapperFastPairEligibleAccountsCallback implements
FastPairEligibleAccountsCallback {
private IFastPairEligibleAccountsCallback mCallback;
private WrapperFastPairEligibleAccountsCallback(
IFastPairEligibleAccountsCallback callback) {
mCallback = callback;
}
/**
* Sends back the eligible Fast Pair accounts.
*/
@Override
public void onFastPairEligibleAccountsReceived(
@NonNull Collection<FastPairEligibleAccount> accounts) {
int i = 0;
FastPairEligibleAccountParcel[] accountParcels =
new FastPairEligibleAccountParcel[accounts.size()];
for (FastPairEligibleAccount account: accounts) {
accountParcels[i] = account.mAccountParcel;
i = i + 1;
}
try {
mCallback.onFastPairEligibleAccountsReceived(accountParcels);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
@Override
public void onError(@ErrorCode int code, @Nullable String message) {
try {
mCallback.onError(code, message);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
}
/**
* Callback class that sends back Fast Pair account management result.
*/
private final class WrapperFastPairManageAccountCallback implements
FastPairManageActionCallback {
private IFastPairManageAccountCallback mCallback;
private WrapperFastPairManageAccountCallback(
IFastPairManageAccountCallback callback) {
mCallback = callback;
}
/**
* Sends back Fast Pair account opt in result.
*/
@Override
public void onSuccess() {
try {
mCallback.onSuccess();
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
@Override
public void onError(@ErrorCode int code, @Nullable String message) {
try {
mCallback.onError(code, message);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
}
/**
* Call back class that sends back account-device mapping management result.
*/
private final class WrapperFastPairManageAccountDeviceCallback implements
FastPairManageActionCallback {
private IFastPairManageAccountDeviceCallback mCallback;
private WrapperFastPairManageAccountDeviceCallback(
IFastPairManageAccountDeviceCallback callback) {
mCallback = callback;
}
/**
* Sends back the account-device mapping management result.
*/
@Override
public void onSuccess() {
try {
mCallback.onSuccess();
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
@Override
public void onError(@ErrorCode int code, @Nullable String message) {
try {
mCallback.onError(code, message);
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
} catch (RuntimeException e) {
Log.w(mTag, e);
}
}
}
private final class Service extends IFastPairDataProvider.Stub {
Service() {
}
@Override
public void loadFastPairAntispoofKeyDeviceMetadata(
@NonNull FastPairAntispoofKeyDeviceMetadataRequestParcel requestParcel,
IFastPairAntispoofKeyDeviceMetadataCallback callback) {
onLoadFastPairAntispoofKeyDeviceMetadata(
new FastPairAntispoofKeyDeviceMetadataRequest(requestParcel),
new WrapperFastPairAntispoofKeyDeviceMetadataCallback(callback));
}
@Override
public void loadFastPairAccountDevicesMetadata(
@NonNull FastPairAccountDevicesMetadataRequestParcel requestParcel,
IFastPairAccountDevicesMetadataCallback callback) {
onLoadFastPairAccountDevicesMetadata(
new FastPairAccountDevicesMetadataRequest(requestParcel),
new WrapperFastPairAccountDevicesMetadataCallback(callback));
}
@Override
public void loadFastPairEligibleAccounts(
@NonNull FastPairEligibleAccountsRequestParcel requestParcel,
IFastPairEligibleAccountsCallback callback) {
onLoadFastPairEligibleAccounts(new FastPairEligibleAccountsRequest(requestParcel),
new WrapperFastPairEligibleAccountsCallback(callback));
}
@Override
public void manageFastPairAccount(
@NonNull FastPairManageAccountRequestParcel requestParcel,
IFastPairManageAccountCallback callback) {
onManageFastPairAccount(new FastPairManageAccountRequest(requestParcel),
new WrapperFastPairManageAccountCallback(callback));
}
@Override
public void manageFastPairAccountDevice(
@NonNull FastPairManageAccountDeviceRequestParcel requestParcel,
IFastPairManageAccountDeviceCallback callback) {
onManageFastPairAccountDevice(new FastPairManageAccountDeviceRequest(requestParcel),
new WrapperFastPairManageAccountDeviceCallback(callback));
}
}
}

View File

@@ -1,683 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.nearby.aidl.FastPairDeviceMetadataParcel;
/**
* Class for the properties of a given type of Fast Pair device, including images and text.
*
* @hide
*/
public class FastPairDeviceMetadata {
FastPairDeviceMetadataParcel mMetadataParcel;
FastPairDeviceMetadata(
FastPairDeviceMetadataParcel metadataParcel) {
this.mMetadataParcel = metadataParcel;
}
/**
* Get ImageUrl, which will be displayed in notification.
*
* @hide
*/
@Nullable
public String getImageUrl() {
return mMetadataParcel.imageUrl;
}
/**
* Get IntentUri, which will be launched to install companion app.
*
* @hide
*/
@Nullable
public String getIntentUri() {
return mMetadataParcel.intentUri;
}
/**
* Get BLE transmit power, as described in Fast Pair spec, see
* <a href="https://developers.google.com/nearby/fast-pair/spec#transmit_power">Transmit Power</a>
*
* @hide
*/
public int getBleTxPower() {
return mMetadataParcel.bleTxPower;
}
/**
* Get Fast Pair Half Sheet trigger distance in meters.
*
* @hide
*/
public float getTriggerDistance() {
return mMetadataParcel.triggerDistance;
}
/**
* Get Fast Pair device image, which is submitted at device registration time to display on
* notification. It is a 32-bit PNG with dimensions of 512px by 512px.
*
* @return Fast Pair device image in 32-bit PNG with dimensions of 512px by 512px.
* @hide
*/
@Nullable
public byte[] getImage() {
return mMetadataParcel.image;
}
/**
* Get Fast Pair device type.
* DEVICE_TYPE_UNSPECIFIED = 0;
* HEADPHONES = 1;
* TRUE_WIRELESS_HEADPHONES = 7;
* @hide
*/
public int getDeviceType() {
return mMetadataParcel.deviceType;
}
/**
* Get Fast Pair device name. e.g., "Pixel Buds A-Series".
*
* @hide
*/
@Nullable
public String getName() {
return mMetadataParcel.name;
}
/**
* Get true wireless image url for left bud.
*
* @hide
*/
@Nullable
public String getTrueWirelessImageUrlLeftBud() {
return mMetadataParcel.trueWirelessImageUrlLeftBud;
}
/**
* Get true wireless image url for right bud.
*
* @hide
*/
@Nullable
public String getTrueWirelessImageUrlRightBud() {
return mMetadataParcel.trueWirelessImageUrlRightBud;
}
/**
* Get true wireless image url for case.
*
* @hide
*/
@Nullable
public String getTrueWirelessImageUrlCase() {
return mMetadataParcel.trueWirelessImageUrlCase;
}
/**
* Get InitialNotificationDescription, which is a translated string of
* "Tap to pair. Earbuds will be tied to %s" based on locale.
*
* @hide
*/
@Nullable
public String getInitialNotificationDescription() {
return mMetadataParcel.initialNotificationDescription;
}
/**
* Get InitialNotificationDescriptionNoAccount, which is a translated string of
* "Tap to pair with this device" based on locale.
*
* @hide
*/
@Nullable
public String getInitialNotificationDescriptionNoAccount() {
return mMetadataParcel.initialNotificationDescriptionNoAccount;
}
/**
* Get OpenCompanionAppDescription, which is a translated string of
* "Tap to finish setup" based on locale.
*
* @hide
*/
@Nullable
public String getOpenCompanionAppDescription() {
return mMetadataParcel.openCompanionAppDescription;
}
/**
* Get UpdateCompanionAppDescription, which is a translated string of
* "Tap to update device settings and finish setup" based on locale.
*
* @hide
*/
@Nullable
public String getUpdateCompanionAppDescription() {
return mMetadataParcel.updateCompanionAppDescription;
}
/**
* Get DownloadCompanionAppDescription, which is a translated string of
* "Tap to download device app on Google Play and see all features" based on locale.
*
* @hide
*/
@Nullable
public String getDownloadCompanionAppDescription() {
return mMetadataParcel.downloadCompanionAppDescription;
}
/**
* Get UnableToConnectTitle, which is a translated string of
* "Unable to connect" based on locale.
*/
@Nullable
public String getUnableToConnectTitle() {
return mMetadataParcel.unableToConnectTitle;
}
/**
* Get UnableToConnectDescription, which is a translated string of
* "Try manually pairing to the device" based on locale.
*
* @hide
*/
@Nullable
public String getUnableToConnectDescription() {
return mMetadataParcel.unableToConnectDescription;
}
/**
* Get InitialPairingDescription, which is a translated string of
* "%s will appear on devices linked with %s" based on locale.
*
* @hide
*/
@Nullable
public String getInitialPairingDescription() {
return mMetadataParcel.initialPairingDescription;
}
/**
* Get ConnectSuccessCompanionAppInstalled, which is a translated string of
* "Your device is ready to be set up" based on locale.
*
* @hide
*/
@Nullable
public String getConnectSuccessCompanionAppInstalled() {
return mMetadataParcel.connectSuccessCompanionAppInstalled;
}
/**
* Get ConnectSuccessCompanionAppNotInstalled, which is a translated string of
* "Download the device app on Google Play to see all available features" based on locale.
*
* @hide
*/
@Nullable
public String getConnectSuccessCompanionAppNotInstalled() {
return mMetadataParcel.connectSuccessCompanionAppNotInstalled;
}
/**
* Get SubsequentPairingDescription, which is a translated string of
* "Connect %s to this phone" based on locale.
*
* @hide
*/
@Nullable
public String getSubsequentPairingDescription() {
return mMetadataParcel.subsequentPairingDescription;
}
/**
* Get RetroactivePairingDescription, which is a translated string of
* "Save device to %s for faster pairing to your other devices" based on locale.
*
* @hide
*/
@Nullable
public String getRetroactivePairingDescription() {
return mMetadataParcel.retroactivePairingDescription;
}
/**
* Get WaitLaunchCompanionAppDescription, which is a translated string of
* "This will take a few moments" based on locale.
*
* @hide
*/
@Nullable
public String getWaitLaunchCompanionAppDescription() {
return mMetadataParcel.waitLaunchCompanionAppDescription;
}
/**
* Get FailConnectGoToSettingsDescription, which is a translated string of
* "Try manually pairing to the device by going to Settings" based on locale.
*
* @hide
*/
@Nullable
public String getFailConnectGoToSettingsDescription() {
return mMetadataParcel.failConnectGoToSettingsDescription;
}
/**
* Builder used to create FastPairDeviceMetadata.
*
* @hide
*/
public static final class Builder {
private final FastPairDeviceMetadataParcel mBuilderParcel;
/**
* Default constructor of Builder.
*
* @hide
*/
public Builder() {
mBuilderParcel = new FastPairDeviceMetadataParcel();
mBuilderParcel.imageUrl = null;
mBuilderParcel.intentUri = null;
mBuilderParcel.name = null;
mBuilderParcel.bleTxPower = 0;
mBuilderParcel.triggerDistance = 0;
mBuilderParcel.image = null;
mBuilderParcel.deviceType = 0; // DEVICE_TYPE_UNSPECIFIED
mBuilderParcel.trueWirelessImageUrlLeftBud = null;
mBuilderParcel.trueWirelessImageUrlRightBud = null;
mBuilderParcel.trueWirelessImageUrlCase = null;
mBuilderParcel.initialNotificationDescription = null;
mBuilderParcel.initialNotificationDescriptionNoAccount = null;
mBuilderParcel.openCompanionAppDescription = null;
mBuilderParcel.updateCompanionAppDescription = null;
mBuilderParcel.downloadCompanionAppDescription = null;
mBuilderParcel.unableToConnectTitle = null;
mBuilderParcel.unableToConnectDescription = null;
mBuilderParcel.initialPairingDescription = null;
mBuilderParcel.connectSuccessCompanionAppInstalled = null;
mBuilderParcel.connectSuccessCompanionAppNotInstalled = null;
mBuilderParcel.subsequentPairingDescription = null;
mBuilderParcel.retroactivePairingDescription = null;
mBuilderParcel.waitLaunchCompanionAppDescription = null;
mBuilderParcel.failConnectGoToSettingsDescription = null;
}
/**
* Set ImageUlr.
*
* @param imageUrl Image Ulr.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setImageUrl(@Nullable String imageUrl) {
mBuilderParcel.imageUrl = imageUrl;
return this;
}
/**
* Set IntentUri.
*
* @param intentUri Intent uri.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setIntentUri(@Nullable String intentUri) {
mBuilderParcel.intentUri = intentUri;
return this;
}
/**
* Set device name.
*
* @param name Device name.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setName(@Nullable String name) {
mBuilderParcel.name = name;
return this;
}
/**
* Set ble transmission power.
*
* @param bleTxPower Ble transmission power.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setBleTxPower(int bleTxPower) {
mBuilderParcel.bleTxPower = bleTxPower;
return this;
}
/**
* Set trigger distance.
*
* @param triggerDistance Fast Pair trigger distance.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTriggerDistance(float triggerDistance) {
mBuilderParcel.triggerDistance = triggerDistance;
return this;
}
/**
* Set image.
*
* @param image Fast Pair device image, which is submitted at device registration time to
* display on notification. It is a 32-bit PNG with dimensions of
* 512px by 512px.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setImage(@Nullable byte[] image) {
mBuilderParcel.image = image;
return this;
}
/**
* Set device type.
*
* @param deviceType Fast Pair device type.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setDeviceType(int deviceType) {
mBuilderParcel.deviceType = deviceType;
return this;
}
/**
* Set true wireless image url for left bud.
*
* @param trueWirelessImageUrlLeftBud True wireless image url for left bud.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTrueWirelessImageUrlLeftBud(
@Nullable String trueWirelessImageUrlLeftBud) {
mBuilderParcel.trueWirelessImageUrlLeftBud = trueWirelessImageUrlLeftBud;
return this;
}
/**
* Set true wireless image url for right bud.
*
* @param trueWirelessImageUrlRightBud True wireless image url for right bud.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTrueWirelessImageUrlRightBud(
@Nullable String trueWirelessImageUrlRightBud) {
mBuilderParcel.trueWirelessImageUrlRightBud = trueWirelessImageUrlRightBud;
return this;
}
/**
* Set true wireless image url for case.
*
* @param trueWirelessImageUrlCase True wireless image url for case.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTrueWirelessImageUrlCase(@Nullable String trueWirelessImageUrlCase) {
mBuilderParcel.trueWirelessImageUrlCase = trueWirelessImageUrlCase;
return this;
}
/**
* Set InitialNotificationDescription.
*
* @param initialNotificationDescription Initial notification description.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setInitialNotificationDescription(
@Nullable String initialNotificationDescription) {
mBuilderParcel.initialNotificationDescription = initialNotificationDescription;
return this;
}
/**
* Set InitialNotificationDescriptionNoAccount.
*
* @param initialNotificationDescriptionNoAccount Initial notification description when
* account is not present.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setInitialNotificationDescriptionNoAccount(
@Nullable String initialNotificationDescriptionNoAccount) {
mBuilderParcel.initialNotificationDescriptionNoAccount =
initialNotificationDescriptionNoAccount;
return this;
}
/**
* Set OpenCompanionAppDescription.
*
* @param openCompanionAppDescription Description for opening companion app.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setOpenCompanionAppDescription(
@Nullable String openCompanionAppDescription) {
mBuilderParcel.openCompanionAppDescription = openCompanionAppDescription;
return this;
}
/**
* Set UpdateCompanionAppDescription.
*
* @param updateCompanionAppDescription Description for updating companion app.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setUpdateCompanionAppDescription(
@Nullable String updateCompanionAppDescription) {
mBuilderParcel.updateCompanionAppDescription = updateCompanionAppDescription;
return this;
}
/**
* Set DownloadCompanionAppDescription.
*
* @param downloadCompanionAppDescription Description for downloading companion app.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setDownloadCompanionAppDescription(
@Nullable String downloadCompanionAppDescription) {
mBuilderParcel.downloadCompanionAppDescription = downloadCompanionAppDescription;
return this;
}
/**
* Set UnableToConnectTitle.
*
* @param unableToConnectTitle Title when Fast Pair device is unable to be connected to.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setUnableToConnectTitle(@Nullable String unableToConnectTitle) {
mBuilderParcel.unableToConnectTitle = unableToConnectTitle;
return this;
}
/**
* Set UnableToConnectDescription.
*
* @param unableToConnectDescription Description when Fast Pair device is unable to be
* connected to.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setUnableToConnectDescription(
@Nullable String unableToConnectDescription) {
mBuilderParcel.unableToConnectDescription = unableToConnectDescription;
return this;
}
/**
* Set InitialPairingDescription.
*
* @param initialPairingDescription Description for Fast Pair initial pairing.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setInitialPairingDescription(@Nullable String initialPairingDescription) {
mBuilderParcel.initialPairingDescription = initialPairingDescription;
return this;
}
/**
* Set ConnectSuccessCompanionAppInstalled.
*
* @param connectSuccessCompanionAppInstalled Description that let user open the companion
* app.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setConnectSuccessCompanionAppInstalled(
@Nullable String connectSuccessCompanionAppInstalled) {
mBuilderParcel.connectSuccessCompanionAppInstalled =
connectSuccessCompanionAppInstalled;
return this;
}
/**
* Set ConnectSuccessCompanionAppNotInstalled.
*
* @param connectSuccessCompanionAppNotInstalled Description that let user download the
* companion app.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setConnectSuccessCompanionAppNotInstalled(
@Nullable String connectSuccessCompanionAppNotInstalled) {
mBuilderParcel.connectSuccessCompanionAppNotInstalled =
connectSuccessCompanionAppNotInstalled;
return this;
}
/**
* Set SubsequentPairingDescription.
*
* @param subsequentPairingDescription Description that reminds user there is a paired
* device nearby.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setSubsequentPairingDescription(
@Nullable String subsequentPairingDescription) {
mBuilderParcel.subsequentPairingDescription = subsequentPairingDescription;
return this;
}
/**
* Set RetroactivePairingDescription.
*
* @param retroactivePairingDescription Description that reminds users opt in their device.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setRetroactivePairingDescription(
@Nullable String retroactivePairingDescription) {
mBuilderParcel.retroactivePairingDescription = retroactivePairingDescription;
return this;
}
/**
* Set WaitLaunchCompanionAppDescription.
*
* @param waitLaunchCompanionAppDescription Description that indicates companion app is
* about to launch.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setWaitLaunchCompanionAppDescription(
@Nullable String waitLaunchCompanionAppDescription) {
mBuilderParcel.waitLaunchCompanionAppDescription =
waitLaunchCompanionAppDescription;
return this;
}
/**
* Set FailConnectGoToSettingsDescription.
*
* @param failConnectGoToSettingsDescription Description that indicates go to bluetooth
* settings when connection fail.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setFailConnectGoToSettingsDescription(
@Nullable String failConnectGoToSettingsDescription) {
mBuilderParcel.failConnectGoToSettingsDescription =
failConnectGoToSettingsDescription;
return this;
}
/**
* Build {@link FastPairDeviceMetadata} with the currently set configuration.
*
* @hide
*/
@NonNull
public FastPairDeviceMetadata build() {
return new FastPairDeviceMetadata(mBuilderParcel);
}
}
}

View File

@@ -1,529 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.nearby.aidl.FastPairDiscoveryItemParcel;
/**
* Class for FastPairDiscoveryItem and its builder.
*
* @hide
*/
public class FastPairDiscoveryItem {
FastPairDiscoveryItemParcel mMetadataParcel;
FastPairDiscoveryItem(
FastPairDiscoveryItemParcel metadataParcel) {
this.mMetadataParcel = metadataParcel;
}
/**
* Get Id.
*
* @hide
*/
@Nullable
public String getId() {
return mMetadataParcel.id;
}
/**
* Get MacAddress.
*
* @hide
*/
@Nullable
public String getMacAddress() {
return mMetadataParcel.macAddress;
}
/**
* Get ActionUrl.
*
* @hide
*/
@Nullable
public String getActionUrl() {
return mMetadataParcel.actionUrl;
}
/**
* Get DeviceName.
*
* @hide
*/
@Nullable
public String getDeviceName() {
return mMetadataParcel.deviceName;
}
/**
* Get Title.
*
* @hide
*/
@Nullable
public String getTitle() {
return mMetadataParcel.title;
}
/**
* Get Description.
*
* @hide
*/
@Nullable
public String getDescription() {
return mMetadataParcel.description;
}
/**
* Get DisplayUrl.
*
* @hide
*/
@Nullable
public String getDisplayUrl() {
return mMetadataParcel.displayUrl;
}
/**
* Get LastObservationTimestampMillis.
*
* @hide
*/
public long getLastObservationTimestampMillis() {
return mMetadataParcel.lastObservationTimestampMillis;
}
/**
* Get FirstObservationTimestampMillis.
*
* @hide
*/
public long getFirstObservationTimestampMillis() {
return mMetadataParcel.firstObservationTimestampMillis;
}
/**
* Get State.
*
* @hide
*/
public int getState() {
return mMetadataParcel.state;
}
/**
* Get ActionUrlType.
*
* @hide
*/
public int getActionUrlType() {
return mMetadataParcel.actionUrlType;
}
/**
* Get Rssi.
*
* @hide
*/
public int getRssi() {
return mMetadataParcel.rssi;
}
/**
* Get PendingAppInstallTimestampMillis.
*
* @hide
*/
public long getPendingAppInstallTimestampMillis() {
return mMetadataParcel.pendingAppInstallTimestampMillis;
}
/**
* Get TxPower.
*
* @hide
*/
public int getTxPower() {
return mMetadataParcel.txPower;
}
/**
* Get AppName.
*
* @hide
*/
@Nullable
public String getAppName() {
return mMetadataParcel.appName;
}
/**
* Get PackageName.
*
* @hide
*/
@Nullable
public String getPackageName() {
return mMetadataParcel.packageName;
}
/**
* Get TriggerId.
*
* @hide
*/
@Nullable
public String getTriggerId() {
return mMetadataParcel.triggerId;
}
/**
* Get IconPng, which is submitted at device registration time to display on notification. It is
* a 32-bit PNG with dimensions of 512px by 512px.
*
* @return IconPng in 32-bit PNG with dimensions of 512px by 512px.
* @hide
*/
@Nullable
public byte[] getIconPng() {
return mMetadataParcel.iconPng;
}
/**
* Get IconFifeUrl.
*
* @hide
*/
@Nullable
public String getIconFfeUrl() {
return mMetadataParcel.iconFifeUrl;
}
/**
* Get authenticationPublicKeySecp256r1, which is same as AntiSpoof public key, see
* <a href="https://developers.google.com/nearby/fast-pair/spec#data_format">Data Format</a>.
*
* @return 64-byte authenticationPublicKeySecp256r1.
* @hide
*/
@Nullable
public byte[] getAuthenticationPublicKeySecp256r1() {
return mMetadataParcel.authenticationPublicKeySecp256r1;
}
/**
* Builder used to create FastPairDiscoveryItem.
*
* @hide
*/
public static final class Builder {
private final FastPairDiscoveryItemParcel mBuilderParcel;
/**
* Default constructor of Builder.
*
* @hide
*/
public Builder() {
mBuilderParcel = new FastPairDiscoveryItemParcel();
}
/**
* Set Id.
*
* @param id Unique id.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
*
* @hide
*/
@NonNull
public Builder setId(@Nullable String id) {
mBuilderParcel.id = id;
return this;
}
/**
* Set MacAddress.
*
* @param macAddress Fast Pair device rotating mac address.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setMacAddress(@Nullable String macAddress) {
mBuilderParcel.macAddress = macAddress;
return this;
}
/**
* Set ActionUrl.
*
* @param actionUrl Action Url of Fast Pair device.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setActionUrl(@Nullable String actionUrl) {
mBuilderParcel.actionUrl = actionUrl;
return this;
}
/**
* Set DeviceName.
* @param deviceName Fast Pair device name.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setDeviceName(@Nullable String deviceName) {
mBuilderParcel.deviceName = deviceName;
return this;
}
/**
* Set Title.
*
* @param title Title of Fast Pair device.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTitle(@Nullable String title) {
mBuilderParcel.title = title;
return this;
}
/**
* Set Description.
*
* @param description Description of Fast Pair device.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setDescription(@Nullable String description) {
mBuilderParcel.description = description;
return this;
}
/**
* Set DisplayUrl.
*
* @param displayUrl Display Url of Fast Pair device.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setDisplayUrl(@Nullable String displayUrl) {
mBuilderParcel.displayUrl = displayUrl;
return this;
}
/**
* Set LastObservationTimestampMillis.
*
* @param lastObservationTimestampMillis Last observed timestamp of Fast Pair device, keyed
* by a rotating id.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setLastObservationTimestampMillis(
long lastObservationTimestampMillis) {
mBuilderParcel.lastObservationTimestampMillis = lastObservationTimestampMillis;
return this;
}
/**
* Set FirstObservationTimestampMillis.
*
* @param firstObservationTimestampMillis First observed timestamp of Fast Pair device,
* keyed by a rotating id.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setFirstObservationTimestampMillis(
long firstObservationTimestampMillis) {
mBuilderParcel.firstObservationTimestampMillis = firstObservationTimestampMillis;
return this;
}
/**
* Set State.
*
* @param state Item's current state. e.g. if the item is blocked.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setState(int state) {
mBuilderParcel.state = state;
return this;
}
/**
* Set ActionUrlType.
*
* @param actionUrlType The resolved url type for the action_url.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setActionUrlType(int actionUrlType) {
mBuilderParcel.actionUrlType = actionUrlType;
return this;
}
/**
* Set Rssi.
*
* @param rssi Beacon's RSSI value.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setRssi(int rssi) {
mBuilderParcel.rssi = rssi;
return this;
}
/**
* Set PendingAppInstallTimestampMillis.
*
* @param pendingAppInstallTimestampMillis The timestamp when the user is redirected to App
* Store after clicking on the item.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setPendingAppInstallTimestampMillis(long pendingAppInstallTimestampMillis) {
mBuilderParcel.pendingAppInstallTimestampMillis = pendingAppInstallTimestampMillis;
return this;
}
/**
* Set TxPower.
*
* @param txPower Beacon's tx power.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTxPower(int txPower) {
mBuilderParcel.txPower = txPower;
return this;
}
/**
* Set AppName.
*
* @param appName Human readable name of the app designated to open the uri.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setAppName(@Nullable String appName) {
mBuilderParcel.appName = appName;
return this;
}
/**
* Set PackageName.
*
* @param packageName Package name of the App that owns this item.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setPackageName(@Nullable String packageName) {
mBuilderParcel.packageName = packageName;
return this;
}
/**
* Set TriggerId.
*
* @param triggerId TriggerId identifies the trigger/beacon that is attached with a message.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setTriggerId(@Nullable String triggerId) {
mBuilderParcel.triggerId = triggerId;
return this;
}
/**
* Set IconPng.
*
* @param iconPng Bytes of item icon in PNG format displayed in Discovery item list.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setIconPng(@Nullable byte[] iconPng) {
mBuilderParcel.iconPng = iconPng;
return this;
}
/**
* Set IconFifeUrl.
*
* @param iconFifeUrl A FIFE URL of the item icon displayed in Discovery item list.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setIconFfeUrl(@Nullable String iconFifeUrl) {
mBuilderParcel.iconFifeUrl = iconFifeUrl;
return this;
}
/**
* Set authenticationPublicKeySecp256r1, which is same as AntiSpoof public key, see
* <a href="https://developers.google.com/nearby/fast-pair/spec#data_format">Data Format</a>
*
* @param authenticationPublicKeySecp256r1 64-byte Fast Pair device public key.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setAuthenticationPublicKeySecp256r1(
@Nullable byte[] authenticationPublicKeySecp256r1) {
mBuilderParcel.authenticationPublicKeySecp256r1 = authenticationPublicKeySecp256r1;
return this;
}
/**
* Build {@link FastPairDiscoveryItem} with the currently set configuration.
*
* @hide
*/
@NonNull
public FastPairDiscoveryItem build() {
return new FastPairDiscoveryItem(mBuilderParcel);
}
}
}

View File

@@ -1,112 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.accounts.Account;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.nearby.aidl.FastPairEligibleAccountParcel;
/**
* Class for FastPairEligibleAccount and its builder.
*
* @hide
*/
public class FastPairEligibleAccount {
FastPairEligibleAccountParcel mAccountParcel;
FastPairEligibleAccount(FastPairEligibleAccountParcel accountParcel) {
this.mAccountParcel = accountParcel;
}
/**
* Get Account.
*
* @hide
*/
@Nullable
public Account getAccount() {
return this.mAccountParcel.account;
}
/**
* Get OptIn Status.
*
* @hide
*/
public boolean isOptIn() {
return this.mAccountParcel.optIn;
}
/**
* Builder used to create FastPairEligibleAccount.
*
* @hide
*/
public static final class Builder {
private final FastPairEligibleAccountParcel mBuilderParcel;
/**
* Default constructor of Builder.
*
* @hide
*/
public Builder() {
mBuilderParcel = new FastPairEligibleAccountParcel();
mBuilderParcel.account = null;
mBuilderParcel.optIn = false;
}
/**
* Set Account.
*
* @param account Fast Pair eligible account.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setAccount(@Nullable Account account) {
mBuilderParcel.account = account;
return this;
}
/**
* Set whether the account is opt into Fast Pair.
*
* @param optIn Whether the Fast Pair eligible account opts into Fast Pair.
* @return The builder, to facilitate chaining {@code builder.setXXX(..).setXXX(..)}.
* @hide
*/
@NonNull
public Builder setOptIn(boolean optIn) {
mBuilderParcel.optIn = optIn;
return this;
}
/**
* Build {@link FastPairEligibleAccount} with the currently set configuration.
*
* @hide
*/
@NonNull
public FastPairEligibleAccount build() {
return new FastPairEligibleAccount(mBuilderParcel);
}
}
}

View File

@@ -1,30 +0,0 @@
/*
* Copyright (C) 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.annotation.NonNull;
/**
* Reports the pair status for an ongoing pair with a {@link FastPairDevice}.
* @hide
*/
public interface FastPairStatusCallback {
/** Reports a pair status related metadata associated with a {@link FastPairDevice} */
void onPairUpdate(@NonNull FastPairDevice fastPairDevice,
PairStatusMetadata pairStatusMetadata);
}

View File

@@ -1,25 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby;
import android.content.Intent;
/**
* Provides callback interface for halfsheet to send FastPair call back.
*
* {@hide}
*/
interface IFastPairHalfSheetCallback {
void onHalfSheetConnectionConfirm(in Intent intent);
}

View File

@@ -1,24 +0,0 @@
/*
* Copyright (C) 2022, The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
/**
* Metadata about an ongoing paring. Wraps transient data like status and progress.
*
* @hide
*/
parcelable PairStatusMetadata;

View File

@@ -1,117 +0,0 @@
/*
* Copyright (C) 2022 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby;
import android.annotation.IntDef;
import android.annotation.NonNull;
import android.os.Parcel;
import android.os.Parcelable;
import java.util.Objects;
/**
* Metadata about an ongoing paring. Wraps transient data like status and progress.
*
* @hide
*/
public final class PairStatusMetadata implements Parcelable {
@Status
private final int mStatus;
/** The status of the pairing. */
@IntDef({
Status.UNKNOWN,
Status.SUCCESS,
Status.FAIL,
Status.DISMISS
})
public @interface Status {
int UNKNOWN = 1000;
int SUCCESS = 1001;
int FAIL = 1002;
int DISMISS = 1003;
}
/** Converts the status to readable string. */
public static String statusToString(@Status int status) {
switch (status) {
case Status.SUCCESS:
return "SUCCESS";
case Status.FAIL:
return "FAIL";
case Status.DISMISS:
return "DISMISS";
case Status.UNKNOWN:
default:
return "UNKNOWN";
}
}
public int getStatus() {
return mStatus;
}
@Override
public String toString() {
return "PairStatusMetadata[ status=" + statusToString(mStatus) + "]";
}
@Override
public boolean equals(Object other) {
if (other instanceof PairStatusMetadata) {
return mStatus == ((PairStatusMetadata) other).mStatus;
}
return false;
}
@Override
public int hashCode() {
return Objects.hash(mStatus);
}
public PairStatusMetadata(@Status int status) {
mStatus = status;
}
public static final Creator<PairStatusMetadata> CREATOR = new Creator<PairStatusMetadata>() {
@Override
public PairStatusMetadata createFromParcel(Parcel in) {
return new PairStatusMetadata(in.readInt());
}
@Override
public PairStatusMetadata[] newArray(int size) {
return new PairStatusMetadata[size];
}
};
@Override
public int describeContents() {
return 0;
}
@Override
public int getStability() {
return 0;
}
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
dest.writeInt(mStatus);
}
}

View File

@@ -1,25 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
/**
* This is to support 2D byte arrays.
* {@hide}
*/
parcelable ByteArrayParcel {
byte[] byteArray;
}

View File

@@ -1,29 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
import android.accounts.Account;
import android.nearby.aidl.ByteArrayParcel;
/**
* Request details for Metadata of Fast Pair devices associated with an account.
* {@hide}
*/
parcelable FastPairAccountDevicesMetadataRequestParcel {
Account account;
ByteArrayParcel[] deviceAccountKeys;
}

View File

@@ -1,35 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
import android.nearby.aidl.FastPairDeviceMetadataParcel;
import android.nearby.aidl.FastPairDiscoveryItemParcel;
/**
* Metadata of a Fast Pair device associated with an account.
* {@hide}
*/
// TODO(b/204780849): remove unnecessary fields and polish comments.
parcelable FastPairAccountKeyDeviceMetadataParcel {
// Key of the Fast Pair device associated with the account.
byte[] deviceAccountKey;
// Hash function of device account key and public bluetooth address.
byte[] sha256DeviceAccountKeyPublicAddress;
// Fast Pair device metadata for the Fast Pair device.
FastPairDeviceMetadataParcel metadata;
// Fast Pair discovery item tied to both the Fast Pair device and the
// account.
FastPairDiscoveryItemParcel discoveryItem;
}

View File

@@ -1,31 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
import android.nearby.aidl.FastPairDeviceMetadataParcel;
/**
* Metadata of a Fast Pair device keyed by AntispoofKey,
* Used by initial pairing without account association.
*
* {@hide}
*/
parcelable FastPairAntispoofKeyDeviceMetadataParcel {
// Anti-spoof public key.
byte[] antispoofPublicKey;
// Fast Pair device metadata for the Fast Pair device.
FastPairDeviceMetadataParcel deviceMetadata;
}

View File

@@ -1,26 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
/**
* Request details for metadata of a Fast Pair device keyed by either
* antispoofKey or modelId.
* {@hide}
*/
parcelable FastPairAntispoofKeyDeviceMetadataRequestParcel {
byte[] modelId;
}

View File

@@ -1,99 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
/**
* Fast Pair Device Metadata for a given device model ID.
* @hide
*/
// TODO(b/204780849): remove unnecessary fields and polish comments.
parcelable FastPairDeviceMetadataParcel {
// The image to show on the notification.
String imageUrl;
// The intent that will be launched via the notification.
String intentUri;
// The transmit power of the device's BLE chip.
int bleTxPower;
// The distance that the device must be within to show a notification.
// If no distance is set, we default to 0.6 meters. Only Nearby admins can
// change this.
float triggerDistance;
// The image icon that shows in the notification.
byte[] image;
// The name of the device.
String name;
int deviceType;
// The image urls for device with device type "true wireless".
String trueWirelessImageUrlLeftBud;
String trueWirelessImageUrlRightBud;
String trueWirelessImageUrlCase;
// The notification description for when the device is initially discovered.
String initialNotificationDescription;
// The notification description for when the device is initially discovered
// and no account is logged in.
String initialNotificationDescriptionNoAccount;
// The notification description for once we have finished pairing and the
// companion app has been opened. For Bisto devices, this String will point
// users to setting up the assistant.
String openCompanionAppDescription;
// The notification description for once we have finished pairing and the
// companion app needs to be updated before use.
String updateCompanionAppDescription;
// The notification description for once we have finished pairing and the
// companion app needs to be installed.
String downloadCompanionAppDescription;
// The notification title when a pairing fails.
String unableToConnectTitle;
// The notification summary when a pairing fails.
String unableToConnectDescription;
// The description that helps user initially paired with device.
String initialPairingDescription;
// The description that let user open the companion app.
String connectSuccessCompanionAppInstalled;
// The description that let user download the companion app.
String connectSuccessCompanionAppNotInstalled;
// The description that reminds user there is a paired device nearby.
String subsequentPairingDescription;
// The description that reminds users opt in their device.
String retroactivePairingDescription;
// The description that indicates companion app is about to launch.
String waitLaunchCompanionAppDescription;
// The description that indicates go to bluetooth settings when connection
// fail.
String failConnectGoToSettingsDescription;
}

View File

@@ -1,93 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
/**
* Fast Pair Discovery Item.
* @hide
*/
// TODO(b/204780849): remove unnecessary fields and polish comments.
parcelable FastPairDiscoveryItemParcel {
// Offline item: unique ID generated on client.
// Online item: unique ID generated on server.
String id;
// The most recent all upper case mac associated with this item.
// (Mac-to-DiscoveryItem is a many-to-many relationship)
String macAddress;
String actionUrl;
// The bluetooth device name from advertisement
String deviceName;
// Item's title
String title;
// Item's description.
String description;
// The URL for display
String displayUrl;
// Client timestamp when the beacon was last observed in BLE scan.
long lastObservationTimestampMillis;
// Client timestamp when the beacon was first observed in BLE scan.
long firstObservationTimestampMillis;
// Item's current state. e.g. if the item is blocked.
int state;
// The resolved url type for the action_url.
int actionUrlType;
// The timestamp when the user is redirected to Play Store after clicking on
// the item.
long pendingAppInstallTimestampMillis;
// Beacon's RSSI value
int rssi;
// Beacon's tx power
int txPower;
// Human readable name of the app designated to open the uri
// Used in the second line of the notification, "Open in {} app"
String appName;
// Package name of the App that owns this item.
String packageName;
// TriggerId identifies the trigger/beacon that is attached with a message.
// It's generated from server for online messages to synchronize formatting
// across client versions.
// Example:
// * BLE_UID: 3||deadbeef
// * BLE_URL: http://trigger.id
// See go/discovery-store-message-and-trigger-id for more details.
String triggerId;
// Bytes of item icon in PNG format displayed in Discovery item list.
byte[] iconPng;
// A FIFE URL of the item icon displayed in Discovery item list.
String iconFifeUrl;
// Fast Pair antispoof key.
byte[] authenticationPublicKeySecp256r1;
}

View File

@@ -1,29 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
import android.accounts.Account;
/**
* Fast Pair Eligible Account.
* {@hide}
*/
parcelable FastPairEligibleAccountParcel {
Account account;
// Whether the account opts in Fast Pair.
boolean optIn;
}

View File

@@ -1,25 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
/**
* Request details for Fast Pair eligible accounts.
* Empty place holder for future expansion.
* {@hide}
*/
parcelable FastPairEligibleAccountsRequestParcel {
}

View File

@@ -1,34 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
import android.accounts.Account;
import android.nearby.aidl.FastPairAccountKeyDeviceMetadataParcel;
/**
* Request details for managing Fast Pair device-account mapping.
* {@hide}
*/
// TODO(b/204780849): remove unnecessary fields and polish comments.
parcelable FastPairManageAccountDeviceRequestParcel {
Account account;
// MANAGE_ACCOUNT_DEVICE_ADD: add Fast Pair device to the account.
// MANAGE_ACCOUNT_DEVICE_REMOVE: remove Fast Pair device from the account.
int requestType;
// Fast Pair account key-ed device metadata.
FastPairAccountKeyDeviceMetadataParcel accountKeyDeviceMetadata;
}

View File

@@ -1,31 +0,0 @@
/*
* Copyright (C) 2021 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
import android.accounts.Account;
/**
* Request details for managing a Fast Pair account.
*
* {@hide}
*/
parcelable FastPairManageAccountRequestParcel {
Account account;
// MANAGE_ACCOUNT_OPT_IN: opt account into Fast Pair.
// MANAGE_ACCOUNT_OPT_OUT: opt account out of Fast Pair.
int requestType;
}

View File

@@ -1,28 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
import android.nearby.aidl.FastPairAccountKeyDeviceMetadataParcel;
/**
* Provides callback interface for OEMs to send back metadata of FastPair
* devices associated with an account.
*
* {@hide}
*/
interface IFastPairAccountDevicesMetadataCallback {
void onFastPairAccountDevicesMetadataReceived(in FastPairAccountKeyDeviceMetadataParcel[] accountDevicesMetadata);
void onError(int code, String message);
}

View File

@@ -1,27 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
import android.nearby.aidl.FastPairAntispoofKeyDeviceMetadataParcel;
/**
* Provides callback interface for OEMs to send FastPair AntispoofKey Device metadata back.
*
* {@hide}
*/
interface IFastPairAntispoofKeyDeviceMetadataCallback {
void onFastPairAntispoofKeyDeviceMetadataReceived(in FastPairAntispoofKeyDeviceMetadataParcel metadata);
void onError(int code, String message);
}

View File

@@ -1,44 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
import android.nearby.aidl.FastPairAntispoofKeyDeviceMetadataRequestParcel;
import android.nearby.aidl.IFastPairAntispoofKeyDeviceMetadataCallback;
import android.nearby.aidl.FastPairAccountDevicesMetadataRequestParcel;
import android.nearby.aidl.IFastPairAccountDevicesMetadataCallback;
import android.nearby.aidl.FastPairEligibleAccountsRequestParcel;
import android.nearby.aidl.IFastPairEligibleAccountsCallback;
import android.nearby.aidl.FastPairManageAccountRequestParcel;
import android.nearby.aidl.IFastPairManageAccountCallback;
import android.nearby.aidl.FastPairManageAccountDeviceRequestParcel;
import android.nearby.aidl.IFastPairManageAccountDeviceCallback;
/**
* Interface for communicating with the fast pair providers.
*
* {@hide}
*/
oneway interface IFastPairDataProvider {
void loadFastPairAntispoofKeyDeviceMetadata(in FastPairAntispoofKeyDeviceMetadataRequestParcel request,
in IFastPairAntispoofKeyDeviceMetadataCallback callback);
void loadFastPairAccountDevicesMetadata(in FastPairAccountDevicesMetadataRequestParcel request,
in IFastPairAccountDevicesMetadataCallback callback);
void loadFastPairEligibleAccounts(in FastPairEligibleAccountsRequestParcel request,
in IFastPairEligibleAccountsCallback callback);
void manageFastPairAccount(in FastPairManageAccountRequestParcel request,
in IFastPairManageAccountCallback callback);
void manageFastPairAccountDevice(in FastPairManageAccountDeviceRequestParcel request,
in IFastPairManageAccountDeviceCallback callback);
}

View File

@@ -1,28 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
import android.accounts.Account;
import android.nearby.aidl.FastPairEligibleAccountParcel;
/**
* Provides callback interface for OEMs to return FastPair Eligible accounts.
*
* {@hide}
*/
interface IFastPairEligibleAccountsCallback {
void onFastPairEligibleAccountsReceived(in FastPairEligibleAccountParcel[] accounts);
void onError(int code, String message);
}

View File

@@ -1,25 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
/**
* Provides callback interface to send response for account management request.
*
* {@hide}
*/
interface IFastPairManageAccountCallback {
void onSuccess();
void onError(int code, String message);
}

View File

@@ -1,26 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package android.nearby.aidl;
/**
* Provides callback interface to send response for account-device mapping
* management request.
*
* {@hide}
*/
interface IFastPairManageAccountDeviceCallback {
void onSuccess();
void onError(int code, String message);
}

View File

@@ -1,32 +0,0 @@
/*
* Copyright (C) 2022, The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
import android.nearby.FastPairDevice;
import android.nearby.PairStatusMetadata;
/**
*
* Provides callbacks for Fast Pair foreground activity to learn about paring status from backend.
*
* {@hide}
*/
interface IFastPairStatusCallback {
/** Reports a pair status related metadata associated with a {@link FastPairDevice} */
void onPairUpdate(in FastPairDevice fastPairDevice, in PairStatusMetadata pairStatusMetadata);
}

View File

@@ -1,37 +0,0 @@
/*
* Copyright (C) 2022, The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package android.nearby.aidl;
import android.nearby.aidl.IFastPairStatusCallback;
import android.nearby.FastPairDevice;
/**
* 0p API for controlling Fast Pair. Used to talk between foreground activities
* and background services.
*
* {@hide}
*/
interface IFastPairUiService {
void registerCallback(in IFastPairStatusCallback fastPairStatusCallback);
void unregisterCallback(in IFastPairStatusCallback fastPairStatusCallback);
void connect(in FastPairDevice fastPairDevice);
void cancel(in FastPairDevice fastPairDevice);
}

View File

@@ -1,55 +0,0 @@
// Copyright (C) 2021 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
android_app {
name: "HalfSheetUX",
defaults: ["platform_app_defaults"],
srcs: ["src/**/*.java"],
sdk_version: "module_current",
// This is included in tethering apex, which uses min SDK 30
min_sdk_version: "30",
updatable: true,
certificate: ":com.android.nearby.halfsheetcertificate",
libs: [
"framework-bluetooth",
"framework-connectivity-t.impl",
"nearby-service-string",
],
static_libs: [
"androidx.annotation_annotation",
"androidx.fragment_fragment",
"androidx-constraintlayout_constraintlayout",
"androidx.localbroadcastmanager_localbroadcastmanager",
"androidx.core_core",
"androidx.appcompat_appcompat",
"androidx.recyclerview_recyclerview",
"androidx.lifecycle_lifecycle-runtime",
"androidx.lifecycle_lifecycle-extensions",
"com.google.android.material_material",
"fast-pair-lite-protos",
],
manifest: "AndroidManifest.xml",
jarjar_rules: ":nearby-jarjar-rules",
apex_available: ["com.android.tethering",],
lint: { strict_updatability_linting: true }
}
android_app_certificate {
name: "com.android.nearby.halfsheetcertificate",
certificate: "apk-certs/com.android.nearby.halfsheet"
}

View File

@@ -1,31 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.nearby.halfsheet">
<application>
<activity
android:name="com.android.nearby.halfsheet.HalfSheetActivity"
android:exported="true"
android:launchMode="singleInstance"
android:theme="@style/HalfSheetStyle" >
<intent-filter>
<action android:name="android.nearby.SHOW_HALFSHEET"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
</application>
</manifest>

View File

@@ -1,34 +0,0 @@
-----BEGIN CERTIFICATE-----
MIIF6zCCA9OgAwIBAgIUU5ATKevcNA5ZSurwgwGenwrr4c4wDQYJKoZIhvcNAQEL
BQAwgYMxCzAJBgNVBAYTAlVTMRMwEQYDVQQIDApDYWxpZm9ybmlhMQwwCgYDVQQH
DANNVFYxDzANBgNVBAoMBkdvb2dsZTEPMA0GA1UECwwGbmVhcmJ5MQswCQYDVQQD
DAJ3czEiMCAGCSqGSIb3DQEJARYTd2VpY2VzdW5AZ29vZ2xlLmNvbTAgFw0yMTEy
MDgwMTMxMzFaGA80NzU5MTEwNDAxMzEzMVowgYMxCzAJBgNVBAYTAlVTMRMwEQYD
VQQIDApDYWxpZm9ybmlhMQwwCgYDVQQHDANNVFYxDzANBgNVBAoMBkdvb2dsZTEP
MA0GA1UECwwGbmVhcmJ5MQswCQYDVQQDDAJ3czEiMCAGCSqGSIb3DQEJARYTd2Vp
Y2VzdW5AZ29vZ2xlLmNvbTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIB
AO0JW1YZ5bKHZG5B9eputz3kGREmXcWZ97dg/ODDs3+op4ulBmgaYeo5yeCy29GI
Sjgxo4G+9fNZ7Fejrk5/LLWovAoRvVxnkRxCkTfp15jZpKNnZjT2iTRLXzNz2O04
cC0jB81mu5vJ9a8pt+EQkuSwjDMiUi6q4Sf6IRxtTCd5a1yn9eHf1y2BbCmU+Eys
bs97HJl9PgMCp7hP+dYDxEtNTAESg5IpJ1i7uINgPNl8d0tvJ9rOEdy0IcdeGwt/
t0L9fIoRCePttH+idKIyDjcNyp9WtX2/wZKlsGap83rGzLdL2PI4DYJ2Ytmy8W3a
9qFJNrhl3Q3BYgPlcCg9qQOIKq6ZJgFFH3snVDKvtSFd8b9ofK7UzD5g2SllTqDA
4YvrdK4GETQunSjG7AC/2PpvN/FdhHm7pBi0fkgwykMh35gv0h8mmb6pBISYgr85
+GMBilNiNJ4G6j3cdOa72pvfDW5qn5dn5ks8cIgW2X1uF/GT8rR6Mb2rwhjY9eXk
TaP0RykyzheMY/7dWeA/PdN3uMCEJEt72ZakDIswgQVPCIw8KQPIf6pl0d5hcLSV
QzhqBaXudseVg0QlZ86iaobpZvCrW0KqQmMU5GVhEtDc2sPe5e+TCmUC/H+vo8F8
1UYu3MJaBcpePFlgIsLhW0niUTfCq2FiNrPykOJT7U9NAgMBAAGjUzBRMB0GA1Ud
DgQWBBQKSepRcKTv9hr8mmKjYCL7NeG2izAfBgNVHSMEGDAWgBQKSepRcKTv9hr8
mmKjYCL7NeG2izAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUAA4ICAQC/
BoItafzvjYPzENY16BIkgRqJVU7IosWxGLczzg19NFu6HPa54alqkawp7RI1ZNVH
bJjQma5ap0L+Y06/peIU9rvEtfbCkkYJwvIaSRlTlzrNwNEcj3yJMmGTr/wfIzq8
PN1t0hihnqI8ZguOPC+sV6ARoC+ygkwaLU1oPbVvOGz9WplvSokE1mvtqKAyuDoL
LZfWwbhxRAgwgCIEz6cPfEcgg3Xzc+L4OzmNhTTc7GNOAtvvW7Zqc2Lohb8nQMNw
uY65yiHPNmjmc+xLHZk3jQg82tKv792JJRkVXPsIfQV087IzxFFjjvKy82rVfeaN
F9g2EpUvdjtm8zx7K5tiDv9Es/Up7oOnoB5baLgnMAEVMTZY+4k/6BfVM5CVUu+H
AO1yh2yeNWbzY8B+zxRef3C2Ax68lJHFyz8J1pfrGpWxML3rDmWiVDMtEk73t3g+
lcyLYo7OW+iBn6BODRcINO4R640oyMjFz2wPSPAsU0Zj/MbgC6iaS+goS3QnyPQS
O3hKWfwqQuA7BZ0la1n+plKH5PKxQESAbd37arzCsgQuktl33ONiwYOt6eUyHl/S
E3ZdldkmGm9z0mcBYG9NczDBSYmtuZOGjEzIRqI5GFD2WixE+dqTzVP/kyBd4BLc
OTmBynN/8D/qdUZNrT+tgs+mH/I2SsKYW9Zymwf7Qw==
-----END CERTIFICATE-----

View File

@@ -1,52 +0,0 @@
-----BEGIN PRIVATE KEY-----
MIIJQgIBADANBgkqhkiG9w0BAQEFAASCCSwwggkoAgEAAoICAQDtCVtWGeWyh2Ru
QfXqbrc95BkRJl3Fmfe3YPzgw7N/qKeLpQZoGmHqOcngstvRiEo4MaOBvvXzWexX
o65Ofyy1qLwKEb1cZ5EcQpE36deY2aSjZ2Y09ok0S18zc9jtOHAtIwfNZrubyfWv
KbfhEJLksIwzIlIuquEn+iEcbUwneWtcp/Xh39ctgWwplPhMrG7PexyZfT4DAqe4
T/nWA8RLTUwBEoOSKSdYu7iDYDzZfHdLbyfazhHctCHHXhsLf7dC/XyKEQnj7bR/
onSiMg43DcqfVrV9v8GSpbBmqfN6xsy3S9jyOA2CdmLZsvFt2vahSTa4Zd0NwWID
5XAoPakDiCqumSYBRR97J1Qyr7UhXfG/aHyu1Mw+YNkpZU6gwOGL63SuBhE0Lp0o
xuwAv9j6bzfxXYR5u6QYtH5IMMpDId+YL9IfJpm+qQSEmIK/OfhjAYpTYjSeBuo9
3HTmu9qb3w1uap+XZ+ZLPHCIFtl9bhfxk/K0ejG9q8IY2PXl5E2j9EcpMs4XjGP+
3VngPz3Td7jAhCRLe9mWpAyLMIEFTwiMPCkDyH+qZdHeYXC0lUM4agWl7nbHlYNE
JWfOomqG6Wbwq1tCqkJjFORlYRLQ3NrD3uXvkwplAvx/r6PBfNVGLtzCWgXKXjxZ
YCLC4VtJ4lE3wqthYjaz8pDiU+1PTQIDAQABAoICAQCt4R5CM+8enlka1IIbvann
2cpVnUpOaNqhh6EZFBY5gDOfqafgd/H5yvh/P1UnCI5BWJBz3ew33nAT/fsglAPt
ImEGFetNvJ9jFqXGWWCRPJ6cS35bPbp6RQwKB2JK6grH4ZmYoFLhPi5elwDPNcQ7
xBKkc/nLSAiwtbjSTI7/qf8K0h752aTUOctpWWEnhZon00ywf4Ic3TbBatF/n/W/
s20coEMp1cyKN/JrVQ5uD/LGwDyBModB2lWpFSxLrB14I9DWyxbxP28X7ckXLhbl
ZdWMOyQZoa/S7n5PYT49g1Wq5BW54UpvuH5c6fpWtrgSqk1cyUR2EbTf3NAAhPLU
PgPK8wbFMcMB3TpQDXl7USA7QX5wSv22OfhivPsHQ9szGM0f84mK0PhXYPWBiNUY
Y8rrIjOijB4eFGDFnTIMTofAb07NxRThci710BYUqgBVTBG5N+avIesjwkikMjOI
PwYukKSQSw/Tqxy5Z9l22xksGynBZFjEFs/WT5pDczPAktA4xW3CGxjkMsIYaOBs
OCEujqc5+mHSywYvy8aN+nA+yPucJP5e5pLZ1qaU0tqyakCx8XeeOyP6Wfm3UAAV
AYelBRcWcJxM51w4o5UnUnpBD+Uxiz1sRVlqa9bLJjP4M+wJNL+WaIn9D6WhPOvl
+naDC+p29ou2JzyKFDsOQQKCAQEA+Jalm+xAAPc+t/gCdAqEDo0NMA2/NG8m9BRc
CVZRRaWVyGPeg5ziT/7caGwy2jpOZEjK0OOTCAqF+sJRDj6DDIw7nDrlxNyaXnCF
gguQHFIYaHcjKGTs5l0vgL3H7pMFHN2qVynf4xrTuBXyT1GJ4vdWKAJbooa02c8W
XI2fjwZ7Y8wSWrm1tn3oTTBR3N6o1GyPY6/TrL0mhpWwgx5eJeLl3GuUxOhXY5R9
y48ziS97Dqdq75MxUOHickofCNcm7p+jA8Hg+SxLMR/kUFsXOxawmvsBqdL1XzU5
LTS7xAEY9iMuBcO6yIxcxqBx96idjsPXx1lgARo1CpaZYCzgPQKCAQEA9BqKMN/Y
o+T+ac99St8x3TYkk5lkvLVqlPw+EQhEqrm9EEBPntxWM5FEIpPVmFm7taGTgPfN
KKaaNxX5XyK9B2v1QqN7XrX0nF4+6x7ao64fdpRUParIuBVctqzQWWthme66eHrf
L86T/tkt3o/7p+Hd4Z9UT3FaAew1ggWr00xz5PJ/4b3f3mRmtNmgeTYskWMxOpSj
bEenom4Row7sfLNeXNSWDGlzJ/lf6svvbVM2X5h2uFsxlt/Frq9ooTA3wwhnbd1i
cFifDQ6cxF5mBpz/V/hnlHVfuXlknEZa9EQXHNo/aC9y+bR+ai05FJyK/WgqleW8
5PBmoTReWA2MUQKCAQAnnnLkh+GnhcBEN83ESszDOO3KI9a+d5yguAH3Jv+q9voJ
Rwl2tnFHSJo+NkhgiXxm9UcFxc9wL6Us0v1yJLpkLJFvk9984Z/kv1A36rncGaV0
ONCspnEvQdjJTvXnax0cfaOhYrYhDuyBYVYOGDO+rabYl4+dNpTqRdwNgjDU7baK
sEKYnRJ99FEqxDG33vDPckHkJGi7FiZmusK4EwX0SdZSq/6450LORyNJZxhSm/Oj
4UDkz/PDLU0W5ANQOGInE+A6QBMoA0w0lx2fRPVN4I7jFHAubcXXl7b2InpugbJF
wFOcbZZ+UgiTS4z+aKw7zbC9P9xSMKgVeO0W6/ANAoIBABe0LA8q7YKczgfAWk5W
9iShCVQ75QheJYdqJyzIPMLHXpChbhnjE4vWY2NoL6mnrQ6qLgSsC4QTCY6n15th
aDG8Tgi2j1hXGvXEQR/b0ydp1SxSowuJ9gvKJ0Kl7WWBg+zKvdjNNbcSvFRXCpk+
KhXXXRB3xFwiibb+FQQXQOQ33FkzIy/snDygS0jsiSS8Gf/UPgeOP4BYRPME9Tl8
TYKeeF9TVW7HHqOXF7VZMFrRZcpKp9ynHl2kRTH9Xo+oewG5YzHL+a8nK+q8rIR1
Fjs2K6WDPauw6ia8nwR94H8vzX7Dwrx/Pw74c/4jfhN+UBDjeJ8tu/YPUif9SdwL
FMECggEALdCGKfQ4vPmqI6UdfVB5hdCPoM6tUsI2yrXFvlHjSGVanC/IG9x2mpRb
4odamLYx4G4NjP1IJSY08LFT9VhLZtRM1W3fGeboW12LTEVNrI3lRBU84rAQ1ced
l6/DvTKJjhfwTxb/W7sqmZY5hF3QuNxs67Z8x0pe4b58musa0qFCs4Sa8qTNZKRW
fIbxIKuvu1HSNOKkZLu6Gq8km+XIlVAaSVA03Tt+EK74MFL6+pcd7/VkS00MAYUC
gS4ic+QFzCl5P8zl/GoX8iUFsRZQCSJkZ75VwO13pEupVwCAW8WWJO83U4jBsnJs
ayrX7pbsnW6jsNYBUlck+RYVYkVkxA==
-----END PRIVATE KEY-----

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:interpolator/decelerate_quint">
<translate android:fromYDelta="100%"
android:toYDelta="0"
android:duration="900"/>
</set>

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:interpolator="@android:interpolator/decelerate_quint">
<translate android:fromYDelta="0"
android:toYDelta="100%"
android:duration="500"/>
</set>

View File

@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:targetApi="23"
android:duration="@integer/half_sheet_slide_in_duration"
android:interpolator="@android:interpolator/fast_out_slow_in">
<translate
android:fromYDelta="100%p"
android:toYDelta="0%p"/>
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0"/>
</set>

View File

@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:duration="@integer/half_sheet_fade_out_duration"
android:interpolator="@android:interpolator/fast_out_slow_in">
<translate
android:fromYDelta="0%p"
android:toYDelta="100%p"/>
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"/>
</set>

View File

@@ -1,25 +0,0 @@
<!--
~ Copyright (C) 2022 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0"
android:tint="@color/fast_pair_half_sheet_subtitle_color">
<path
android:fillColor="@color/fast_pair_half_sheet_subtitle_color"
android:pathData="M11,17h2v-6h-2v6zM12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM12,20c-4.41,0 -8,-3.59 -8,-8s3.59,-8 8,-8 8,3.59 8,8 -3.59,8 -8,8zM11,9h2L13,7h-2v2z"/>
</vector>

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="oval">
<stroke
android:width="1dp"
android:color="@color/fast_pair_notification_image_outline"/>
</shape>

View File

@@ -1,10 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
tools:targetApi="23">
<solid android:color="@color/fast_pair_half_sheet_background" />
<corners
android:topLeftRadius="16dp"
android:topRightRadius="16dp"
android:padding="8dp"/>
</shape>

View File

@@ -1,139 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
tools:ignore="RtlCompat"
android:layout_width="match_parent" android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
android:id="@+id/image_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="340dp"
android:paddingStart="12dp"
android:paddingEnd="12dp"
android:paddingTop="12dp"
android:paddingBottom="12dp">
<TextView
android:id="@+id/header_subtitle"
android:textColor="@color/fast_pair_half_sheet_subtitle_color"
android:fontFamily="google-sans"
android:textSize="14sp"
android:maxLines="3"
android:gravity="center"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent" />
<ImageView
android:id="@+id/pairing_pic"
android:layout_width="@dimen/fast_pair_half_sheet_image_size"
android:layout_height="@dimen/fast_pair_half_sheet_image_size"
android:paddingTop="18dp"
android:paddingBottom="18dp"
android:importantForAccessibility="no"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/header_subtitle" />
<TextView
android:id="@+id/pin_code"
android:textColor="@color/fast_pair_half_sheet_subtitle_color"
android:layout_width="wrap_content"
android:layout_height="@dimen/fast_pair_half_sheet_image_size"
android:paddingTop="18dp"
android:paddingBottom="18dp"
android:visibility="invisible"
android:textSize="50sp"
android:letterSpacing="0.2"
android:fontFamily="google-sans-medium"
android:gravity="center"
android:importantForAccessibility="yes"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toBottomOf="@+id/header_subtitle" />
<ProgressBar
android:id="@+id/connect_progressbar"
android:layout_width="@dimen/fast_pair_half_sheet_image_size"
android:layout_height="2dp"
android:indeterminate="true"
android:indeterminateTint="@color/fast_pair_progress_color"
android:indeterminateTintMode="src_in"
style="?android:attr/progressBarStyleHorizontal"
android:layout_marginBottom="6dp"
app:layout_constraintTop_toBottomOf="@+id/pairing_pic"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"/>
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintTop_toBottomOf="@+id/connect_progressbar"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent">
<ImageView
android:id="@+id/info_icon"
android:layout_width="24dp"
android:layout_height="24dp"
app:srcCompat="@drawable/fast_pair_ic_info"
android:layout_centerInParent="true"
android:contentDescription="@null"
android:layout_marginEnd="10dp"
android:layout_toStartOf="@id/connect_btn"
android:visibility="invisible" />
<com.google.android.material.button.MaterialButton
android:id="@+id/connect_btn"
android:layout_width="@dimen/fast_pair_half_sheet_image_size"
android:layout_height="wrap_content"
android:text="@string/paring_action_connect"
android:layout_centerInParent="true"
style="@style/HalfSheetButton" />
</RelativeLayout>
<com.google.android.material.button.MaterialButton
android:id="@+id/settings_btn"
android:text="@string/paring_action_settings"
android:layout_height="wrap_content"
android:layout_width="@dimen/fast_pair_half_sheet_image_size"
app:layout_constraintTop_toBottomOf="@+id/connect_progressbar"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
android:visibility="invisible"
style="@style/HalfSheetButton" />
<com.google.android.material.button.MaterialButton
android:id="@+id/cancel_btn"
android:text="@string/paring_action_done"
android:visibility="invisible"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:gravity="start|center_vertical"
android:layout_marginTop="6dp"
style="@style/HalfSheetButtonBorderless"/>
<com.google.android.material.button.MaterialButton
android:id="@+id/setup_btn"
android:text="@string/paring_action_launch"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginTop="6dp"
android:layout_marginBottom="16dp"
android:background="@color/fast_pair_half_sheet_button_color"
android:visibility="invisible"
android:layout_height="@dimen/fast_pair_half_sheet_bottom_button_height"
android:layout_width="wrap_content"
style="@style/HalfSheetButton" />
</androidx.constraintlayout.widget.ConstraintLayout>
</LinearLayout>

View File

@@ -1,66 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<FrameLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
tools:ignore="RtlCompat, UselessParent, MergeRootFrame"
android:id="@+id/background"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:id="@+id/card"
android:orientation="vertical"
android:transitionName="card"
android:layout_height="wrap_content"
android:layout_width="match_parent"
android:layout_gravity= "center|bottom"
android:paddingLeft="12dp"
android:paddingRight="12dp"
android:background="@drawable/half_sheet_bg"
android:accessibilityLiveRegion="polite"
android:gravity="bottom">
<RelativeLayout
android:id="@+id/toolbar_wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:paddingLeft="20dp"
android:paddingRight="20dp">
<ImageView
android:layout_marginTop="9dp"
android:layout_marginBottom="9dp"
android:id="@+id/toolbar_image"
android:layout_width="42dp"
android:layout_height="42dp"
android:contentDescription="@null"
android:layout_toStartOf="@id/toolbar_title"
android:layout_centerHorizontal="true"
android:visibility="invisible"/>
<TextView
android:layout_marginTop="18dp"
android:layout_marginBottom="18dp"
android:layout_centerHorizontal="true"
android:id="@+id/toolbar_title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="google-sans-medium"
android:textSize="24sp"
android:textColor="@color/fast_pair_half_sheet_text_color"
style="@style/TextAppearance.AppCompat.Widget.ActionBar.Title" />
</RelativeLayout>
<FrameLayout
android:id="@+id/fragment_container"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</LinearLayout>
</FrameLayout>

View File

@@ -1,83 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:baselineAligned="false"
android:background="@color/fast_pair_notification_background"
tools:ignore="ContentDescription,UnusedAttribute,RtlCompat,Overdraw">
<LinearLayout
android:orientation="vertical"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:layout_marginTop="@dimen/fast_pair_notification_padding"
android:layout_marginStart="@dimen/fast_pair_notification_padding"
android:layout_marginEnd="@dimen/fast_pair_notification_padding">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal">
<TextView
android:id="@android:id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:fontFamily="sans-serif-medium"
android:textSize="@dimen/fast_pair_notification_text_size"
android:textColor="@color/fast_pair_primary_text"
android:layout_marginBottom="2dp"
android:lines="1"/>
<TextView
android:id="@android:id/text2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/fast_pair_notification_text_size_small"
android:textColor="@color/fast_pair_primary_text"
android:layout_marginBottom="2dp"
android:layout_marginStart="4dp"
android:lines="1"/>
</LinearLayout>
<TextView
android:id="@android:id/text1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="@dimen/fast_pair_notification_text_size"
android:textColor="@color/fast_pair_primary_text"
android:maxLines="2"
android:ellipsize="end"
android:breakStrategy="simple" />
<FrameLayout
android:id="@android:id/secondaryProgress"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:layout_marginEnd="32dp"
android:orientation="horizontal"
android:visibility="gone">
<ProgressBar
android:id="@android:id/progress"
style="?android:attr/progressBarStyleHorizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:indeterminateTint="@color/discovery_activity_accent"/>
</FrameLayout>
</LinearLayout>
<FrameLayout
android:id="@android:id/icon1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
</LinearLayout>

View File

@@ -1,7 +0,0 @@
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@android:id/icon"
android:layout_width="@dimen/fast_pair_notification_large_image_size"
android:layout_height="@dimen/fast_pair_notification_large_image_size"
android:scaleType="fitStart"
tools:ignore="ContentDescription"/>

View File

@@ -1,11 +0,0 @@
<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@android:id/icon"
android:layout_width="@dimen/fast_pair_notification_small_image_size"
android:layout_height="@dimen/fast_pair_notification_small_image_size"
android:layout_marginTop="@dimen/fast_pair_notification_padding"
android:layout_marginBottom="@dimen/fast_pair_notification_padding"
android:layout_marginStart="@dimen/fast_pair_notification_padding"
android:layout_marginEnd="@dimen/fast_pair_notification_padding"
android:scaleType="fitStart"
tools:ignore="ContentDescription,RtlCompat"/>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Begin tans opstelling …"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Stel toestel op"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Toestel is gekoppel"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Kon nie koppel nie"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Klaar"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Stoor"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Koppel"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Stel op"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Instellings"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"ማዋቀርን በመጀመር ላይ…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"መሣሪያ አዋቅር"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"መሣሪያ ተገናኝቷል"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"መገናኘት አልተቻለም"</string>
<string name="paring_action_done" msgid="6888875159174470731">"ተጠናቅቋል"</string>
<string name="paring_action_save" msgid="6259357442067880136">"አስቀምጥ"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"አገናኝ"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"አዋቅር"</string>
<string name="paring_action_settings" msgid="424875657242864302">"ቅንብሮች"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"جارٍ الإعداد…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"إعداد جهاز"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"تمّ إقران الجهاز"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"تعذّر الربط"</string>
<string name="paring_action_done" msgid="6888875159174470731">"تم"</string>
<string name="paring_action_save" msgid="6259357442067880136">"حفظ"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"ربط"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"إعداد"</string>
<string name="paring_action_settings" msgid="424875657242864302">"الإعدادات"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"ছেটআপ আৰম্ভ কৰি থকা হৈছে…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"ডিভাইচ ছেট আপ কৰক"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"ডিভাইচ সংযোগ কৰা হ’ল"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"সংযোগ কৰিব পৰা নগ’ল"</string>
<string name="paring_action_done" msgid="6888875159174470731">"হ’ল"</string>
<string name="paring_action_save" msgid="6259357442067880136">"ছেভ কৰক"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"সংযোগ কৰক"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"ছেট আপ কৰক"</string>
<string name="paring_action_settings" msgid="424875657242864302">"ছেটিং"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Ayarlama başladılır…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Cihazı quraşdırın"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Cihaz qoşulub"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Qoşulmaq mümkün olmadı"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Oldu"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Saxlayın"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Qoşun"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Ayarlayın"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Ayarlar"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Podešavanje se pokreće…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Podesite uređaj"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Uređaj je povezan"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Povezivanje nije uspelo"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Gotovo"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Sačuvaj"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Poveži"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Podesi"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Podešavanja"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Пачынаецца наладжванне…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Наладзьце прыладу"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Прылада падключана"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Не ўдалося падключыцца"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Гатова"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Захаваць"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Падключыць"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Наладзіць"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Налады"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Настройването се стартира…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Настройване на устройството"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Устройството е свързано"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Свързването не бе успешно"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Готово"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Запазване"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Свързване"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Настройване"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Настройки"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"সেট-আপ করা শুরু হচ্ছে…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"ডিভাইস সেট-আপ করুন"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"ডিভাইস কানেক্ট হয়েছে"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"কানেক্ট করা যায়নি"</string>
<string name="paring_action_done" msgid="6888875159174470731">"হয়ে গেছে"</string>
<string name="paring_action_save" msgid="6259357442067880136">"সেভ করুন"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"কানেক্ট করুন"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"সেট-আপ করুন"</string>
<string name="paring_action_settings" msgid="424875657242864302">"সেটিংস"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Pokretanje postavljanja…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Postavi uređaj"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Uređaj je povezan"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Povezivanje nije uspjelo"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Gotovo"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Sačuvaj"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Poveži"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Postavi"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Postavke"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Iniciant la configuració…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configura el dispositiu"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"El dispositiu s\'ha connectat"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"No s\'ha pogut connectar"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Fet"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Desa"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connecta"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configura"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Configuració"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Zahajování nastavení…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Nastavení zařízení"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Zařízení je připojeno"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Nelze se připojit"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Hotovo"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Uložit"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Připojit"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Nastavit"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Nastavení"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Begynder konfiguration…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Konfigurer enhed"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Enheden er forbundet"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Forbindelsen kan ikke oprettes"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Luk"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Gem"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Opret forbindelse"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Konfigurer"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Indstillinger"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Einrichtung wird gestartet..."</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Gerät einrichten"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Gerät verbunden"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Verbindung nicht möglich"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Fertig"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Speichern"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Verbinden"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Einrichten"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Einstellungen"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Έναρξη ρύθμισης…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Ρύθμιση συσκευής"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Η συσκευή συνδέθηκε"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Αδυναμία σύνδεσης"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Τέλος"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Αποθήκευση"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Σύνδεση"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Ρύθμιση"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Ρυθμίσεις"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Starting setup…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Set up device"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Device connected"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Couldn\'t connect"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Done"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Save"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connect"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Set up"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Settings"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Starting Setup…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Set up device"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Device connected"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Couldn\'t connect"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Done"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Save"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connect"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Set up"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Settings"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Starting setup…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Set up device"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Device connected"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Couldn\'t connect"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Done"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Save"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connect"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Set up"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Settings"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Starting setup…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Set up device"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Device connected"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Couldn\'t connect"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Done"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Save"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connect"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Set up"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Settings"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Starting Setup…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Set up device"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Device connected"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Couldn\'t connect"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Done"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Save"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connect"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Set up"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Settings"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Iniciando la configuración…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configuración del dispositivo"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Se conectó el dispositivo"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"No se pudo establecer conexión"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Listo"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Guardar"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Conectar"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configurar"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Configuración"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Iniciando configuración…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configurar el dispositivo"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Dispositivo conectado"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"No se ha podido conectar"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Hecho"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Guardar"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Conectar"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configurar"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Ajustes"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Seadistuse käivitamine …"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Seadistage seade"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Seade on ühendatud"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Ühendamine ebaõnnestus"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Valmis"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Salvesta"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Ühenda"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Seadistamine"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Seaded"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Konfigurazio-prozesua abiarazten…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Konfiguratu gailua"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Konektatu da gailua"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Ezin izan da konektatu"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Eginda"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Gorde"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Konektatu"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Konfiguratu"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Ezarpenak"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"درحال شروع راه‌اندازی…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"راه‌اندازی دستگاه"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"دستگاه متصل شد"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"متصل نشد"</string>
<string name="paring_action_done" msgid="6888875159174470731">"تمام"</string>
<string name="paring_action_save" msgid="6259357442067880136">"ذخیره"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"متصل کردن"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"راه‌اندازی"</string>
<string name="paring_action_settings" msgid="424875657242864302">"تنظیمات"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Aloitetaan käyttöönottoa…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Määritä laite"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Laite on yhdistetty"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Ei yhteyttä"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Valmis"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Tallenna"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Yhdistä"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Ota käyttöön"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Asetukset"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Démarrage de la configuration…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configurer l\'appareil"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Appareil associé"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Impossible d\'associer"</string>
<string name="paring_action_done" msgid="6888875159174470731">"OK"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Enregistrer"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Associer"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configurer"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Paramètres"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Début de la configuration…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configurer un appareil"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Appareil associé"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Impossible de se connecter"</string>
<string name="paring_action_done" msgid="6888875159174470731">"OK"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Enregistrer"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connecter"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configurer"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Paramètres"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Iniciando configuración…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configura o dispositivo"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Conectouse o dispositivo"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Non se puido conectar"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Feito"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Gardar"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Conectar"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configurar"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Configuración"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"સેટઅપ શરૂ કરી રહ્યાં છીએ…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"ડિવાઇસનું સેટઅપ કરો"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"ડિવાઇસ કનેક્ટ કર્યું"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"કનેક્ટ કરી શક્યા નથી"</string>
<string name="paring_action_done" msgid="6888875159174470731">"થઈ ગયું"</string>
<string name="paring_action_save" msgid="6259357442067880136">"સાચવો"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"કનેક્ટ કરો"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"સેટઅપ કરો"</string>
<string name="paring_action_settings" msgid="424875657242864302">"સેટિંગ"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"सेट अप शुरू किया जा रहा है…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"डिवाइस सेट अप करें"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"डिवाइस कनेक्ट हो गया"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"कनेक्ट नहीं किया जा सका"</string>
<string name="paring_action_done" msgid="6888875159174470731">"हो गया"</string>
<string name="paring_action_save" msgid="6259357442067880136">"सेव करें"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"कनेक्ट करें"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"सेट अप करें"</string>
<string name="paring_action_settings" msgid="424875657242864302">"सेटिंग"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Pokretanje postavljanja…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Postavi uređaj"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Uređaj je povezan"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Povezivanje nije uspjelo"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Gotovo"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Spremi"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Poveži"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Postavi"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Postavke"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Beállítás megkezdése…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Eszköz beállítása"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Eszköz csatlakoztatva"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Nem sikerült csatlakozni"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Kész"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Mentés"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Csatlakozás"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Beállítás"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Beállítások"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Կարգավորում…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Կարգավորեք սարքը"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Սարքը զուգակցվեց"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Չհաջողվեց միանալ"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Պատրաստ է"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Պահել"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Միանալ"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Կարգավորել"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Կարգավորումներ"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Memulai Penyiapan …"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Siapkan perangkat"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Perangkat terhubung"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Tidak dapat terhubung"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Selesai"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Simpan"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Hubungkan"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Siapkan"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Setelan"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Ræsir uppsetningu…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Uppsetning tækis"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Tækið er tengt"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Tenging mistókst"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Lokið"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Vista"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Tengja"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Setja upp"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Stillingar"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Avvio della configurazione…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Configura dispositivo"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Dispositivo connesso"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Impossibile connettere"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Fine"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Salva"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Connetti"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Configura"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Impostazioni"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"ההגדרה מתבצעת…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"הגדרת המכשיר"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"המכשיר מחובר"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"לא ניתן להתחבר"</string>
<string name="paring_action_done" msgid="6888875159174470731">"סיום"</string>
<string name="paring_action_save" msgid="6259357442067880136">"שמירה"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"התחברות"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"הגדרה"</string>
<string name="paring_action_settings" msgid="424875657242864302">"הגדרות"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"セットアップを開始中…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"デバイスのセットアップ"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"デバイス接続完了"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"接続エラー"</string>
<string name="paring_action_done" msgid="6888875159174470731">"完了"</string>
<string name="paring_action_save" msgid="6259357442067880136">"保存"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"接続"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"セットアップ"</string>
<string name="paring_action_settings" msgid="424875657242864302">"設定"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"დაყენება იწყება…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"მოწყობილობის დაყენება"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"მოწყობილობა დაკავშირებულია"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"დაკავშირება ვერ მოხერხდა"</string>
<string name="paring_action_done" msgid="6888875159174470731">"მზადაა"</string>
<string name="paring_action_save" msgid="6259357442067880136">"შენახვა"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"დაკავშირება"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"დაყენება"</string>
<string name="paring_action_settings" msgid="424875657242864302">"პარამეტრები"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Реттеу басталуда…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Құрылғыны реттеу"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Құрылғы байланыстырылды"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Қосылмады"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Дайын"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Сақтау"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Қосу"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Реттеу"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Параметрлер"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"កំពុងចាប់ផ្ដើម​រៀបចំ…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"រៀបចំ​ឧបករណ៍"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"បានភ្ជាប់ឧបករណ៍"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"មិន​អាចភ្ជាប់​បានទេ"</string>
<string name="paring_action_done" msgid="6888875159174470731">"រួចរាល់"</string>
<string name="paring_action_save" msgid="6259357442067880136">"រក្សាទុក"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"ភ្ជាប់"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"រៀបចំ"</string>
<string name="paring_action_settings" msgid="424875657242864302">"ការកំណត់"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"ಸೆಟಪ್ ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತಿದೆ…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"ಸಾಧನವನ್ನು ಸೆಟಪ್ ಮಾಡಿ"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"ಸಾಧನವನ್ನು ಕನೆಕ್ಟ್ ಮಾಡಲಾಗಿದೆ"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"ಕನೆಕ್ಟ್ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ"</string>
<string name="paring_action_done" msgid="6888875159174470731">"ಮುಗಿದಿದೆ"</string>
<string name="paring_action_save" msgid="6259357442067880136">"ಉಳಿಸಿ"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"ಕನೆಕ್ಟ್ ಮಾಡಿ"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"ಸೆಟಪ್ ಮಾಡಿ"</string>
<string name="paring_action_settings" msgid="424875657242864302">"ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"설정을 시작하는 중…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"기기 설정"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"기기 연결됨"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"연결할 수 없음"</string>
<string name="paring_action_done" msgid="6888875159174470731">"완료"</string>
<string name="paring_action_save" msgid="6259357442067880136">"저장"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"연결"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"설정"</string>
<string name="paring_action_settings" msgid="424875657242864302">"설정"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Жөндөлүп баштады…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Түзмөктү жөндөө"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Түзмөк туташты"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Туташпай койду"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Бүттү"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Сактоо"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Туташуу"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Жөндөө"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Параметрлер"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"ກຳລັງເລີ່ມການຕັ້ງຄ່າ…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"ຕັ້ງຄ່າອຸປະກອນ"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"ເຊື່ອມຕໍ່ອຸປະກອນແລ້ວ"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"ບໍ່ສາມາດເຊື່ອມຕໍ່ໄດ້"</string>
<string name="paring_action_done" msgid="6888875159174470731">"ແລ້ວໆ"</string>
<string name="paring_action_save" msgid="6259357442067880136">"ບັນທຶກ"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"ເຊື່ອມຕໍ່"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"ຕັ້ງຄ່າ"</string>
<string name="paring_action_settings" msgid="424875657242864302">"ການຕັ້ງຄ່າ"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Pradedama sąranka…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Įrenginio nustatymas"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Įrenginys prijungtas"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Prisijungti nepavyko"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Atlikta"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Išsaugoti"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Prisijungti"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Nustatyti"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Nustatymai"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Tiek sākta iestatīšana…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Iestatiet ierīci"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Ierīce ir pievienota"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Nevarēja izveidot savienojumu"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Gatavs"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Saglabāt"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Izveidot savienojumu"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Iestatīt"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Iestatījumi"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Се започнува со поставување…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Поставете го уредот"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Уредот е поврзан"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Не може да се поврзе"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Готово"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Зачувај"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Поврзи"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Поставете"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Поставки"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"സജ്ജീകരിക്കൽ ആരംഭിക്കുന്നു…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"ഉപകരണം സജ്ജീകരിക്കുക"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"ഉപകരണം കണക്റ്റ് ചെയ്‌തു"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"കണക്റ്റ് ചെയ്യാനായില്ല"</string>
<string name="paring_action_done" msgid="6888875159174470731">"പൂർത്തിയായി"</string>
<string name="paring_action_save" msgid="6259357442067880136">"സംരക്ഷിക്കുക"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"കണക്റ്റ് ചെയ്യുക"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"സജ്ജീകരിക്കുക"</string>
<string name="paring_action_settings" msgid="424875657242864302">"ക്രമീകരണം"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Тохируулгыг эхлүүлж байна…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Төхөөрөмж тохируулах"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Төхөөрөмж холбогдсон"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Холбогдож чадсангүй"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Болсон"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Хадгалах"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Холбох"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Тохируулах"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Тохиргоо"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"सेटअप सुरू करत आहे…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"डिव्हाइस सेट करा"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"डिव्हाइस कनेक्ट केले आहे"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"कनेक्ट करता आले नाही"</string>
<string name="paring_action_done" msgid="6888875159174470731">"पूर्ण झाले"</string>
<string name="paring_action_save" msgid="6259357442067880136">"सेव्ह करा"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"कनेक्ट करा"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"सेट करा"</string>
<string name="paring_action_settings" msgid="424875657242864302">"सेटिंग्ज"</string>
</resources>

View File

@@ -1,29 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2021 The Android Open Source Project
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
~ You may obtain a copy of the License at
~
~ http://www.apache.org/licenses/LICENSE-2.0
~
~ Unless required by applicable law or agreed to in writing, software
~ distributed under the License is distributed on an "AS IS" BASIS,
~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
~ See the License for the specific language governing permissions and
~ limitations under the License.
-->
<resources xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
<string name="fast_pair_setup_in_progress" msgid="4158762239172829807">"Memulakan Persediaan…"</string>
<string name="fast_pair_title_setup" msgid="2894360355540593246">"Sediakan peranti"</string>
<string name="fast_pair_device_ready" msgid="2903490346082833101">"Peranti disambungkan"</string>
<string name="fast_pair_title_fail" msgid="5677174346601290232">"Tidak dapat menyambung"</string>
<string name="paring_action_done" msgid="6888875159174470731">"Selesai"</string>
<string name="paring_action_save" msgid="6259357442067880136">"Simpan"</string>
<string name="paring_action_connect" msgid="4801102939608129181">"Sambung"</string>
<string name="paring_action_launch" msgid="8940808384126591230">"Sediakan"</string>
<string name="paring_action_settings" msgid="424875657242864302">"Tetapan"</string>
</resources>

Some files were not shown because too many files have changed in this diff Show More