Xamarin.Forms에서 Google 애널리틱스 지원 (재 게시)
14580 단어 GoogleAnalyticsXamarinXamarin.Forms
소개
Xamarin.Forms를 사용하는 앱에서 Google Analytics를 지원해 보았습니다.
※2017/10/14에 투고했습니다만, 투고 NG의 기재가 있었으므로 재게재하고 있습니다. (TrackerID를 그대로 기재하고 있었습니다……)
환경
PC 등
PC 등
NuGet 패키지
장비
앱 만들기
새 프로젝트 만들기
XamarinGoogleAnalytics라는 이름의 Xamarin.Forms 프로젝트를 새로 만듭니다.
NuGet 패키지 추가
'ksemenenko.GoogleAnalytics'를 검색하여 추가합니다.
여기 입니다.
소스 코드
공통
Xamarin.Forms에 버튼을 배치하고 탭하면 Google 웹로그 분석에 제출해 보세요.
MainPage.xaml<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:XamarinGoogleAnalytics"
x:Class="XamarinGoogleAnalytics.MainPage">
<ContentPage.Content>
<StackLayout HorizontalOptions="Center" VerticalOptions="Center">
<Button Text="Click!" Clicked="Button_Clicked"/>
</StackLayout>
</ContentPage.Content>
</ContentPage>
MainPage.xaml.csusing Plugin.GoogleAnalytics;
using System;
using Xamarin.Forms;
namespace XamarinGoogleAnalytics
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
private void Button_Clicked(object sender, EventArgs e)
{
GoogleAnalytics.Current.Tracker.SendView("MaiinPage");
GoogleAnalytics.Current.Tracker.SendEvent("Category", "Action", "Label", 0);
DisplayAlert("Info", "情報を送信しました。", "OK");
}
}
}
안드로이드
LoadApplication()을 실행하기 전에 초기화를 수행합니다.
TrackingId는 적절하게 변경하십시오.
MainActivity.csusing System;
using Android.App;
using Android.Content.PM;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using Plugin.GoogleAnalytics;
namespace XamarinGoogleAnalytics.Droid
{
[Activity(Label = "XamarinGoogleAnalytics", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(bundle);
GoogleAnalytics.Current.Config.TrackingId = "UA-xxxxxx-x";
GoogleAnalytics.Current.Config.AppId = "XamarinGoogleAnalytics";
GoogleAnalytics.Current.Config.AppName = "Googleアナリティクスサンプル";
GoogleAnalytics.Current.Config.AppVersion = "1.0.0";
GoogleAnalytics.Current.InitTracker();
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
}
}
}
iOS 코드
LoadApplication()을 실행하기 전에 초기화를 수행합니다.
TrackingId는 적절하게 변경하십시오.
AppDelegate.csusing Foundation;
using UIKit;
using Plugin.GoogleAnalytics;
namespace XamarinGoogleAnalytics.iOS
{
[Register("AppDelegate")]
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
{
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
{
GoogleAnalytics.Current.Config.TrackingId = "UA-xxxxxx-x";
GoogleAnalytics.Current.Config.AppId = "XamarinGoogleAnalytics";
GoogleAnalytics.Current.Config.AppName = "Googleアナリティクスサンプル";
GoogleAnalytics.Current.Config.AppVersion = "1.0.0";
GoogleAnalytics.Current.InitTracker();
global::Xamarin.Forms.Forms.Init();
LoadApplication(new App());
return base.FinishedLaunching(app, options);
}
}
}
할 수 있었다
Github
여기 에 샘플 코드가 있습니다.
참고 사이트
<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
xmlns:local="clr-namespace:XamarinGoogleAnalytics"
x:Class="XamarinGoogleAnalytics.MainPage">
<ContentPage.Content>
<StackLayout HorizontalOptions="Center" VerticalOptions="Center">
<Button Text="Click!" Clicked="Button_Clicked"/>
</StackLayout>
</ContentPage.Content>
</ContentPage>
using Plugin.GoogleAnalytics;
using System;
using Xamarin.Forms;
namespace XamarinGoogleAnalytics
{
public partial class MainPage : ContentPage
{
public MainPage()
{
InitializeComponent();
}
private void Button_Clicked(object sender, EventArgs e)
{
GoogleAnalytics.Current.Tracker.SendView("MaiinPage");
GoogleAnalytics.Current.Tracker.SendEvent("Category", "Action", "Label", 0);
DisplayAlert("Info", "情報を送信しました。", "OK");
}
}
}
using System;
using Android.App;
using Android.Content.PM;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using Plugin.GoogleAnalytics;
namespace XamarinGoogleAnalytics.Droid
{
[Activity(Label = "XamarinGoogleAnalytics", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
protected override void OnCreate(Bundle bundle)
{
TabLayoutResource = Resource.Layout.Tabbar;
ToolbarResource = Resource.Layout.Toolbar;
base.OnCreate(bundle);
GoogleAnalytics.Current.Config.TrackingId = "UA-xxxxxx-x";
GoogleAnalytics.Current.Config.AppId = "XamarinGoogleAnalytics";
GoogleAnalytics.Current.Config.AppName = "Googleアナリティクスサンプル";
GoogleAnalytics.Current.Config.AppVersion = "1.0.0";
GoogleAnalytics.Current.InitTracker();
global::Xamarin.Forms.Forms.Init(this, bundle);
LoadApplication(new App());
}
}
}
using Foundation;
using UIKit;
using Plugin.GoogleAnalytics;
namespace XamarinGoogleAnalytics.iOS
{
[Register("AppDelegate")]
public partial class AppDelegate : global::Xamarin.Forms.Platform.iOS.FormsApplicationDelegate
{
public override bool FinishedLaunching(UIApplication app, NSDictionary options)
{
GoogleAnalytics.Current.Config.TrackingId = "UA-xxxxxx-x";
GoogleAnalytics.Current.Config.AppId = "XamarinGoogleAnalytics";
GoogleAnalytics.Current.Config.AppName = "Googleアナリティクスサンプル";
GoogleAnalytics.Current.Config.AppVersion = "1.0.0";
GoogleAnalytics.Current.InitTracker();
global::Xamarin.Forms.Forms.Init();
LoadApplication(new App());
return base.FinishedLaunching(app, options);
}
}
}
여기 에 샘플 코드가 있습니다.
참고 사이트
Reference
이 문제에 관하여(Xamarin.Forms에서 Google 애널리틱스 지원 (재 게시)), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/gnk263/items/d2ad1f0525ced46effa8텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)