Skip to main content

Hướng dẫn thiết lập Google Tag Manager với Google Analytic trên ứng dụng iOS

Google Tag Manager là gì?

Google Tag Manager (GTM) là bên trung gian giữa những ứng dụng của Google như: Google Analytics, Google AdWords, DoubleClick... Chỉ một vài động tác thiết lập bạn có thể liên kết những tài khoản đó lại với GTM. Sau khi bạn đã liên kết những tài khoản đó lại, mỗi khi ứng dụng của bạn gởi request lên GTM, GTM sẽ tự động gửi dữ liệu đó đến những dịch vụ tương ứng (Ví dụ như: Google Analytics để phân tích hành vi người dùng).
GTM cho phép bạn thay đổi những thiết lập đó tại bất kỳ thời điểm nào chỉ với vài động tác nhấn chuột mà không cần phải build lại ứng dụng. Vì thế bạn không phải sợ bỏ lỡ công việc đo lường  hoặc việc kinh doanh của mình.

Ưu điểm:
- Bạn có thể gởi 1 request lên GTM để GTM tự động gởi những thông tin đó đến những service khác như Google Analytics, Google AdWords, DoubleClick...
- Bạn có thể sửa mà không sợ ảnh hưởng đến ứng dụng đang chạy.

Nhược điểm:
- Khó thiết lập được hết những chức năng của service trong GA, AdWords, DoubleClick.
- Bạn muốn thiết lập như thế nào phải hiểu service mình đang dùng như GA có những tham số gì, có những loại report nào.

Thiết lập Google Tag Manager với Google Analytics:

Trong bài hướng dẫn này mình sẽ hướng dẫn các bạn cách thiết lập đơn giản để có thể gởi dữ liệu lên Google Analytics (GA) thông qua service của Google Tag Manager.

Bước 1: Lấy thông tin ID của ứng dụng trên tài khoản Google Analytics

1. Bạn phải có ứng dụng trên Google Analytics. Nếu bạn chưa có thì bạn có thể  tạo bằng cách vào trang https://www.google.com/analytics/ .
2. Đăng nhập theo tài khoản Google và tạo 1 ứng dụng trên GA.
3. Hãy để ý mã số ID của ứng dụng (Ví dụ như: UA-12121212-1 đằng sau tên ứng dụng) đó để khai báo khi thiết lập trên GTM. Như hình sau:



Bước 2: Thiết lập tài khoản GTM với GA
1. Bạn vào trang đăng ký Google Tag Manager và "Sign-in" và Google Tag Manager:

2. Sau khi đăng nhập vào GTM thành công màn hình đầu tiên bạn thấy tại tab "Accounts". Bạn phải đăng ký 1 tài khoản bằng cách nhấn vào chữ "Create Account":

Bước thứ nhất của màn hình này là nhập tên công ty (Ví dụ như My Company), sau khi nhập xong nút Continue sẽ được hiện ra và bạn qua bước thứ 2 là đăng ký Container, bạn có thể chọn nền tảng (như web, iOS hay Android) cho loại account này. Sau khi đăng ký xong sẽ hiển thị như màn hình sau:
Tại đây bạn để ý Container ID. Nếu bạn muốn tạo 1 ứng dụng khác cùng công ty này thì nhấn vào icon setting để hiển thị ra popup như bên phải.

3. Thiết lập thông số cho Container. Bằng cách bạn nhấn vào chính xác Container mình muốn thiết lập. Nhấn chữ 'Tags' để mở màn hình danh sách những tags và chọn new 1 tag mới. Trong phần tag này bạn cần nhập những thông tin như sau:
- Choose Product: Tại field này cho bạn chọn Tag này sử dụng dịch vụ nào ví dụ như Google Analytics.
- Configure Tag: Mình thiết lập thống kê theo màn hình vì thế mình chọn những thông số như Universal Analytics, Tracking ID, Track Type là App View, Fields to Set.
- Fire On: Thiết lập sự kiện (Trigger) cho tag này.

4. Khi tạo Trigger thì bạn thiết lập như sau:
- Choose Event: Custom
- Fire on: "equals openScreen". Field này dùng để xác định khi client gởi đến GTM sẽ thoả theo điều kiện này sẽ thực thi đúng trigger này cho đúng tag mà mình đã tạo. Nói chung nó là điều kiện để GTM biết mình thực thi sự kiện nào đó.

5. Trong variable bạn cần tạo những biến cần thiết cho sự kiện thống kê những màn hình như screenId, screenName.

6. Sau khi thiết lập xong những thông số này bước tiếp theo là bạn cần phải Publish nó bằng cách nhấn nào nút Overview. Sau đó góc trên bên phải nó nút Publish và nhấn vào để Publish version này.
Sau này nếu bạn sửa mà bạn chưa Publish thì những cách sửa đó vẫn chưa được hoạt động và không bị ảnh hưởng đến code đang thực thi.

