public class

HeadlessWatchFaceInstanceParams

extends java.lang.Object

implements VersionedParcelable

 java.lang.Object

↳androidx.wear.watchface.control.data.HeadlessWatchFaceInstanceParams

Gradle dependencies

compile group: 'androidx.wear', name: 'wear-watchface-data', version: '1.0.0-alpha22'

  • groupId: androidx.wear
  • artifactId: wear-watchface-data
  • version: 1.0.0-alpha22

Artifact androidx.wear:wear-watchface-data:1.0.0-alpha22 it located at Google repository (https://maven.google.com/)

Overview

Parameters for .

Summary

Fields
public static final <any>CREATOR

Constructors
publicHeadlessWatchFaceInstanceParams(ComponentName watchFaceName, DeviceConfig deviceConfig, int width, int height)

publicHeadlessWatchFaceInstanceParams(ComponentName watchFaceName, DeviceConfig deviceConfig, int width, int height, java.lang.String instanceId)

Methods
public intdescribeContents()

public DeviceConfiggetDeviceConfig()

public intgetHeight()

public java.lang.StringgetInstanceId()

public ComponentNamegetWatchFaceName()

public intgetWidth()

public voidwriteToParcel(Parcel parcel, int flags)

Serializes this InteractiveWatchFaceInstanceParams to the specified .

from java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Fields

public static final <any> CREATOR

Constructors

public HeadlessWatchFaceInstanceParams(ComponentName watchFaceName, DeviceConfig deviceConfig, int width, int height)

Deprecated: Use the other constructor instead.

public HeadlessWatchFaceInstanceParams(ComponentName watchFaceName, DeviceConfig deviceConfig, int width, int height, java.lang.String instanceId)

Methods

public ComponentName getWatchFaceName()

public DeviceConfig getDeviceConfig()

public int getWidth()

public int getHeight()

public java.lang.String getInstanceId()

public void writeToParcel(Parcel parcel, int flags)

Serializes this InteractiveWatchFaceInstanceParams to the specified .

public int describeContents()

Source

/*
 * Copyright 2020 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 androidx.wear.watchface.control.data;

import android.annotation.SuppressLint;
import android.content.ComponentName;
import android.os.Parcel;
import android.os.Parcelable;

import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.RestrictTo;
import androidx.versionedparcelable.ParcelField;
import androidx.versionedparcelable.ParcelUtils;
import androidx.versionedparcelable.VersionedParcelable;
import androidx.versionedparcelable.VersionedParcelize;
import androidx.wear.watchface.data.DeviceConfig;

/**
 * Parameters for {@link IWatchFaceControlService#createHeadlessWatchFaceInstance}.
 *
 * @hide
 */
@RestrictTo(RestrictTo.Scope.LIBRARY_GROUP_PREFIX)
@VersionedParcelize
@SuppressLint("BanParcelableUsage") // TODO(b/169214666): Remove Parcelable
public class HeadlessWatchFaceInstanceParams implements VersionedParcelable, Parcelable {

    /** The {@link ComponentName} of the watchface family to create. */
    @ParcelField(1)
    @NonNull
    ComponentName mWatchFaceName;

    /** The {@link DeviceConfig} for the host wearable. */
    @ParcelField(2)
    @NonNull
    DeviceConfig mDeviceConfig;

    /** The desired width for screenshots. */
    @ParcelField(3)
    int mWidth;

    /** The desired height for screenshots. */
    @ParcelField(4)
    int mHeight;

    /** The id of the watchface. */
    @ParcelField(5)
    String mInstanceId = null;

    /** Used by VersionedParcelable. */
    HeadlessWatchFaceInstanceParams() {}

    /** @deprecated Use the other constructor instead. */
    @Deprecated
    public HeadlessWatchFaceInstanceParams(
            @NonNull ComponentName watchFaceName,
            @NonNull DeviceConfig deviceConfig,
            int width,
            int height) {
        mWatchFaceName = watchFaceName;
        mDeviceConfig = deviceConfig;
        mWidth = width;
        mHeight = height;
        mInstanceId = null;
    }

    public HeadlessWatchFaceInstanceParams(
            @NonNull ComponentName watchFaceName,
            @NonNull DeviceConfig deviceConfig,
            int width,
            int height,
            @Nullable String instanceId) {
        mWatchFaceName = watchFaceName;
        mDeviceConfig = deviceConfig;
        mWidth = width;
        mHeight = height;
        mInstanceId = instanceId;
    }

    @NonNull
    public ComponentName getWatchFaceName() {
        return mWatchFaceName;
    }

    @NonNull
    public DeviceConfig getDeviceConfig() {
        return mDeviceConfig;
    }

    public int getWidth() {
        return mWidth;
    }

    public int getHeight() {
        return mHeight;
    }

    @Nullable
    public String getInstanceId() {
        return mInstanceId;
    }

    /** Serializes this InteractiveWatchFaceInstanceParams to the specified {@link Parcel}. */
    @Override
    public void writeToParcel(@NonNull Parcel parcel, int flags) {
        parcel.writeParcelable(ParcelUtils.toParcelable(this), flags);
    }

    @Override
    public int describeContents() {
        return 0;
    }

    public static final Parcelable.Creator<HeadlessWatchFaceInstanceParams> CREATOR =
            new Parcelable.Creator<HeadlessWatchFaceInstanceParams>() {
                @SuppressWarnings("deprecation")
                @Override
                public HeadlessWatchFaceInstanceParams createFromParcel(Parcel source) {
                    return ParcelUtils.fromParcelable(
                            source.readParcelable(getClass().getClassLoader()));
                }

                @Override
                public HeadlessWatchFaceInstanceParams[] newArray(int size) {
                    return new HeadlessWatchFaceInstanceParams[size];
                }
            };
}