SlideShare uma empresa Scribd logo
1 de 15
Baixar para ler offline
Google Analytics & iPhone

    id:ninjinkun, @ninjinkun
•   Google Analytics

•   Google Analytics for iOS

•   iPhone

•
Google Analytics

 •   Web

 •
     •            (PV),   (UU)

     •
     •
 •   Web     JS

 •
Google Analytics

 •
 •
     •
     •   AB

 •
Google Analytics for iOS

 •   iOS                Google Analytics

     •          Android

 •   Google Analytics                      UI


 •            Web

     •                   Obj-C

 •
Google Analytics for iOS

 •
 •
 •   UI

     •
     •
 •        (   )
iPhone

 •                   Project

     • GATracker.h
     • GATracker.a
 •   (     )sqlite

     •
iPhone

 •
     •   application:didFinishLaunchingWithOptions:
 [[GANTracker sharedTracker] startTrackerWithAccountID:@"UA-XXXXXXXXX"
                                          dispatchPeriod:kGANDispatchPeriodSec
                                                delegate:nil];




 •    PV

     •   viewDidLoad, viewWillAppear

     •   (BK)                           /
     [[GANTracker sharedTracker] trackPageview:@"/page" withError:&error]
iPhone

 •
     •                Delegate
     [[GANTracker sharedTracker] trackEvent:@"my_category"
                                     action:@"my_action"
                                      label:@"my_label"
                                      value:-1
                                  withError:&error]


 •
     •             applicationWillTerminate
         applicationDidEnterBackground:
     •   (BK)
      [[GANTracker sharedTracker] stopTracker];
iPhone

 •
 •
 •
 - (void)viewWillAppear:(BOOL)animated {
     GA_TRACK_CLASS
 }



 •
 -(void)configButtonPushed:(id)sender {
     GA_TRACK_METHOD
 }
•   1   ,1   ,1


•
•   View
•
•       ViewController

•               ≠

    •
•   Google Analytics for iOS

•
•
•
#define GA_TRACKPAGE(PAGE) { NSError *error; if (![[GANTracker sharedTracker]
trackPageview:[NSString stringWithFormat:@"/%@", PAGE] withError:&error]) { LOG
(@"%@",error.helpAnchor); } LOG(@"GA /%@", PAGE); };

#define GA_TRACKEVENT(EVENT,ACTION,LABEL,VALUE) { NSError *error; if (![[GANTracker
sharedTracker] trackEvent:EVENT action:ACTION label:LABEL value:VALUE withError:&error])
{ LOG(@"%@",error.helpAnchor); } LOG(@"GA %@/%@/%@", EVENT, ACTION, LABEL); };

#define GA_TRACK_CLASS   GA_TRACKPAGE(NSStringFromClass([self class]));

#define GA_TRACK_METHOD GA_TRACKEVENT(NSStringFromClass([self class]),
NSStringFromSelector(_cmd), @””, -1); }

Mais conteúdo relacionado

Semelhante a Google Analytics & iPhone

e10sとアプリ間通信
e10sとアプリ間通信e10sとアプリ間通信
e10sとアプリ間通信Makoto Kato
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for DevelopersRubén Martínez
 
MNT2014: Mobile Hibrido com Phonegap
MNT2014: Mobile Hibrido com PhonegapMNT2014: Mobile Hibrido com Phonegap
MNT2014: Mobile Hibrido com PhonegapLoiane Groner
 
The Flash Facebook Cookbook - FlashMidlands
The Flash Facebook Cookbook - FlashMidlandsThe Flash Facebook Cookbook - FlashMidlands
The Flash Facebook Cookbook - FlashMidlandsJames Ford
 
Droid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheimDroid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheimDroidcon Berlin
 
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013Aaron Parecki
 
Leveraging parse.com for Speedy Development
Leveraging parse.com for Speedy DevelopmentLeveraging parse.com for Speedy Development
Leveraging parse.com for Speedy DevelopmentAndrew Kozlik
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for DevelopersParadigma Digital
 
淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2Wen-Tien Chang
 
Agile startup company management and operation
Agile startup company management and operationAgile startup company management and operation
Agile startup company management and operationJiang Zhu
 
打造你的第一個iPhone APP
打造你的第一個iPhone APP打造你的第一個iPhone APP
打造你的第一個iPhone APP彼得潘 Pan
 
ICS ホットトピック
ICS ホットトピックICS ホットトピック
ICS ホットトピックMakoto Yamazaki
 
Designerfair 2011
Designerfair 2011Designerfair 2011
Designerfair 2011douglee650
 
Play Framework workshop: full stack java web app
Play Framework workshop: full stack java web appPlay Framework workshop: full stack java web app
Play Framework workshop: full stack java web appAndrew Skiba
 
Android Bazaar and Conference 2011 Winter
Android Bazaar and Conference 2011 WinterAndroid Bazaar and Conference 2011 Winter
Android Bazaar and Conference 2011 Wintergree_tech
 
