Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Po vytvoření projektu a definování vzdálených proměnných v Partnerském centrujste připraveni aktualizovat kód v aplikaci pro Univerzální platformu Windows (UPW) na:
- Příjem hodnot vzdálených proměnných z Partnerského centra
- Ke konfiguraci prostředí aplikací pro uživatele použijte vzdálené proměnné.
- Zaznamenávání událostí do Partnerského centra, které indikují, kdy si uživatelé prohlédli váš experiment a provedli požadovanou akci (označuje se také jako konverze).
K přidání tohoto chování do aplikace použijete rozhraní API poskytovaná sadou MICROSOFT Store Services SDK.
Následující části popisují obecný proces získávání variant pro váš experiment a protokolování událostí v Partnerském centru. Po naprogramování aplikace pro experimentování můžete definovat experiment v Partnerském centru. Návod, který ukazuje kompletní proces vytvoření a spuštění experimentu, najdete v tématu Vytvoření a spuštění prvního experimentu s testováním A/B.
Poznámka:
Některá rozhraní API pro experimentování v sadě Microsoft Store Services SDK používají asynchronní vzor ke získání dat z partnerského centra. To znamená, že část provádění těchto metod může proběhnout po vyvolání metod, takže uživatelské rozhraní aplikace může zůstat responzivní, dokud se operace dokončí. Asynchronní vzor vyžaduje, aby vaše aplikace při volání rozhraní API používala klíčové slovo async a operátor await, jak ukazují příklady kódu v tomto článku. Podle konvence asynchronní metody končí Async.
Konfigurace projektu
Abyste mohli začít, nainstalujte sadu Microsoft Store Services SDK do vývojového počítače a přidejte do projektu potřebné odkazy.
- Nainstalujte sadu SDK Microsoft Store Services.
- Otevřete projekt ve Visual Studiu.
- V Průzkumníku řešení rozbalte uzel projektu, klikněte pravým tlačítkem na Odkazya klikněte na Přidat odkaz.
- Ve Správci odkazů rozbalte položku Univerzální systém Windows a klepněte na tlačítko Rozšíření.
- V seznamu SDK zaškrtněte políčko vedle Microsoft Engagement Framework a klikněte na OK.
Poznámka:
Příklady kódu v tomto článku předpokládají, že váš soubor kódu má pomocí příkazů pro obory názvů System.Threading.Tasks a Microsoft.Services.Store. Engagement.
Získat data o případných změnách a zaznamenat událost zobrazení pro váš experiment.
V projektu vyhledejte kód funkce, kterou chcete v experimentu upravit. Přidejte kód, který načítá data pro variantu, použijte tato data k úpravě chování funkce, kterou testujete, a potom zapište událost zobrazení pro experiment do služby testování A/B v Partnerském centru.
Konkrétní potřebný kód bude záviset na vaší aplikaci, ale následující příklad ukazuje základní proces. Úplný příklad kódu najdete v tématu Vytvoření a spuštění prvního experimentu s A/B testováním.
private StoreServicesExperimentVariation variation;
private StoreServicesCustomEventLogger logger;
// Assign this variable to the project ID for your experiment from Dev Center.
// The project ID shown below is for example purposes only.
private string projectId = "F48AC670-4472-4387-AB7D-D65B095153FB";
private async Task InitializeExperiment()
{
// Get the current cached variation assignment for the experiment.
var result = await StoreServicesExperimentVariation.GetCachedVariationAsync(projectId);
variation = result.ExperimentVariation;
// Refresh the cached variation assignment if necessary.
if (result.ErrorCode != StoreServicesEngagementErrorCode.None || result.ExperimentVariation.IsStale)
{
result = await StoreServicesExperimentVariation.GetRefreshedVariationAsync(projectId);
if (result.ErrorCode == StoreServicesEngagementErrorCode.None)
{
variation = result.ExperimentVariation;
}
}
// Get the remote variable named "buttonText" and assign the value
// to the button.
var buttonText = variation.GetString("buttonText", "Grey Button");
await button.Dispatcher.RunAsync(
Windows.UI.Core.CoreDispatcherPriority.Normal,
() =>
{
button.Content = buttonText;
});
// Log the view event named "userViewedButton" to Dev Center.
if (logger == null)
{
logger = StoreServicesCustomEventLogger.GetDefault();
}
logger.LogForVariation(variation, "userViewedButton");
}
Následující kroky podrobně popisují důležité části tohoto procesu.
Deklarujte objekt StoreServicesExperimentVariation, který představuje aktuální přiřazení variant, a objekt StoreServicesCustomEventLogger, který použijete k protokolování událostí zobrazení a konverzí do Partnerského centra.
private StoreServicesExperimentVariation variation; private StoreServicesCustomEventLogger logger;Deklarujte řetězcovou proměnnou, která je přiřazena ID projektu pro experiment, který chcete načíst.
Poznámka:
ID projektu získáte při vytvoření projektu v Partnerském centru. ID projektu, které je znázorněno níže, je určené jenom pro ukázkové účely.
private string projectId = "F48AC670-4472-4387-AB7D-D65B095153FB";Získejte aktuální přiřazení varianty uložené v mezipaměti pro experiment voláním statické GetCachedVariationAsync metoda a předejte ID projektu pro experiment metodě. Tato metoda vrátí objekt StoreServicesExperimentVariationResult, který poskytuje přístup k přiřazení varianty prostřednictvím vlastnosti ExperimentVariation.
var result = await StoreServicesExperimentVariation.GetCachedVariationAsync(projectId); variation = result.ExperimentVariation;Zkontrolujte vlastnost IsStale a zjistěte, jestli se přiřazení varianty uložené v mezipaměti musí aktualizovat pomocí přiřazení vzdálené varianty ze serveru. Pokud je potřeba ji aktualizovat, zavolejte statickou GetRefreshedVariationAsync metodu, abyste zkontrolovali aktualizované přiřazení variant ze serveru a aktualizovali místní variantu v mezipaměti.
if (result.ErrorCode != StoreServicesEngagementErrorCode.None || result.ExperimentVariation.IsStale) { result = await StoreServicesExperimentVariation.GetRefreshedVariationAsync(projectId); if (result.ErrorCode == StoreServicesEngagementErrorCode.None) { variation = result.ExperimentVariation; } }Pomocí metod GetBoolean, GetDouble, GetInt32nebo GetString objektu StoreServicesExperimentVariation získáte hodnoty pro přiřazení varianty. V každé metodě je prvním parametrem název varianty, kterou chcete načíst (jedná se o stejný název varianty, kterou zadáte v Partnerském centru). Druhý parametr je výchozí hodnota, kterou by metoda měla vrátit, pokud nemůže načíst zadanou hodnotu z Partnerského centra (například pokud neexistuje připojení k síti) a verze varianty uložená v mezipaměti není k dispozici.
Následující příklad používá GetString k získání proměnné s názvem buttonText a určuje výchozí hodnotu proměnné Šedé tlačítko.
var buttonText = variation.GetString("buttonText", "Grey Button");V kódu použijte hodnoty proměnných k úpravě chování funkce, kterou testujete. Například následující kód přiřadí buttonText hodnotu obsahu tlačítka v aplikaci. Tento příklad předpokládá, že jste toto tlačítko už definovali jinde v projektu.
await button.Dispatcher.RunAsync( Windows.UI.Core.CoreDispatcherPriority.Normal, () => { button.Content = buttonText; });Nakonec zalogujte událost zobrazení ve experimentu do služby testování A/B v Partnerském centru. Inicializujte pole
loggerna objekt StoreServicesCustomEventLogger a zavolejte metodu LogForVariation. Předejte objekt StoreServicesExperimentVariation, který představuje aktuální přiřazení varianty (tento objekt poskytuje kontext o události do centra pro partnery) a název zobrazení události pro váš experiment. Musí se shodovat s názvem události zobrazení, který zadáte pro experiment v Partnerském centru. Kód by měl událost zobrazení protokolovat, když uživatel začne zobrazovat variantu, která je součástí experimentu.Následující příklad ukazuje, jak protokolovat událost zobrazení s názvem userViewedButton. V tomto příkladu je cílem experimentu získat uživatele, aby v aplikaci kliknul na tlačítko, takže se událost zobrazení zaprotokoluje po načtení dat varianty (v tomto případě textu tlačítka) a přiřazení k obsahu tlačítka.
if (logger == null) { logger = StoreServicesCustomEventLogger.GetDefault(); } logger.LogForVariation(variation, "userViewedButton");
Protokolování událostí převodu do Partnerského centra
Dále přidejte kód, který zaznamenává události konverze do služby pro testování A/B ve službě Partner Center. Kód by měl protokolovat událost převodu, když uživatel dosáhne cíle pro váš experiment. Konkrétní potřebný kód bude záviset na vaší aplikaci, ale tady jsou obecné kroky. Úplný příklad kódu najdete v tématu Vytvoření a spuštění prvního experimentu s A/B testováním.
V kódu, který se spustí, pokud uživatel dosáhne cíle pro jeden z cílů experimentu, znovu zavolejte metodu LogForVariation a přeneste objekt StoreServicesExperimentVariation a název události konverze pro váš experiment. Musí se shodovat s jedním z názvů událostí převodu, které zadáte pro experiment v Partnerském centru.
Následující příklad zaznamená konverzní událost s názvem userClickedButton z obslužného programu události Click pro tlačítko. V tomto příkladu je cílem experimentu, aby uživatel klikl na tlačítko.
private void button_Click(object sender, RoutedEventArgs e) { if (logger == null) { logger = StoreServicesCustomEventLogger.GetDefault(); } logger.LogForVariation(variation, "userClickedButton"); }
Další kroky
Po naprogramování experimentu v aplikaci jste připraveni k následujícím krokům:
- Definujte svůj experiment v Partnerském centru. Vytvořte experiment, který definuje události zobrazení, události převodu a jedinečné varianty testu A/B.
- Spusťte a spravujte váš experiment v partnerském centru.