PhoneGap 外掛程式方法

您可以使用 iOS PhoneGap 外掛程式方法來完成各種作業。

在您想要使用追蹤的 html 檔案中,對 <head> 標記新增下列內容:

<script type="text/javascript" charset="utf-8" src="ADB_Helper.js"></script>

設定方法

  • getPrivacyStatus

    傳回目前使用者的隱私權狀態。可用的狀態包括:

    • ADB.optedIn,會立即傳送點擊。

    • ADB.optedOut,會捨棄點擊。

    • ADB.optUnknown如果您的報表套裝​已啟用​時間戳記,會儲存點擊直到隱私權狀態變更為選擇加入 (屆時會傳送點擊) 或選擇退出 (屆時會捨棄點擊) 為止。如果您的報表套裝​沒有​啟用時間戳記,則會捨棄點擊,直到隱私權狀態變更為選擇加入為止。
      預設值設定在 ADBMobileConfig.json 檔案中。

      • 此方法的範例程式碼如下:

        getPrivacyStatus(function (value){myTempVal = value;},function(){myTempVal = null;});
        
  • setPrivacyStatus

    將目前使用者的隱私權狀態設為 status。您可以設定下列其中一種狀態:

    • ADB.optedIn,會立即傳送點擊。

    • ADB.optedOut,會捨棄點擊。

    • ADB.optUnknown – 如果您的報表套裝​已啟用​時間戳記,會儲存點擊直到隱私權狀態變更為選擇加入 (屆時會傳送點擊) 或選擇退出 (屆時會捨棄點擊) 為止。

      如果您的報表套裝​沒有​啟用時間戳記,則會捨棄點擊,直到隱私權狀態變更為選擇加入為止。

    • 此方法的範例程式碼如下:

        ADB.setPrivacyStatus('ADB.optedIn'); 
      
  • getLifetimeValue

    傳回目前使用者的期限值。預設值為 0。

    • 此方法的範例程式碼如下:

      ADB.getLifetimeValue(function(value){myTempVal = value;},function(){myTempVal = null;});
      
  • setDebugLogging

    啟用 (true) 或停用 (false) 檢視偵錯資訊。預設情況下,該變數為 false

    • 此方法的範例程式碼如下:

      ADB.setDebugLogging(true);
      
  • getVersion

    取得資料庫版本。

    • 此方法的範例程式碼如下:

      ADB.getVersion(function(value){versionNum = value;},function(){versionNum=1.0;}); 
      
  • trackingIdentifier

    傳回自動產生的訪客識別碼。這是應用程式專屬的唯一訪客 ID,會在初次啟動時產生,並會從此時間點儲存及使用。ID 會在應用程式升級時保留,並在解除安裝應用程式時移除。

    秘訣

    如果您的應用程式從 Experience Cloud 3.x 升級至 4.x SDK,應用程式會擷取先前的訪客 ID (自訂或自動產生) 並將其儲存為自訂使用者識別碼 (請參閱下方的 getUserIdentifier)。這樣在 SDK 升級之後即可保留訪客資料。若為全新安裝的 4.x SDK,則使用者識別碼為 null,且會使用追蹤識別碼。

    • 此方法的範例程式碼如下:

       ADB.trackingIdentifier(function(value){myTempVal = value;},function(){myTempVal = null;}); 
      
  • getUserIdentifier

    若已設定自訂識別碼,將會傳回自訂使用者識別碼,否則會傳回 null。預設值為 null

    • 此方法的範例程式碼如下:

      getUserIdentifier(function(value){myTempVal = value;},function(){myTempVal = null;}); 
      
  • setUserIdentifier

    將使用者識別碼設為 identifier

    • 此方法的範例程式碼如下:

      ADB.setUserIdentifier('testUser');
      
  • setPushIdentifier

    設定用於推送通知的裝置代號。

    • 此方法的語法如下:

      ADB.setPushIdentifier(pushIdentifier,success,fail);
      
    • 此方法的程式碼範例如下:

      ADB.setPushIdentifier('test_push_identifier',function(value){alert('success');},function(value){alert('fail');
      
  • keepLifecycleSessionAlive

    將生命週期工作階段的偏好設定為保持運作。

    重要

    呼叫 keepLifecycleSessionAlive 可防止您的應用程式下次從背景繼續執行時啟動新的工作階段。只有在應用程式註冊了接收背景通知時,才能使用此方法。

    • 此方法的範例程式碼如下:

      ADB.keepLifecycleSessionAlive();
      
  • trackingSendQueuedHits

    不論目前的批次選項為何,都會強制資料庫傳送排入佇列的所有點擊。

    • 此方法的範例程式碼如下:

      ADB.trackingSendQueuedHits();
      
  • trackingGetQueueSize

    取得或設定離線佇列中儲存的追蹤呼叫數目。

    • 此方法的範例程式碼如下:

      ADB.trackingGetQueueSize(function(value){myTempVal = value;},function(){myTempVal = null;}); 
      
  • trackingClearQueue

    移除離線佇列中所有儲存的追蹤呼叫。

    注意

    當手動清除佇列時,請務必小心,因為此動作無法復原。

    • 此方法的範例程式碼如下:

      ADB.trackingClearQueue(function(value){myTempVal = value;},function(){myTempVal = null;}); 
      
  • keepLifecycleSessionAlive

    向 SDK 指出不論設定檔案中的生命週期工作階段逾時值為何,您下次從背景恢復時都不應啟動新的工作階段。

    重要

    重要:此方法旨在用於在背景中註冊接收通知的應用程式,且只有當應用程式於背景執行時,才應從此時執行的程式碼中呼叫此方法。

    • 此方法的範例程式碼如下:

      ADB.keepLifecycleSessionAlive();
      
  • collectLifecycleData

    向 SDK 指出應在 SDK 的所有解決方案中收集、使用其生命週期資料。如需詳細資訊,請參閱生命週期量度

    • 此方法的範例程式碼如下:

      ADB.collectLifecycleData(); 
      

PII 方法

  • collectPII

    提交 PII 收集要求。

    • 此方法的語法如下:

      ADB.collectPII(piiData,success,fail); 
      
    • 此方法的程式碼範例如下:

      ADB.collectPII({'k1':'v1','k2':'v2','k3':'v3'}, function (value) { alert('success'); },function (value) { alert('fail'); });
      

追蹤方法

  • trackAdobeDeepLink

    追蹤 Adobe 深層連結點進。

    秘訣

    如果生命週期呼叫是啟動事件,會附加 Adobe Link 資料,否則將會額外傳送呼叫。

    • 此方法的語法如下:

      ADB.trackAdobeDeepLink(deeplinkURL,success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.trackAdobeDeepLink('xyz-deeplink-url',function(value){alert('success');},function(value){alert('fail');}); 
      
  • trackPushMessageClickthrough

    追蹤推送訊息點進。

    • 此方法的語法如下:

      ADB.trackPushMessageClickthrough(userInfo,success,fail); 
      
    • 此方法的範例程式碼如下:

      ADB.trackPushMessageClickthrough({'k1':'v1','k2':'v2','k3':'v3'},function(value){alert('success');},function(value){alert('fail');}); 
      
  • trackLocalNotificationClickThrough

    追蹤本機通知訊息點進。

    • 此方法的語法如下:

      ADB.trackLocalNotificationClickThrough(userInfo,success,fail); 
      
    • 此方法的範例程式碼如下:

      ADB.trackLocalNotificationClickThrough({'k1':'v1','k2':'v2','k3':'v3'},function(value){alert('success');},function(value){alert('fail');}); 
      
  • trackState

    使用可選內容資料來追蹤應用程式。狀態為應用程式中可用的檢視,例如 home dashboardapp settingscart 等。這些狀態類似於網站上的頁面,且 trackState 呼叫會遞增頁面檢視。cData 為 JSON 物件,具有要在內容資料中傳送的索引鍵/值組。

    • 此方法的語法如下:

      ADB.trackState(stringstateName[,JSONcData]); 
      
    • 此方法的範例程式碼如下:

      ADB.trackState("loginpage");
      
        ADB.trackState("loginpage",{"user":"john","remember":"true"});
      
  • trackAction

    追蹤應用程式中的動作。動作是發生在應用程式中而且您想測量的項目,包括 loginsbanner tapsfeed subscriptions 以及其他量度。

    • 此方法的語法如下:

      ADB.trackAction(stringaction[,JSONcData]);
      
    • 此方法的範例程式碼如下:

      ADB.trackAction("login");
      
      ADB.trackAction("login",{"user":"john","remember":"true"})
      
  • trackActionFromBackground

    追蹤在背景發生的動作。在特定情境中抑制生命週期事件地觸發。

    • 此方法的語法如下:

      ADB.trackActionFromBackground(stringaction[,JSONcData]); 
      
    • 此方法的範例程式碼如下:

      ADB.trackActionFromBackground("login");
      
      ADB.trackActionFromBackground("login",{"user":"john","remember":"true"});
      
  • trackLocation

    傳送目前的 x 和 y 座標。也會使用 ADBMobileConfig.json 檔案中已定義的地標,來判斷提供為參數的位置是否在您的任何 POI 內。如果目前座標位在定義的 POI 中,則會填入內容資料變數並與 trackLocation 呼叫一併傳送。

    • 此方法的語法如下:

       ADB.trackLocation(x,y[,JSONcData]);
      
    • 此方法的程式碼範例如下:

      ADB.trackLocation('40.431596','-111.893713');
      
  • trackLifetime​ValueIncrease

    增加使用者期限值的 amount

    • 此方法的語法如下:

      ADB.trackLifetimeValueIncrease(amount[,JSONcData]);
      
    • 此方法的程式碼範例如下:

      ADB.trackLifetimeValueIncrease('10.01');
      
  • trackTimed​ActionStart

    以名稱 action 啟動計時動作。如果您對已啟動的動作呼叫此方法,則會覆寫先前的計時動作。

    秘訣

    此呼叫不會傳送點擊。

    • 此方法的語法如下:

      ADB.trackTimedActionStart(action[,JSONcData]);
      
    • 此方法的程式碼範例如下:

      ADB.trackTimedActionStart("cartToCheckout"); 
      
  • trackTimed​ActionUpdate

    傳遞 cData 以更新與指定 action 關聯的內容資料。傳遞的 cData 會附加至指定動作的現有資料;如果已為 action 定義了相同鍵值,則會覆寫資料。

    秘訣

    此呼叫不會傳送點擊。

    • 此方法的語法如下:

      ADB.trackTimedActionUpdate(Stringaction[,JSONcData]);
      
    • 此方法的範例程式碼如下:

      ADB.trackTimedActionUpdate("cartToCheckout",{'SampleContextDataKey3':'SampleContextDataVal3','SampleContextDataKey4':'SampleContextDataVal4'}); 
      
  • trackTimed​ActionEnd

    結束計時動作。

    • 此方法的範例程式碼如下:

      ADB.trackTimedActionEnd("cartToCheckout");
      
  • trackingTimedActionExists

    傳回計時動作是否正在進行中。

    • 此方法的語法如下:

      ADB.trackingTimedActionExists(function(value){myTempVal = value;},function(){myTempVal = null;});
      

Target 方法

  • targetLoadRequest

    傳送要求至您設定的 Target 伺服器並傳回選件的字串值。

    • 此方法的語法如下:

      ADB.targetLoadRequest(success,fail,name,defaultContent,parameters); 
      
    • 此方法的範例程式碼如下:

      ADB.targetLoadRequest(function (value)
      {myTempVal = value;},function() {myTempVal = null;},'bannerOffer','none',{'hp':'hp_val_new','hp.company':'adobe','hp.val2':'hp_val2'}); 
      
  • targetLoadOrderConfirmRequest

    傳送要求至您設定的 Target 伺服器。

    • 此方法的語法如下:

      ADB.targetLoadOrderConfirmRequest(success,fail,name,orderId,orderTotal,productPurchaseId,parameters); 
      
    • 此方法的範例程式碼如下:

      ADB.targetLoadRequest(function(value){myTempVal=value;}
      ,function()
      {myTempVal = null; }
      ,'name','orderId','total','purchaseId'
      ,{'hp':'hp_val_new','hp.company':'adobe','hp.val2':'hp_val2'}
      ); 
      
  • targetClearCookies

    清除共用 Cookie 儲存空間中的 Target Cookie。

    • 此方法的範例程式碼如下:

      ADB.targetClearCookies();
      
  • targetLoadRequestWithNameWithLocationParameters

    處理 Target 服務要求。

    • 此方法的語法如下:

      ADB.targetLoadRequestWithNameWithLocationParameters(success,fail,name,defaultContent,profileParameters,orderParameters,mboxParameters,requestLocationParameters
      ); 
      
    • 此方法的範例程式碼如下:

      ADB.targetLoadRequestWithNameWithLocationParameters(function(){alert('success');},function(){alert('fail');},'bannerOffer','none',{'hp':'hp_val_new','hp.company':'adobe','hp.val2':'hp_val2'},{'hp':'hp_val_new','hp.company':'adobe','hp.val2':'hp_val2'},{'hp':'hp_val_new','hp.company':'adobe','hp.val2':'hp_val2'},{'hp':'hp_val_new','hp.company':'adobe','hp.val2':'hp_val2'}); 
      
  • targetLoadRequestWithName

    處理 Target 服務要求。

    • 此方法的語法如下:

      ADB.targetLoadRequestWithRequestName(success, fail, name, defaultContent, profileParameters, orderParameters, mboxParameters); 
      
    • 此方法的範例程式碼如下:

      ADB.targetLoadRequestWithName(
      function (value){ // handle target success} ,
      function() { // handle target failure }, 
      "mboxName",
      "defaultContent",
      {"profileParameters":"profileParametervalues"}
      {"orderId" : "32FGJ4XK" , "orderTotal" : "123.33" , "purchasedProductIds":"[46,34]" }
      {"mboxParameters":"mboxParametersvalues"}
      );
      
  • targetSessionID

    透過 Target 伺服器取得針對此訪客傳回之 SessionID Cookie 的值。

    • 此方法的語法如下:

      ADB.targetSessionID(success,fail); 
      
    • 此方法的範例程式碼如下:

        ADB.targetSessionID(function(value){alert(value);},function(value){alert('fail');}); 
      
  • targetPcID

    透過 Target 伺服器取得針對此訪客傳回之 PcID Cookie 的值。

    • 此方法的語法如下:

      ADB.targetPcID(success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.targetPcID(function(value){alert(value);},function(value){alert('fail');});
      
  • targetSetThirdPartyID

    設定 Target 的自訂訪客 ID。

    • 此方法的語法如下:

      ADB.targetSetThirdPartyID(thirdPartyID,success,fail); 
      
    • 以下是此群組的範例程式碼:

      ADB.targetSetThirdPartyID('test-third-party-id',function(value){alert('success');},function(value){alert('fail');}); 
      
  • targetThirdPartyID

    取得 Target 的自訂訪客 ID。

    • 此方法的語法如下:

      ADB.targetThirdPartyID(success,fail); 
      
    • 此方法的程式碼範例如下:

      ADB.targetThirdPartyID(function(value){alert(value);},function(value){alert('fail');}); 
      

贏取方法

  • acquisitionCampaignStartForApp

    就像使用者已按一下連結,讓開發者得以展開應用程式贏取促銷活動。此方法有助於建立手動贏取連結,並且可由您將應用程式商店重新導向 (例如使用 SKStoreView)。

    • 此方法的語法如下:

      ADB.acquisitionCampaignStartForApp(appId,data,success,fail); 
      
    • 此方法的程式碼範例如下:

      ADB.acquisitionCampaignStartForApp('0652024f-adcd-49f9-9bd7-2552a4564d2f',{'extraDataKey':'extraDataValue'},success,fail); 
      

廣告識別碼

在 Cordova 產生的 AppDelegate 中,呼叫 application:didFinishLaunchingWithOptions: 委派方法中的 [ADBMobile setAdvertisingIdentifier:]。如需詳細資訊,請參閱設定方法

Audience Manager 方法

  • audienceGetVisitorProfile

    取得訪客的設定檔。

    • 此方法的語法如下:

      ADB.audienceGetVisitorProfile();
      
    • 此方法的範例程式碼如下:

      ADB.audienceGetVisitorProfile(function(value){profile = value;},function(){profile = null;}); 
      
  • audienceGetDpuuid

    傳回 DPUUID。

    • 此方法的語法如下:

      ADB.audienceGetDpuuid(success,fail);
      
    • 此方法的範例程式碼如下:

       ADB.audienceGetDpuuid(function(value){dpuuid=value;},function(){dpuuid=null;}); 
      
  • audienceGetDpid

    傳回 DPID。

    • 此方法的語法如下:

       ADB.audienceGetDpid(success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.audienceGetDpid(function(value){dpid = value;},function(){dpid = null;}); 
      
  • audienceSetDpidAndDpuuid

    設定 DPID 和 DPUUID。

    • 此方法的語法如下:

      ADB.audienceSetDpidAndDpuuid(dpid,dpuuid,success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.audienceSetDpidAndDpuuid(‘dpid’,‘dpuuid’,function(){…},function(){…});
      
      ADB.audienceSetDpidAndDpuuid(‘dpid’,‘dpuuid’);
      
  • audienceSignalWithData

    處理 Audience Manager 服務要求。

    • 此方法的語法如下:

      ADB.audienceSignalWithData(success,fail,data);
      
    • 此方法的範例程式碼如下:

      ADB.audienceSignalWithData(function(){},function(){},{‘key1’:’value1’,‘key2’:‘value2’});
      
      ADB.audienceSignalWithData({‘key1’:’value1’,‘key2’:‘value2’}); 
      
  • audienceReset

    重設觀眾管理員 UUID 並清除目前的訪客描述檔。

    • 此方法的範例程式碼如下:

      ADB.audienceReset(); 
      

ID 服務方法

  • visitorGetMarketingCloudId

    從 ID 服務傳回 Experience Cloud ID。

    • 此方法的語法如下:

      ADB.visitorGetMarketingCloudId(success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.visitorGetMarketingCloudId(function(value){mcid=value;},function(){mcid=null;}); 
      
  • visitorSyncIdentifiers

    將提供的識別碼與 ID 服務同步。

    • 此方法的語法如下:

      ADB.visitorSyncIdentifiers(identifiers,success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.visitorSyncIdentifiers({‘key_id_1’:’value_id_1’},function(){…},function(){…})) 
      
      ADB.visitorSyncIdentifiers({‘key_id_1’:‘value_id_1’});
      
  • visitorSyncIdentifiersWithAuthenticationState

    將提供的識別碼同步至訪客 ID 服務。

    • 此方法的語法如下:

      ADB.visitorSyncIdentifiersWithAuthenticationState(identifiers,authenticationState,success,fail); 
      
    • 此方法的範例程式碼如下:

      ADB.visitorSyncIdentifiersWithAuthenticationState({'k1':'v1','k2':'v2','k3':'v3'},ADB.mobileVisitorAuthenticationStateAuthenticated,function(value){alert('success');},function(value){alert('fail');});
      
  • visitorSyncIdentifierWithType

    將提供的識別碼同步至訪客 ID 服務。

    • 此方法的語法如下:

      ADB.visitorSyncIdentifierWithType(identifierType,identifier,authenticationState,success,fail); 
      
    • 此方法的範例程式碼如下:

      ADB.visitorSyncIdentifierWithType('test-identifier-type','test-identifier',ADB.mobileVisitorAuthenticationStateAuthenticated,function(value){alert('success');},function(value){alert('fail');}); 
      
  • visitorAppendToURL

    附加訪客識別碼至指定 URL。

    • 此方法的語法如下:

      ADB.visitorAppendToURL(urlToAppend,success,fail);
      
    • 此方法的範例程式碼如下:

      ADB.visitorAppendToURL('test_visitor_url',function(value){alert(value);},'');
      
  • visitorGetIDs

    傳回所有已同步的 visitorIDs

    • 此方法的語法如下:

      ADB.visitorGetIDs(success,fail)
      
    • 此方法的程式碼範例如下:

      ADB.visitorGetIDs(function(value){alert(value);},function(value){alert('fail');}); 
      

本頁內容