Initial commit: LCK Control Android app
Multi-module Android app (app/shared/sdk) with backend-driven auth, Quest Platform SDK login, YouTube/Twitch OAuth linking, stream management via AIDL service. Compose UI with Hilt DI.
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
package com.omixlab.lckcontrol.shared
|
||||
|
||||
import android.os.Parcel
|
||||
import android.os.Parcelable
|
||||
|
||||
data class LinkedAccount(
|
||||
val serviceId: String,
|
||||
val displayName: String,
|
||||
val accountId: String,
|
||||
val avatarUrl: String? = null,
|
||||
val isAuthenticated: Boolean = false,
|
||||
) : Parcelable {
|
||||
|
||||
constructor(parcel: Parcel) : this(
|
||||
serviceId = parcel.readString()!!,
|
||||
displayName = parcel.readString()!!,
|
||||
accountId = parcel.readString()!!,
|
||||
avatarUrl = parcel.readString(),
|
||||
isAuthenticated = parcel.readInt() != 0,
|
||||
)
|
||||
|
||||
override fun writeToParcel(parcel: Parcel, flags: Int) {
|
||||
parcel.writeString(serviceId)
|
||||
parcel.writeString(displayName)
|
||||
parcel.writeString(accountId)
|
||||
parcel.writeString(avatarUrl)
|
||||
parcel.writeInt(if (isAuthenticated) 1 else 0)
|
||||
}
|
||||
|
||||
override fun describeContents(): Int = 0
|
||||
|
||||
companion object CREATOR : Parcelable.Creator<LinkedAccount> {
|
||||
override fun createFromParcel(parcel: Parcel) = LinkedAccount(parcel)
|
||||
override fun newArray(size: Int) = arrayOfNulls<LinkedAccount>(size)
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user