7. Sau khi bạn Publish thành công. Bạn nhấn vào tab 'Version' để tải file thiết lập đó về. Mình dùng file này để thêm vào project trên XCode:

Thêm file vừa tải về để cùng với library của GTM như sau:

8. Code để bạn gởi request lên GTM được viết như sau:
TAGDataLayer *dataLayer = [TAGManager instance].dataLayer;
[dataLayer push:@{@"event": @"openScreen", @"screenName": controller.screenName,
@"screenId":controller.screenId,@"controllerName":controller.controllerName}];

Bạn chỉ cần chạy đoạn code này trên từng màn hình để kiểm tra số lần user vào màn hình và kiểm tra thông tin có được cập nhật trên Google Analytics hay không? Nếu bạn thấy có thì tức là bạn đã thiết lập thành công.

Ref documents:

- Google Tag Manager
- Setup GTM with Swift

Comments

Popular posts from this blog

So sánh những framework hỗ trợ viết ứng dụng trên SmartPhone

Khi lập trình trên SmartPhone bạn không nhất thiết phải học những ngôn ngữ đặc thù trên từng loại hệ điều hành thì mới có thể lập trình được. Ví dụ như muốn lập trình trên iOS thì phải học ngôn ngữ Objective-C hay Swift, muốn lập trình được trên Android thì học ngôn ngữ Java, muốn lập trình trên WinPhone thì học ngôn ngữ C#. Hiện nay có rất nhiều những framework giúp đỡ cho các bạn rất nhiều khi các bạn muốn viết trên nhiều nền tảng smartphone bằng ngôn ngữ mà bạn yêu thích. Theo mình thấy thì hiện nay có 3 loại như: Native App, Hybrid Mobile App, Native Cross-Platform App. 1. Native App: là những ứng dụng sử dụng những framework và ngôn ngữ lập trình của hệ thống cung cấp sẵn. Ví dụ như bạn muốn lập trình iOS thì phải cài XCode, học ngôn ngữ Objective-C hay Swift, lập trình Android thì cài Android Studio và học ngôn ngữ Java. - Ưu điểm: Hiệu năng thực thi ứng dụng trên nền tảng nhanh và hiệu quả. Không bị phụ thuộc vào bên thứ 3. Khi phát hành ứng dụng trên những Mobile Store cũng dễ...

Phân biệt biến kiểu Property, Public, Protected, Private trong ngôn ngữ Objective C

- Theo kinh nghiệm làm việc của mình với các bạn trong nhóm khi lập trình Objective-C và cũng đọc qua code của những project cũ. Ít khi nào mọi người để ý và khai báo đúng với ý đồ của từng đối tượng, và vi phạm quy tắc tính đóng gói, tính bảo mật thông tin của đối tượng trong lập trình hướng đối tượng (Tham khảo lý thuyết Lập trình hướng đối tượng tại trang Wiki ). - Theo ngôn ngữ lập trình Java, người ta khuyến khích mỗi khi dùng biến kiểu public thì nên đặt 1 biến private và hỗ trợ những hàm getter/setter để truy suất biến private đó.     + Nguyên nhân họ nói là đảm bảo tính đóng gói, và nếu sau này có thay đổi gì trên biến đó bạn có thể sửa được dễ dàng, chi tiết về vấn đề này ở đây .     + Nói tóm tại thì nguyên nhân chính là có thể kiểm soát được truy xuất đến giá trị của 1 đối tượng từ bên ngoài, có thể dễ dàng mở rộng code bằng cách override lại những hàm getter/setter. - Các bạn có thể áp dụng nguyên tắc đó từ bên Java qua ngôn ngữ lập trình Object...

Hướng dẫn dùng Serverless sử dụng Lambda AWS

1. Lambda function là gì? AWS Lambda cho phép bạn chạy mã mà không cần cung cấp hay quản lý máy chủ. Bạn chỉ phải trả tiền cho thời gian xử lý thông tin đã sử dụng. Với Lambda, bạn có thể chạy mã cho gần như toàn bộ các loại ứng dụng hay dịch vụ backend – tất cả đều không cần quản trị. Chỉ cần tải đoạn mã của bạn lên và Lambda sẽ lo hết những gì cần làm để chạy và mở rộng mã của bạn với mức độ có sẵn cao. Bạn có thể thiết lập mã của bạn tự động kích hoạt từ các dịch vụ AWS khác, hoặc gọi trực tiếp từ bất cứ ứng dụng web hay di động nào. Chi phí chạy trên lambda function rẻ so với chi phí bạn mua 1 con server, duy trì và quản trị nó ( ví dụ như bạn phải xử lý bất đồng bộ những request, khi lượng user bạn tăng đột biến bạn phải có cơ chế auto scale, chứ không thì server bị sẽ bị treo, khi server bị treo bạn phải tự động khởi động lại sẽ mất thời gian,... ).