Try EarlGrey | 20161118 iOS Test Night
Try EarlGrey | 20161118 iOS Test NightTry EarlGrey | 20161118 iOS Test Night
Try EarlGrey | 20161118 iOS Test Nightichiko_revjune
 
Google Glass Meetup 3/3 - 8 Janvier 2014
Google Glass Meetup 3/3 - 8 Janvier 2014Google Glass Meetup 3/3 - 8 Janvier 2014
Google Glass Meetup 3/3 - 8 Janvier 2014Glasscamp
 
Frontend Resource Intergration and Sharing - Modern Web 2016 review
Frontend Resource Intergration and Sharing - Modern Web 2016 reviewFrontend Resource Intergration and Sharing - Modern Web 2016 review
Frontend Resource Intergration and Sharing - Modern Web 2016 reviewLaura Lee
 

Semelhante a Google Analytics & iPhone (20)

e10sとアプリ間通信
e10sとアプリ間通信e10sとアプリ間通信
e10sとアプリ間通信
 
Flutter 4
Flutter 4Flutter 4
Flutter 4
 
iOS 7 SDK特訓班
iOS 7 SDK特訓班iOS 7 SDK特訓班
iOS 7 SDK特訓班
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for Developers
 
MNT2014: Mobile Hibrido com Phonegap
MNT2014: Mobile Hibrido com PhonegapMNT2014: Mobile Hibrido com Phonegap
MNT2014: Mobile Hibrido com Phonegap
 
The Flash Facebook Cookbook - FlashMidlands
The Flash Facebook Cookbook - FlashMidlandsThe Flash Facebook Cookbook - FlashMidlands
The Flash Facebook Cookbook - FlashMidlands
 
Droid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheimDroid con2013 tracking user behavior_tennyson_manheim
Droid con2013 tracking user behavior_tennyson_manheim
 
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
 
Leveraging parse.com for Speedy Development
Leveraging parse.com for Speedy DevelopmentLeveraging parse.com for Speedy Development
Leveraging parse.com for Speedy Development
 
Google Analytics for Developers
Google Analytics for DevelopersGoogle Analytics for Developers
Google Analytics for Developers
 
淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2淺談 Startup 公司的軟體開發流程 v2
淺談 Startup 公司的軟體開發流程 v2
 
Agile startup company management and operation
Agile startup company management and operationAgile startup company management and operation
Agile startup company management and operation
 
打造你的第一個iPhone APP
打造你的第一個iPhone APP打造你的第一個iPhone APP
打造你的第一個iPhone APP
 
ICS ホットトピック
ICS ホットトピックICS ホットトピック
ICS ホットトピック
 
Designerfair 2011
Designerfair 2011Designerfair 2011
Designerfair 2011
 
Play Framework workshop: full stack java web app
Play Framework workshop: full stack java web appPlay Framework workshop: full stack java web app
Play Framework workshop: full stack java web app
 
Android Bazaar and Conference 2011 Winter
Android Bazaar and Conference 2011 WinterAndroid Bazaar and Conference 2011 Winter
Android Bazaar and Conference 2011 Winter
 
Try EarlGrey | 20161118 iOS Test Night
Try EarlGrey | 20161118 iOS Test NightTry EarlGrey | 20161118 iOS Test Night
Try EarlGrey | 20161118 iOS Test Night
 
Google Glass Meetup 3/3 - 8 Janvier 2014
Google Glass Meetup 3/3 - 8 Janvier 2014Google Glass Meetup 3/3 - 8 Janvier 2014
Google Glass Meetup 3/3 - 8 Janvier 2014
 
Frontend Resource Intergration and Sharing - Modern Web 2016 review
Frontend Resource Intergration and Sharing - Modern Web 2016 reviewFrontend Resource Intergration and Sharing - Modern Web 2016 review
Frontend Resource Intergration and Sharing - Modern Web 2016 review
 

Mais de Satoshi Asano

GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法
GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法
GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法Satoshi Asano
 
I phoneアプリの通信エラー処理
I phoneアプリの通信エラー処理I phoneアプリの通信エラー処理
I phoneアプリの通信エラー処理Satoshi Asano
 
ARCでめちゃモテiOSプログラマー
ARCでめちゃモテiOSプログラマーARCでめちゃモテiOSプログラマー
ARCでめちゃモテiOSプログラマーSatoshi Asano
 
Webエンジニアから見たiOS5
Webエンジニアから見たiOS5Webエンジニアから見たiOS5
Webエンジニアから見たiOS5Satoshi Asano
 
iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜
iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜
iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜Satoshi Asano
 
iPhoneアプリ開発講座Web連携アプリ編
iPhoneアプリ開発講座Web連携アプリ編iPhoneアプリ開発講座Web連携アプリ編
iPhoneアプリ開発講座Web連携アプリ編Satoshi Asano
 
Asihttp requestについて
Asihttp requestについてAsihttp requestについて
Asihttp requestについてSatoshi Asano
 
