2016-11-10 2 views
0

Я не знаю, чтобы объяснить это, надеюсь, вы понимаете. Мне нужно знать, есть ли что-то похожее на ApplicationContext (Xamarin.Android), но в iOS, Я использую Xamarin.Forms, и у меня есть класс MyApp (это в переносном), где у вас есть некоторые классы, которые получают данные требуется для запуска приложения, я делаю это в Xamarin.Android:Xamarin.Forms - Контекст?

переменная var = ((MyApp) ApplicationContext);

и с этим я получу данные.

+0

Ну, какую информацию вам нужно получить? У James Montenegro есть хороший плагин Device Info, но если это то, что вы не можете получить оттуда, вы можете подумать об инъекции зависимостей. – Sam07

ответ

0

Сам Android использует «Context» для действий и приложений, а контекст приложения - Android.Content.Context. Разница заключается в том, что Application Context связывается с жизненным циклом приложения. Контекст активности связан с жизненным циклом Деятельности.

iOS сам использует AppDelegate и будет похож на приложение ApplicationContext от Android. Основное различие заключается в том, что контекст Android содержит информацию, которая иногда требуется для завершения действий. Это одна из причин, по которым Forms.Context отображается в пользовательских визуализаторах Xamarin.Forms Android, потому что Xamarin.Forms управляет деятельностью Android.

Я не знаю, что вы захватили из контекста приложения или того, что вы пытаетесь выполнить с этими данными. В iOS большая часть данных уровня приложения живет в классе UIApplication. UIApplication инкапсулирует центральные административные свойства приложения, работающего на iOS, и, скорее всего, то, что вы ищете. Я бы рекомендовал рассмотреть документацию Xamarin.iOS.UIKit.UIApplication, чтобы узнать, содержит ли она данные.

Если вы ищете события жизненного цикла приложения iOS, вы хотели бы использовать доступное переопределение в AppDelegate. Here - документация Xamarin о доступных событиях жизненного цикла.

Надеюсь, это поможет!

Раскрытие информации: Я работаю для Xamarin/Microsoft

Смежные вопросы