前往GU首頁
這段文字是來自GU官方網站的技術性JavaScript程式碼,並非新聞稿。它實現了分析功能(Google Tag Manager, Boomerang),用於追蹤橫跨網站和行動應用程式的用戶行為,並監控網站性能。
📋 文章處理履歷
- 📰 發表: 2026年4月4日 00:03
這段文字並非標準的新聞稿,而是一段嵌入在GU官方電子商務網站中的JavaScript程式碼片段。以下是其功能說明。
### 功能摘要
該腳本的主要目的是建立一個精密的追蹤與分析系統。它能區分用戶是透過標準網頁瀏覽器瀏覽,還是使用GU的原生iOS或Android應用程式。這使得客製化的分析和用戶體驗成為可能。
### 詳細解析
1. **行動應用程式檢測**:
程式碼會檢查瀏覽器的 `userAgent` 字串,尋找如 `/gu ios application/i` 或 `/gu android application/i` 的模式。
```javascript
var GU_MOBILEAPP_PRESENT = false;
var guIOSPattern = /gu ios application/i;
var guAndroidPattern = /gu android application/i;
var userAgent = navigator.userAgent;
```
如果找到匹配項,它會動態載入一個特定的JavaScript檔案(`mobileapp.js`),並將旗標 `GU_MOBILEAPP_PRESENT` 設為 `true`。
2. **分析事件紀錄**:
它定義了 `logEvent` 和 `setUserProperty` 兩個函數,作為連接到原生應用程式分析框架(Firebase Analytics)的橋樑。這使得網頁內容(在App內部瀏覽時)能夠將追蹤數據發送到與原生App相同的分析後端。
```javascript
function logEvent(name, params) {
if (window.AnalyticsWebInterface) { // Android
window.AnalyticsWebInterface.logEvent(name, JSON.stringify(params));
} else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.firebase) { // iOS
var message = { command: 'logEvent', name: name, parameters: params };
window.webkit.messageHandlers.firebase.postMessage(message);
}
}
```
3. **Google Tag Manager (GTM) 整合**:
該腳本使用ID `GTM-NMD6F5H` 初始化Google的代碼管理工具(Tag Manager)。這是一種標準方法,用於管理各種追蹤代碼(如Google Analytics、行銷像素等),而無需為每個代碼都修改網站程式碼。
```javascript
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;var n=d.querySelector('[nonce]');
n&&j.setAttribute('nonce',n.nonce||n.getAttribute('nonce'));f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-NMD6F5H');
```
4. **使用Boomerang進行真實使用者監控(RUM)**:
腳本包含了Akamai mPulse的Boomerang程式碼片段。此工具用於真實使用者監控(Real User Monitoring),它直接從終端使用者的瀏覽器收集性能指標(如頁面載入時間、網絡延遲)。這有助於GU了解並優化其網站在真實世界中的性能。
```javascript
// window.BOOMR_API_key="9VM32-GXRFY-Y2BSZ-NBJZQ-HQ2VR"
// ... (Boomerang 載入器程式碼) ...
```
總之,這段程式碼顯示GU正大力投資於數據驅動的方法,以了解其客戶並優化其數位平台。
### 功能摘要
該腳本的主要目的是建立一個精密的追蹤與分析系統。它能區分用戶是透過標準網頁瀏覽器瀏覽,還是使用GU的原生iOS或Android應用程式。這使得客製化的分析和用戶體驗成為可能。
### 詳細解析
1. **行動應用程式檢測**:
程式碼會檢查瀏覽器的 `userAgent` 字串,尋找如 `/gu ios application/i` 或 `/gu android application/i` 的模式。
```javascript
var GU_MOBILEAPP_PRESENT = false;
var guIOSPattern = /gu ios application/i;
var guAndroidPattern = /gu android application/i;
var userAgent = navigator.userAgent;
```
如果找到匹配項,它會動態載入一個特定的JavaScript檔案(`mobileapp.js`),並將旗標 `GU_MOBILEAPP_PRESENT` 設為 `true`。
2. **分析事件紀錄**:
它定義了 `logEvent` 和 `setUserProperty` 兩個函數,作為連接到原生應用程式分析框架(Firebase Analytics)的橋樑。這使得網頁內容(在App內部瀏覽時)能夠將追蹤數據發送到與原生App相同的分析後端。
```javascript
function logEvent(name, params) {
if (window.AnalyticsWebInterface) { // Android
window.AnalyticsWebInterface.logEvent(name, JSON.stringify(params));
} else if (window.webkit && window.webkit.messageHandlers && window.webkit.messageHandlers.firebase) { // iOS
var message = { command: 'logEvent', name: name, parameters: params };
window.webkit.messageHandlers.firebase.postMessage(message);
}
}
```
3. **Google Tag Manager (GTM) 整合**:
該腳本使用ID `GTM-NMD6F5H` 初始化Google的代碼管理工具(Tag Manager)。這是一種標準方法,用於管理各種追蹤代碼(如Google Analytics、行銷像素等),而無需為每個代碼都修改網站程式碼。
```javascript
(function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':
new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],
j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src=
'https://www.googletagmanager.com/gtm.js?id='+i+dl;var n=d.querySelector('[nonce]');
n&&j.setAttribute('nonce',n.nonce||n.getAttribute('nonce'));f.parentNode.insertBefore(j,f);
})(window,document,'script','dataLayer','GTM-NMD6F5H');
```
4. **使用Boomerang進行真實使用者監控(RUM)**:
腳本包含了Akamai mPulse的Boomerang程式碼片段。此工具用於真實使用者監控(Real User Monitoring),它直接從終端使用者的瀏覽器收集性能指標(如頁面載入時間、網絡延遲)。這有助於GU了解並優化其網站在真實世界中的性能。
```javascript
// window.BOOMR_API_key="9VM32-GXRFY-Y2BSZ-NBJZQ-HQ2VR"
// ... (Boomerang 載入器程式碼) ...
```
總之,這段程式碼顯示GU正大力投資於數據驅動的方法,以了解其客戶並優化其數位平台。
常見問題
這段程式碼是做什麼用的?
它用於判斷網站訪客是否正在使用GU的官方行動應用程式,並透過Google Analytics等工具來追蹤和分析用戶行為。
為什麼這很重要?
這是一項不可或缺的技術,用於根據顧客的使用環境(網站 vs App)提供最佳體驗,並衡量行銷活動的成效。
Boomerang是什麼?
它是一種在真實用戶環境中測量網站性能(如顯示速度和響應能力)的工具,目的在於提升顧客體驗。