请提供建议,我尝试在PCL
Xamarin.Forms
中添加推送通知。
在模拟器Genymotion
上它工作正常,但在真实设备上我有一个错误:
默认FirebaseApp未初始化。请尽快调用FirebaseApp.initializeApp(上下文)
google-services.json
GoogleServicesJson
的Android项目中存在 BuildAction
我的MainActivity
:
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
internal static MainActivity Instance { get; private set; }
internal static FirebaseInstanceId FirebaseInstance { get; private set; }
public static int CurrentUserId { get; set; }
protected override async void OnCreate(Bundle bundle)
{
base.OnCreate(bundle);
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
VideoViewRenderer.Init();
global::Xamarin.Forms.Forms.Init(this, bundle);
string dbPath = FileAccessHelper.GetLocalFilePath("LocalDataBase.db");
LoadApplication(new App());
Xamarin.Forms.Application.Current.On<Xamarin.Forms.PlatformConfiguration.Android>().UseWindowSoftInputModeAdjust(WindowSoftInputModeAdjust.Resize);
UserDialogs.Init(this);
CachedImageRenderer.Init();
//on real devices it return null
var app = Firebase.FirebaseApp.InitializeApp(this.ApplicationContext);
Instance = this;
}
答案 0 :(得分:0)
将NuGet包版本Xamarin.Firebase.Messaging和Xamarin.GooglePlayServices.Base降级为42.1001.0
后问题解决了答案 1 :(得分:0)
相反,我的解决方案是,我最初没有安装Xamarin.Firebase.Messaging。但是从Nuget安装它之后,它就可以工作了。