Шаги для получения токена доступа из Сервисной учетной записи.
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
authExplicit()
}
fun authExplicit() {
CoroutineScope(Dispatchers.Default).launch {
try {
val credentials =
GoogleCredentials.fromStream(resources.assets.open("studentsamplechatbot-xvgloa.json"))
.createScoped(Collections.singletonList("https://www.googleapis.com/auth/dialogflow"))
credentials.refreshIfExpired()
val accessToken = credentials.accessToken
Log.e("log_data", "Token :" + accessToken.tokenValue)
if (accessToken.tokenValue.isNotEmpty()) {
Log.e(
"log_data",
"Got it --> authenticationType :" + credentials.authenticationType
)
AuthToken = "Bearer " + accessToken.tokenValue
} else {
Log.e("log_data", "No token")
AuthToken = ""
}
CoroutineScope(Dispatchers.Main).launch {
initViews()
}
} catch (e: Exception) {
Log.e("log_data", e.toString())
}
}
}
}
Вы можете скачать с Google Cloud Platform
Google Cloud Platform -> Выберите свой проект -> IAM & Admin -> Сервисные учетные записи -> Создать сервисную учетную запись
Создание учетной записи службы откроет одну страницу, есть несколько деталей, которые добавляют детали и создают ее.
После создания учетной записи службы вы можете найдите созданную учетную запись службы в списке.
Справа находится столбец действий с тремя точками на каждой. из этого есть одна опция создать ключ . При нажатии на него откроется одно диалоговое окно с двумя вариантами JSON и P12 . Когда вы выбираете JSON и нажимаете кнопку «Создать», он загружает файл JSON вашей учетной записи службы.
Вы можете использовать этот файл JSON для вашего Android проекта и поместите его в папку assets
. Ваш проект -> приложение -> ср c -> main -> активы
Вы можете использовать вышеуказанную функцию для получения токена доступа.