FirebaseAuth -SmsRetrieverHelper -SMS 验证码请求失败:未知状态码:17042 格式无效

时间:2021-06-13 17:21:11

标签: c# android xamarin xamarin.forms xamarin.android

我正在关注ref

我正在使用自己的手机来测试此应用。没有错误但无法发送短信验证码。我的日志是:

import Events from "globalManager";

const OUTLINE = {
  ...
  enableOutline: function(event) {
    const { key } = event;
    if (key.toLowerCase() === `f` && !OUTLINE.listener) {
      OUTLINE.listener = Events.listen(document, `focusin`, OUTLINE.showOutline);
    }
  }
  hideOutline: function() {
    if (OUTLINE.listener) {
      OUTLINE.listener = OUTLINE.listener.remove();
    }
  },
};

Nuget 下载

    [FirebaseApp] Device unlocked: initializing all Firebase APIs for app [DEFAULT]
[FirebaseInitProvider] FirebaseApp initialization successful
[FirebaseAuth] [FirebaseAuth:] Preparing to create service connection to fallback implementation
[System] Ignoring header X-Firebase-Locale because its value was null.
[System] Ignoring header X-Firebase-Locale because its value was null.
[FirebaseAuth] [SmsRetrieverHelper] SMS verification code request failed: unknown status code: 17042 Invalid format.

MainAcivity.cs - 设置

xamarin.firebase.core
xamarin.firebase.auth

用于发送短信代码

   protected override async void OnCreate(Bundle savedInstanceState)
    {
        base.OnCreate(savedInstanceState);

        var fb = FirebaseApp.InitializeApp(Application.Context);
        ...

        LoadApplication(new App());
    }

Android 项目 > Manifyingt.cs - 添加了网络权限

PhoneAuthOptions options =
                PhoneAuthOptions.NewBuilder(FirebaseAuth.Instance)
                .SetPhoneNumber(myPhonenumber)       // Phone number to verify
                .SetTimeout(num, TimeUnit.Seconds) // Timeout and unit
                .SetActivity(Platform.CurrentActivity)                 // Activity (for callback binding)
                .SetCallbacks(this)          // OnVerificationStateChangedCallbacks
                .Build();
        PhoneAuthProvider.VerifyPhoneNumber(options);

Firebase 网站添加 google-service 文件

Firebase 网站 - 启用电话/添加随机电话号码/添加代码

enter image description here enter image description here

1 个答案:

答案 0 :(得分:0)

已修复,我在传递 myPhonenumber 时没有国家代码。例如对于美国,它应该采用这种格式 +1 655-555-1209