PhoneGap 外掛程式方法

您可以使用 Android 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。此 ID 會在 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

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

    getUserIdentifier(function (value) { myTempVal = value; }, function () { myTempVal = null; });
    
    • 此方法的語法如下:

      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; }); 
      

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') }); 
      
  • trackState

    使用可選內容資料來追蹤應用程式。狀態為應用程式中可用的檢視,例如 home dashboardapp settingscart 等。這些狀態類似於網站上的頁面,且 trackState 呼叫會遞增頁面檢視。

    cData:JSON 物件,具有要在內容資料中傳送的鍵值值組。

    • 此方法的語法如下:

      ADB.trackState(string stateName[,JSON cData]);
      
    • 此方法的範例程式碼如下:

        ADB.trackState("login&amp;nbsp;page"); 
      
        ADB.trackState("login page", {"user":"john","remember":"true"});
      
  • trackAction

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

    • 此方法的語法如下:

      ADB.trackAction(string action[,JSON cData]); 
      
    • 此方法的範例程式碼如下:

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

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

    • 此方法的語法如下:

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

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

    增加使用者期限值的 amount

    • 此方法的語法如下:

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

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

    以名稱 action 啟動計時動作。

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

    秘訣

    此呼叫不會傳送點擊。

    • 此方法的語法如下:

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

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

    傳遞 cData 以更新與 action> 關聯的內容資料。

    傳遞的 cData 會附加至該動作的現有資料,如果已為 action 定義了相同鍵值,則會覆寫資料。

    • 此方法的語法如下:

      ADB.trackTimedActionUpdate(String action[,JSON cData]);
      
    • 此方法的範例程式碼如下:

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

    結束計時動作。

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

      ADB.trackTimedActionEnd("cartToCheckout"); 
      
  • trackingTimedActionExists

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

    • 此方法的語法如下:

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

信標方法

  • trackBeacon

    追蹤使用者何時進入信標鄰近地區。

    • 此方法的語法如下:

      ADB.trackBeacon(uuid, major, minor, proximity, cData) 
      
    • 此方法的範例程式碼如下:

      ADB.trackBeacon('2F234454-CF6D-4A0F-ADF2-F4911BA9FFA6', 1, 2, 
      ADB.beaconUnknown, {'hp':'hp_val','hp.company':'adobe'}
      
  • clearCurrentBeacon

    在使用者離開信標鄰近地區後,清除信標資料。

    • 此方法的語法如下:

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

      ADB.clearCurrentBeacon(); 
      

Target 方法

  • targetLoadRequest

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

    • 此方法的語法如下:

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

      ADB.targetLoadRequest(function&nbsp;(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

    透過 PcID 伺服器取得針對此訪客傳回之 Target 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

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

    • 此方法的語法如下:

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

      ADB.acquisitionCampaignStartForApp(“appId”, {‘key’:‘value’}, function() {…}, function() {…}));
      
      ADB.acquisitionCampaignStartForApp(“appId”, {‘key’:‘value’});  
      

廣告識別碼

在 Cordova 產生的主要活動中,呼叫 onResume() 方法中的 Config.submitAdvertisingIdentifierTask()。如需詳細資訊,請參閱設定方法

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

    Audience Manager 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

    傳回所有已同步的 visitorID

    • 此方法的語法如下:

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

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

本頁內容