Xamarin.Essentials: Uygulama Eylemleri
AppActions sınıfı, uygulama kısayollarını uygulama simgesinden oluşturmanıza ve yanıtlamanızı sağlar.
başlarken
Bu API'yi kullanmaya başlamak için kitaplığın projelerinize düzgün bir şekilde yük olduğundan ve ayar olduğundan emin olmak için başlangıç kılavuzunu okuyun.
AppActions işlevselliğine erişmek için aşağıdaki platforma özgü kurulum gereklidir.
Amaç filtresini sınıfınıza MainActivity ekleyin:
[IntentFilter(
new[] { Xamarin.Essentials.Platform.Intent.ActionAppAction },
Categories = new[] { Android.Content.Intent.CategoryDefault })]
public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
{
...
Ardından eylemleri işlemek için aşağıdaki mantığı ekleyin:
protected override void OnResume()
{
base.OnResume();
Xamarin.Essentials.Platform.OnResume(this);
}
protected override void OnNewIntent(Android.Content.Intent intent)
{
base.OnNewIntent(intent);
Xamarin.Essentials.Platform.OnNewIntent(intent);
}
Eylem Oluşturma
sınıfınıza Xamarin.Essentials bir başvuru ekleyin:
using Xamarin.Essentials;
Uygulama Eylemleri herhangi bir zamanda oluşturulabilir, ancak genellikle bir uygulama başlatıldığında oluşturulur. Uygulamanıza SetAsync eylem listesi oluşturmak için yöntemini çağırma.
try
{
await AppActions.SetAsync(
new AppAction("app_info", "App Info", icon: "app_info_action_icon"),
new AppAction("battery_info", "Battery Info"));
}
catch (FeatureNotSupportedException ex)
{
Debug.WriteLine("App Actions not supported");
}
Uygulama Eylemleri işletim sisteminin belirli sürümünde desteklenmiyorsa, FeatureNotSupportedException bir atlar.
Bir üzerinde aşağıdaki özellikler ayar AppAction olabilir:
- Kimlik: Eylem dokunma eylemine yanıt vermek için kullanılan benzersiz bir tanımlayıcı.
- Başlık: Görüntülenebilecek başlık.
- Alt başlık: Başlığın altında görüntülemek için bir alt başlık destekleniyorsa.
- Simge: Her platformda karşılık gelen resources dizininde bulunan simgelerle eşleşmesi gerekir.

Eylemlere Yanıt Verme
Uygulamanız çalışmaya başladığında olay için OnAppAction kaydolabilirsiniz. Bir uygulama eylemi seçildiğinde, olay hangi eylemin seç olduğuyla ilgili bilgilerle birlikte gönderilir.
public App()
{
//...
AppActions.OnAppAction += AppActions_OnAppAction;
}
void AppActions_OnAppAction(object sender, AppActionEventArgs e)
{
// Don't handle events fired for old application instances
// and cleanup the old instance's event handler
if (Application.Current != this && Application.Current is App app)
{
AppActions.OnAppAction -= app.AppActions_OnAppAction;
return;
}
MainThread.BeginInvokeOnMainThread(async () =>
{
await Shell.Current.GoToAsync($"//{e.AppAction.Id}");
});
}
GetActions
çağırarak Uygulama Eylemleri'nin geçerli listesini AppActions.GetAsync() edinebilirsiniz.
API
- Xamarin.Essentials /AppActions" data-linktype="external">AppActions kaynak kodu
- AppActions API belgeleri