我正在尝试实现无服务器聊天应用程序,因此当我向用户发送消息时,如果他没有打开应用程序,则需要向该用户发送通知
如firebase文档所说的https://firebase.google.com/docs/cloud-messaging/migrate-v1
我们首先应生成私钥并获取访问令牌,因此我获取私钥并将其保存在我的下载文件夹中,并按照建议将我添加到环境变量中,如下所示export GOOGLE_APPLICATION_CREDENTIALS="/home/karem/Downloads/service-account-file.json"
,而karem是我的用户名
但是当我尝试获取访问令牌时,出现以下错误
java.io.FileNotFoundException: service-account.json (No such file or directory)
我的代码
private val MESSAGING_SCOPE = "https://www.googleapis.com/auth/firebase.messaging"
private val SCOPES = arrayOf(MESSAGING_SCOPE)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
FirebaseApp.initializeApp(this)
getAccessToken()
}
private fun getAccessToken(): String {
val googleCredential = GoogleCredential
.fromStream(FileInputStream("service-account.json"))
.createScoped(Arrays.asList(*SCOPES))
googleCredential.refreshToken()
return googleCredential.getAccessToken()
}
}
该文件直到可以下载为止,但我说它没找到