如何将Xamarin.Firebase.Analytics整合到Xamarin.forms?
How to integrate Xamarin.Firebase.Analytics to the Xamarin.forms?
问题:但是我在我的 firebase 帐户中没有看到活跃用户。
我这样做。
我将 Xamarin.Firebase.Analytics 包添加到 MyName.Android 项目中。
我把google-services.json添加到我的Name.Android.
安装构建动作=GoogleService.json
我 运行 项目作为“调试”。
问题描述:项目组装成功运行ning,但是firebase统计中的标准动作不固定:first_open , screen_view, session_start.
问题描述:realtime部分的firebase统计也是空的
请告诉我我做错了什么?
我需要额外的包裹吗?
“Xamarin.Firebase.Analytics”需要在MainActivity中初始化?
开发人员创建 nuget 包并将它们上传到 github。一些开发人员编写说明。有的不写说明书。
问题是去哪里找说明书?
我记得使用以下媒介 post 来做同样的事情:https://thewissen.io/using-firebase-analytics-in-your-xamarin-forms-app/
基本上,您执行先决条件,创建接口
public interface IFirebaseAnalyticsService
{
void LogEvent(string eventId);
void LogEvent(string eventId, string paramName, string value);
void LogEvent(string eventId, IDictionary<string, string> parameters);
void SetUserId(string userId);
}
然后你为依赖注入创建平台级别类
public class FirebaseAnalyticsService : IFirebaseAnalyticsService
{
public void LogEvent(string eventId)
{
LogEvent(eventId, null);
}
public void LogEvent(string eventId, string paramName, string value)
{
LogEvent(eventId, new Dictionary<string, string>
{
{paramName, value}
});
}
public void SetUserId(string userId)
{
#if !DEBUG
var fireBaseAnalytics = FirebaseAnalytics.GetInstance(CrossCurrentActivity.Current.AppContext);
fireBaseAnalytics.SetUserId(userId);
#endif
}
public void LogEvent(string eventId, IDictionary<string, string> parameters)
{
#if !DEBUG
var fireBaseAnalytics = FirebaseAnalytics.GetInstance(CrossCurrentActivity.Current.AppContext);
if (parameters == null)
{
fireBaseAnalytics.LogEvent(eventId, null);
return;
}
var bundle = new Bundle();
foreach (var item in parameters)
{
bundle.PutString(item.Key, item.Value);
}
fireBaseAnalytics.LogEvent(eventId, bundle);
#endif
}
}
祝你好运,如果您有任何疑问,请告诉我
添加到 MainAvtivity.cs(对于 Android)
using Firebase.Analytics;
FirebaseAnalytics firebaseAnalytics;
到 class MainActivity 的开头
- 到方法 onCreate
firebaseAnalytics = FirebaseAnalytics.GetInstance(this);
- 在google-service.json文件的属性中,设置build action = Google Services.Json
- 看看我的包版本。 link 有效。收包裹都累了...
添加到 AppDelegate.cs(对于 iOS)
- 在命名空间之前添加以下内容 -
[assembly: Preserve(typeof(Firebase.Analytics.Analytics), AllMembers = true)]
- 在
return base.FinishedLaunching(app, options);
之前添加代码Firebase.Core.App.Configure();
- 我使用 Xamarin.Firebase.iOS.Anatics(6.9.0)
其余的是根据 ios
的 firebase 中的说明
问题:但是我在我的 firebase 帐户中没有看到活跃用户。
我这样做。
我将 Xamarin.Firebase.Analytics 包添加到 MyName.Android 项目中。
我把google-services.json添加到我的Name.Android.
安装构建动作=GoogleService.json
我 运行 项目作为“调试”。
问题描述:项目组装成功运行ning,但是firebase统计中的标准动作不固定:first_open , screen_view, session_start.
问题描述:realtime部分的firebase统计也是空的
请告诉我我做错了什么? 我需要额外的包裹吗? “Xamarin.Firebase.Analytics”需要在MainActivity中初始化?
开发人员创建 nuget 包并将它们上传到 github。一些开发人员编写说明。有的不写说明书。 问题是去哪里找说明书?
我记得使用以下媒介 post 来做同样的事情:https://thewissen.io/using-firebase-analytics-in-your-xamarin-forms-app/
基本上,您执行先决条件,创建接口
public interface IFirebaseAnalyticsService
{
void LogEvent(string eventId);
void LogEvent(string eventId, string paramName, string value);
void LogEvent(string eventId, IDictionary<string, string> parameters);
void SetUserId(string userId);
}
然后你为依赖注入创建平台级别类
public class FirebaseAnalyticsService : IFirebaseAnalyticsService
{
public void LogEvent(string eventId)
{
LogEvent(eventId, null);
}
public void LogEvent(string eventId, string paramName, string value)
{
LogEvent(eventId, new Dictionary<string, string>
{
{paramName, value}
});
}
public void SetUserId(string userId)
{
#if !DEBUG
var fireBaseAnalytics = FirebaseAnalytics.GetInstance(CrossCurrentActivity.Current.AppContext);
fireBaseAnalytics.SetUserId(userId);
#endif
}
public void LogEvent(string eventId, IDictionary<string, string> parameters)
{
#if !DEBUG
var fireBaseAnalytics = FirebaseAnalytics.GetInstance(CrossCurrentActivity.Current.AppContext);
if (parameters == null)
{
fireBaseAnalytics.LogEvent(eventId, null);
return;
}
var bundle = new Bundle();
foreach (var item in parameters)
{
bundle.PutString(item.Key, item.Value);
}
fireBaseAnalytics.LogEvent(eventId, bundle);
#endif
}
}
祝你好运,如果您有任何疑问,请告诉我
添加到 MainAvtivity.cs(对于 Android)
using Firebase.Analytics;
FirebaseAnalytics firebaseAnalytics;
到 class MainActivity 的开头
- 到方法 onCreate
firebaseAnalytics = FirebaseAnalytics.GetInstance(this);
- 在google-service.json文件的属性中,设置build action = Google Services.Json
- 看看我的包版本。 link 有效。收包裹都累了...
添加到 AppDelegate.cs(对于 iOS)
- 在命名空间之前添加以下内容 -
[assembly: Preserve(typeof(Firebase.Analytics.Analytics), AllMembers = true)]
- 在
return base.FinishedLaunching(app, options);
之前添加代码Firebase.Core.App.Configure();
- 我使用 Xamarin.Firebase.iOS.Anatics(6.9.0)
其余的是根据 ios
的 firebase 中的说明