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

本頁內容

Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now
Adobe Maker Awards Banner

Time to shine!

Apply now for the 2021 Adobe Experience Maker Awards.

Apply now