私のプロジェクトの一環として、iOSのfirebaseクラウドメッセージングに取り組んでいます。次のように部分的に私の問題がある:iOSアプリのAppDelegateには、次のコードが含まれていますXamarin iOS firebaseの問題
// Monitor token generation
InstanceId.Notifications.ObserveTokenRefresh((sender, e) =>
{
// Note that this callback will be fired everytime a new token is generated, including the first
// time. So if you need to retrieve the token as soon as it is available this is where that
// should be done.
var refreshedToken = InstanceId.SharedInstance.Token;
Console.WriteLine(refreshedToken);
if (refreshedToken != null)
{
if (credentialsService.Email.Equals("") && credentialsService.Password.Equals(""))
{
credentialsService.SaveCredentials(refreshedToken);
}
else
{
credentialsService.SaveCredentials(credentialsService.Email, credentialsService.Password, refreshedToken, credentialsService.Token);
}
}
else
{
Console.WriteLine("error, token is empty");
}
});
トークンが必要なときはいつでも、このコールバック関数が呼び出されます。それで、credentialsServiceは、ユーザーがログインしたときにそのトークンを収集してサーバーに送信するために使用されます。しかし、問題は、トークンがすぐには準備できていないことです。このアプリのスプラッシュ画面が読み込まれる前に、これのアンドロイド版(ほぼ同じ動作)にトークンが割り当てられます。しかし、iOSアプリは、トークンが生成されるまでにかなりの時間(約20〜30秒)を要します。ユーザーはこの時点で既にログに記録することができ、その後生成されるトークンは、ユーザーが再ログアウトするとサーバーにのみ送信されます。
トークンがより速く生成されるようにするソリューションはありますか?私はインターネット上で珍しいことではない、次のエラーを取得します。しかし、ソリューションのためのグーグルは本当に役に立たなかった。
は= APNSトークンエラードメインの取得に失敗しました
FIRMessaging登録が認証資格情報
と準備ができていないコード= 1001 "(ヌル)" をcom.firebase.iid、 リッカルドありがとう
誰かが同じ問題を解決しますか? –