Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede , ActivateApplication etkinleştirme türünü kullanan pencere öğeleri sağlayıcıları için komut satırı etkinleştirme parametrelerinin biçimi açıklanmaktadır.
Important
Pencere öğesi sağlayıcıları, Pencere öğesi sağlayıcısı bildirim dosyasında Pencere öğesi sağlayıcı paketi bildirim XML biçiminde açıklandığı gibi bir etkinleştirme yöntemi belirtir. Pencere öğesi sağlayıcılarının CreateInstance etkinleştirme türünü kullanması ve ActivateApplication etkinleştirme yöntemini kullanmak yerine IWidgetProvider arabirim yöntemlerini kullanarak pencere öğesi konak isteklerine yanıt vermesi önerilir. Bu makaledeki bilgiler eksiksizlik için verilmiştir ve çoğu pencere öğesi sağlayıcısı uygulaması tarafından kullanılması önerilmez.
ActivateApplication’daki bağımsız değişkenler dizesi ve base64url kodlaması
Pencere öğesi sağlayıcısı etkinleştirildiğinde, komut satırı argümanlarında --widget-call= kodlamasından önce öneki bulunur.
--widget-call=[base64url]
Örneğin, içindeki base64url bölümü
--widget-call=ewogICAgIldpZGdldENhbGwiOiJDcmVhdGVXaWRnZXQiLAogICAgIldpZGdldENvbnRleHQiOnsKICAgICAgICAiSWQiOiI5ODU4MjEwOS1jNmJmLTQzNzItODlkNi04OWY1N2ViNzU0ZjYiLAogICAgICAgICJEZWZpbml0aW9uSWQiOiJQV0FfQ291bnRpbmdfV2lkZ2V0IiwKICAgICAgICAiU2l6ZSI6IkxhcmdlIgogICAgfQp9
olarak kodu çözülür
{
"WidgetCall":"CreateWidget",
"WidgetContext":{
"Id":"98582109-c6bf-4372-89d6-89f57eb754f6",
"DefinitionId":"PWA_Counting_Widget",
"Size":"Large"
}
}
Komut satırı biçim ayrıntıları
JSON komut satırı, IWidgetProvider yöntemlerine karşılık gelen çağrıları temsil eder. Aşağıdaki sahte kod bu yöntemleri özetler; derlenebilir bir arabirim bildirimi değildir.
interface IWidgetProvider
{
void CreateWidget(WidgetContext widgetContext);
void DeleteWidget(String widgetId, String customState);
void OnActionInvoked(WidgetActionInvokedArgs actionInvokedArgs);
void OnWidgetContextChanged(WidgetContextChangedArgs contextChangedArgs);
void Activate(WidgetContext widgetContext);
void Deactivate(String widgetId);
}
Her etkinleştirme bir yöntem çağrısını temsil eder. JSON nesnesi, yöntem adını ve çağrının verilerini içeren özellikleri barındıran bir WidgetCall değerine sahiptir. Aşağıdaki örneklerde, geri çağırma bağımsız değişkeni nesneleri için Args dahil, aktarım özelliği adları gösterilmektedir.
Bir WidgetContext için JSON, DefinitionId, Size ve Id içerir.
Id bir widget örneğini tanımlar ve DefinitionId manifest tanımını tanımlar. JSON, "Large"gibi bir dizeyiSize temsil eder; gerçek WidgetContext.Size API özelliği bir dize değil, WidgetSize numaralandırmasıdır.
Note
Pencere öğesi sağlayıcıları, gelecekte ek parametrelerin eklendiği durumu işlemek için beklenmeyen parametre değerlerini yoksamalıdır.
Pencere öğesi sağlayıcısı CreateWidget API çağrısı, JSON nesnesi olarak düzenlenir:
{
"WidgetCall":"CreateWidget",
"WidgetContext":{
"Id":"98582109-c6bf-4372-89d6-89f57eb754f6",
"DefinitionId":"PWA_Counting_Widget",
"Size":"Large"
}
}
JSON'u WinRT arabirim bildirimi olarak işlemek yerine ActivateApplication bağımsız değişkenlerini işlerken burada gösterilen JSON aktarım biçimini kullanın.
Marshalled nesne örnekleri
Widget JSON nesnesi oluşturma
{
"WidgetCall":"CreateWidget",
"WidgetContext":{
"Id":"98582109-c6bf-4372-89d6-89f57eb754f6",
"DefinitionId":"PWA_Counting_Widget",
"Size":"Large"
}
}
Pencere Öğesi Json nesnesini silme
{
"WidgetId": "1AC74363-177B-4CD2-995F-3B25AEEA3FF4",
"WidgetCall": "DeleteWidget",
"CustomState": "usedata"
}
OnActionInvoked JSON Nesnesi
{
"WidgetCall": "OnActionInvoked",
"Args":{
"Verb": "Verb String",
"Data": "Data Details",
"CustomState": "usedata",
"WidgetContext": {
"Id":"98582109-c6bf-4372-89d6-89f57eb754f6",
"DefinitionId":"PWA_Counting_Widget",
"Size":"Large"
}
}
}
Json Nesnesini Etkinleştirme
{
"WidgetCall": "Activate",
"WidgetContext": {
"Id":"98582109-c6bf-4372-89d6-89f57eb754f6",
"DefinitionId":"PWA_Counting_Widget",
"Size":"Large"
}
}
Json Nesnesini Devre Dışı Bırak
{
"WidgetCall": "Deactivate",
"WidgetId":"98582109-c6bf-4372-89d6-89f57eb754f6"
}
OnWidgetContextChanged JSON Nesnesi
Örneğin, WidgetSizeMedium olarak değiştiğinde bir WidgetContextChanged olayı tetiklenir.
{
"WidgetCall": "OnWidgetContextChanged",
"Args":{
"WidgetContext":{
"Id":"98582109-c6bf-4372-89d6-89f57eb754f6",
"DefinitionId":"PWA_Counting_Widget",
"Size":"Medium"
}
}
}
Windows developer