Xamarin переплет для AWS SDK

Резюме

  • При связывании JAR/AAR, построенного поверх aws-java-sdk, нужно ли EmbeddedReferenceJar использовать все библиотеки ниже вашего JAR, вплоть до aws-java-sdk включительно, когда он находится на этом низком уровне для AWS SDK.NET имеет функциональность.

  • Существуют ли какие-либо пакеты Xamarin (Xamarin.Forms или Xamarin.Android), которые предоставляют готовый пользовательский интерфейс для аутентификации с кнопками входа в систему / регистрации для пулов пользователей AWS, Google+, поставщиков аутентификации Facebook?

контекст

Я хотел бы использовать SignInUI из aws-android-sdk-auth-ui в приложении Xamarin.Android, которое предоставляет готовый пользовательский интерфейс для аутентификации в AWS. У меня есть AWS UserPool а также AWS IdentityPool настройка уже.

К сожалению, AWS SDK for .NET не выставляет эквивалент aws-android-sdk-auth-ui пакет Java, построенный на вершине aws-android-sdk-auth-core (также недоступно в.NET), который построен поверх aws-android-sdk-core и наконец aws-java-sdk,

Я думал о привязке библиотеки Java. Я хотел бы создать обязательный проект Xamarin для aws-android-sdk-auth-ui.aar скачал с maven центральный. Я следовал Обучающему учебнику .AAR. Он строит, но генерируется aws-android-sdk-auth-ui.dll В файле отсутствуют некоторые классы. Я открыл длл с Ildasm.exe и в Com.Amazonaws.Mobile.Auth.UI пространство имен я только нашел AuthUIConfiguration а также BuildConfig явно не хватает SignInUI учебный класс.

Ожидается ли, что при создании обязательного проекта для .aar файл, который ссылается на другие .jar сборка завершается успешно, но молча не создает классы-обертки для классов Java, которые ссылаются на отсутствующие jar-файлы? Я бы предположил, что сборка будет успешной И будет включать в себя оболочку для всех классов, но сбой произойдет во время выполнения в коде пути, который требует отсутствующего jar.

Хорошо, поэтому я добавил aws-android-sdk-auth-core.jar, aws-android-sdk-core.jar к проекту привязок, как EmbeddedReferencedJar. Это не помогло, сгенерированный dll также отсутствуют те же классы. Вывод сборки, вставленный ниже, указывает на направление ошибочных ссылок. Увидеть ниже.

Как далеко мне нужно идти, мне также нужно встраивать до 80 МБ aws-java-sdk.jar?

У меня есть следующий вывод сборки:

1>JARTOXML : warning J2X9001: Couldn't load class com/amazonaws/mobile/auth/ui/SignInActivity : java.lang.NoClassDefFoundError: android/support/v7/app/AppCompatActivity
1>JARTOXML : warning J2X9001: Couldn't load class com/amazonaws/mobile/auth/ui/SignInUI$1 : java.lang.NoClassDefFoundError: com/amazonaws/mobile/auth/core/DefaultSignInResultHandler
1>JARTOXML : warning J2X9001: Couldn't load class com/amazonaws/mobile/auth/ui/SignInActivity$SignInProviderResultHandlerImpl : java.lang.NoClassDefFoundError: com/amazonaws/mobile/auth/core/signin/SignInProviderResultHandler
  • android/support/v7/app/AppCompatActivity указывает на то, что com.android.support:appcompat не найден Как эти должны связывать? В Xamarin.Android эти классы находятся в Xamarin.Android.Support.v7.AppCompat Пакет Nuget. Но баночка не знает, что она работает в Xamarin.Android. Означает ли это, что мне также нужно EmbedReferenceJar все нативные вещи для Android? Это глубокая кроличья нора...
  • com/amazonaws/mobile/auth/core/DefaultSignInResultHandler: что не должно быть ошибки, я вставил aws-android-sdk-auth-core.jar с EmbbededRefenceJar

Обновить:

Кто-то направил меня к Xamarin.GradleBindings. Я еще не проверял это, но подумал, что поделюсь надеждой, что это может быть полезно для других читателей.

0 ответов

Другие вопросы по тегам