android - 如何在 Compose UI 中嵌入 Snapkit 登录按钮
问题描述
Snapkit 登录 API 提供了一个样式按钮来启动登录。但是它使用一个视图组。如何在 Compose UI 中使用它?
解决方案
@Composable
private fun SnapLoginButton() {
val context = LocalContext.current
AndroidView(factory = {
FrameLayout(context).also {
SnapLogin.getButton(context, it)
}
})
}
登录后,您可以获取用户数据
private fun fetchUserDatax() {
val query = "{me{displayName bitmoji{avatar} externalId}}"
SnapLogin.fetchUserData(this, query, mapOf(), object : FetchUserDataCallback {
override fun onSuccess(p0: UserDataResponse?) {
state = "onSuccess " + p0?.data?.me?.displayName + " " + p0?.errors?.map { it.errorType }
}
override fun onFailure(p0: Boolean, p1: Int) {
state = "onFailure " + p0 + " " + p1
}
})
}
推荐阅读
- python - 在 numba 中初始化元组的返回列表
- firebase - firebase 功能说“功能没有正确部署。”
- python - Python:如何在迭代列表时从列表中删除元素而不跳过未来的迭代
- amazon-web-services - 在 AWS 上创建 AMI 是否需要重启原始机器?
- python - 如何在 HTML 轮播中使用 Jinja
- android - 如何通过 putExtra 转到另一个活动将数据传递给活动
- google-apps-script - 使用工作表列中的值添加多个过滤视图
- javascript - 如何使用脚本在 Google 表格中更新单元格时添加时间戳?
- node.js - 模型的字段是猫鼬计算的结果
- java - Java Stream sorted() 到通用列表