バックグラウンド位置取得について
バックグラウンド位置取得についてバックグラウンド位置取得について
バックグラウンド位置取得についてSatoshi Asano
 
iPhoneアプリ開発講座入門編
iPhoneアプリ開発講座入門編iPhoneアプリ開発講座入門編
iPhoneアプリ開発講座入門編Satoshi Asano
 
集合知プログラミング第2章復習
集合知プログラミング第2章復習集合知プログラミング第2章復習
集合知プログラミング第2章復習Satoshi Asano
 
Algorithm Introduction #18 B-Tree
Algorithm Introduction #18 B-TreeAlgorithm Introduction #18 B-Tree
Algorithm Introduction #18 B-TreeSatoshi Asano
 

Mais de Satoshi Asano (11)

GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法
GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法
GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法
 
I phoneアプリの通信エラー処理
I phoneアプリの通信エラー処理I phoneアプリの通信エラー処理
I phoneアプリの通信エラー処理
 
ARCでめちゃモテiOSプログラマー
ARCでめちゃモテiOSプログラマーARCでめちゃモテiOSプログラマー
ARCでめちゃモテiOSプログラマー
 
Webエンジニアから見たiOS5
Webエンジニアから見たiOS5Webエンジニアから見たiOS5
Webエンジニアから見たiOS5
 
iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜
iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜
iPhoneアプリとAndroidアプリを比較する〜はてなブックマーク開発の現場から〜
 
iPhoneアプリ開発講座Web連携アプリ編
iPhoneアプリ開発講座Web連携アプリ編iPhoneアプリ開発講座Web連携アプリ編
iPhoneアプリ開発講座Web連携アプリ編
 
Asihttp requestについて
Asihttp requestについてAsihttp requestについて
Asihttp requestについて
 
バックグラウンド位置取得について
バックグラウンド位置取得についてバックグラウンド位置取得について
バックグラウンド位置取得について
 
iPhoneアプリ開発講座入門編
iPhoneアプリ開発講座入門編iPhoneアプリ開発講座入門編
iPhoneアプリ開発講座入門編
 
集合知プログラミング第2章復習
集合知プログラミング第2章復習集合知プログラミング第2章復習
集合知プログラミング第2章復習
 
Algorithm Introduction #18 B-Tree
Algorithm Introduction #18 B-TreeAlgorithm Introduction #18 B-Tree
Algorithm Introduction #18 B-Tree
 

Google Analytics & iPhone

  • 1. Google Analytics & iPhone id:ninjinkun, @ninjinkun
  • 2. Google Analytics • Google Analytics for iOS • iPhone •
  • 3. Google Analytics • Web • • (PV), (UU) • • • Web JS •
  • 4. Google Analytics • • • • AB •
  • 5. Google Analytics for iOS • iOS Google Analytics • Android • Google Analytics UI • Web • Obj-C •
  • 6. Google Analytics for iOS • • • UI • • • ( )
  • 7. iPhone • Project • GATracker.h • GATracker.a • ( )sqlite •
  • 8. iPhone • • application:didFinishLaunchingWithOptions: [[GANTracker sharedTracker] startTrackerWithAccountID:@"UA-XXXXXXXXX" dispatchPeriod:kGANDispatchPeriodSec delegate:nil]; • PV • viewDidLoad, viewWillAppear • (BK) / [[GANTracker sharedTracker] trackPageview:@"/page" withError:&error]
  • 9. iPhone • • Delegate [[GANTracker sharedTracker] trackEvent:@"my_category" action:@"my_action" label:@"my_label" value:-1 withError:&error] • • applicationWillTerminate applicationDidEnterBackground: • (BK) [[GANTracker sharedTracker] stopTracker];
  • 10. iPhone • • • - (void)viewWillAppear:(BOOL)animated { GA_TRACK_CLASS } • -(void)configButtonPushed:(id)sender { GA_TRACK_METHOD }
  • 11. 1 ,1 ,1 •
  • 12. View
  • 13. • • ViewController • ≠ •
  • 14. Google Analytics for iOS • • •
  • 15. #define GA_TRACKPAGE(PAGE) { NSError *error; if (![[GANTracker sharedTracker] trackPageview:[NSString stringWithFormat:@"/%@", PAGE] withError:&error]) { LOG (@"%@",error.helpAnchor); } LOG(@"GA /%@", PAGE); }; #define GA_TRACKEVENT(EVENT,ACTION,LABEL,VALUE) { NSError *error; if (![[GANTracker sharedTracker] trackEvent:EVENT action:ACTION label:LABEL value:VALUE withError:&error]) { LOG(@"%@",error.helpAnchor); } LOG(@"GA %@/%@/%@", EVENT, ACTION, LABEL); }; #define GA_TRACK_CLASS GA_TRACKPAGE(NSStringFromClass([self class])); #define GA_TRACK_METHOD GA_TRACKEVENT(NSStringFromClass([self class]), NSStringFromSelector(_cmd), @””, -1); }