Articles of xamarin.android

防止Xamarin Android应用程序中的方向更改

是否可以防止Android应用程序的方向发生变化? 我有一个预览手机摄像头的应用程序,我希望方向不要改变。 我已经尝试将其添加到清单中,但它没有任何区别 我正在使用Xamarin for Android和C# 谢谢

AndroidGameWindow.SetDisplayOrientation NullReferenceException

我使用MonoGame和Xamarin为Android开发了一款游戏。 我将BugSense合并到其中并迅速开始获得以下exception堆栈跟踪: System.NullReferenceException: Object reference not set to an instance of an object at Microsoft.Xna.Framework.AndroidGameWindow.SetDisplayOrientation (Microsoft.Xna.Framework.DisplayOrientation) at Microsoft.Xna.Framework.AndroidGameWindow.SetOrientation (Microsoft.Xna.Framework.DisplayOrientation,bool) at Microsoft.Xna.Framework.OrientationListener.OnOrientationChanged (int) at Android.Views.OrientationEventListener.n_OnOrientationChanged_I (intptr,intptr,int) at (wrapper dynamic-method) object.ed9d7c7c-f3e6-4d7a-9249-1a139a251aed (intptr,intptr,int) 这就是我的活动设置方式: [Activity(Label = “My Cool Game” , MainLauncher = true , Icon = “@drawable/icon” , Theme = “@style/Theme.Splash” , AlwaysRetainTaskState = true , LaunchMode = […]

搜索小部件调用OnNewIntent两次

我有一个我想要搜索的活动。 当我点击搜索时,事件OnNewIntent被调用两次……我做错了什么? 我正在创建像这样的Searchview public override bool OnCreateOptionsMenu(IMenu menu) { searchView = new SearchView(this); var searchManager = (SearchManager)GetSystemService(Context.SearchService); var searchableInfo = searchManager.GetSearchableInfo(ComponentName); searchView.SetSearchableInfo(searchableInfo); var search_item = menu.Add(new Java.Lang.String(“Search”)); search_item.SetActionView(searchView); search_item.SetShowAsAction(ShowAsAction.IfRoom); var edit = menu.Add(0, insertItemID, 0, “Insert”); edit.SetShowAsAction(ShowAsAction.IfRoom); edit.SetIcon(Android.Resource.Drawable.IcMenuAdd); return base.OnCreateOptionsMenu(menu); } 日志: 10-17 07:45:45.491 I/ActivityManager( 900): START {act=android.intent.action.SEARCH flg=0x10000000 cmp=Intranet.Intranet/intranet.screens.ContactListActivity (has extras)} from pid 2971 […]

找不到Xamarin Android资源文件

我正在Visual Studio中构建一个Android应用程序。 当我尝试在Resources文件夹中构建应用程序引用项时,我得到两个错误之一。 如果我使用我的项目的命名空间前缀“Resource.Layout。[Id]”或“Resource.Id。[Id]”,我收到此错误: 名称空间'[app namespace]’中不存在types或命名空间名称’Resource’(您是否缺少程序集引用?) 如果我没有在我的命名空间前面调用Resource,它会尝试访问默认的Android.Resource类,我收到此错误: ‘Android.Resource.Layout’不包含'[axml file]’的定义 有没有人遇到过这个错误? 我一直在寻找一段时间,但却无法想出任何看似错误的东西。 Resource.Designer文件存在。 我删除了它,让它重新生成。 Ids位于Resource文件中,项目根本无法识别资源类是否存在。 最初,此应用程序的命名空间以“Android”结尾。 考虑到可能是问题的一部分,我已将其更改为“_Android”和“AndroidApp”,包括更改项目属性中的默认命名空间以及更改每个文件中的命名空间声明。 但是,每次更改都会出现此错误。

当我创建新的Android应用程序(Visual Studio)时,对象引用未设置为对象的实例

在Visual Studio 2015中,安装了Xamarin,Android SDK,jdk 1.7和模拟器,Xamarin在工具>选项> Xamarin中包含所有绿色选中项。 但是当我尝试创建空白应用程序(Android)VS时显示错误: Object reference not set to an instance of an object 然后新项目无法创建,解决方案资源管理器将为空。 我该怎么解决? 非常感谢

Android 4.4及更低版本的SSLHandshakeException

当我想用POST方法连接Paypal Rest API时,我遇到了问题。 当我不使用modernhttpclient时,我收到了错误 The authentication or decryption has failed. 但是,当我使用modernhttpclient时,它可以在Android API 23(Marshmallow)中工作,当我在Android API 19(设备)和Android API 16(模拟器)中测试时,我收到错误 ex {Javax.Net.Ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=…} Javax.Net.Ssl.SSLHandshakeException 根据ssl握手exceptionandroid我需要使用自定义套接字工厂。 但是如何在HttpClient或modernHttpClient中实现它呢?

如何使用Xamarin.Android从最终的APK文件中删除未使用的语言?

我已将一些Android支持库添加到我的项目中,现在我基本上面临与此问题中描述的相同的问题: Android Studio将支持库中的字符串导出到APK 由于我不能使用Xamarin的Gradle设置,我无法使用StackOverflow答案中描述的解决方案。 有没有人有一个想法,我怎么只能在我的最终APK文件中保留特定的本地化?

Xamarin Forms – 媒体插件 – 手机上的空缩略图

我正在使用James Montemagno的媒体插件来拍照。 出于某种原因,只有在手机上运行应用程序时,拍照时,缩略图才能在TestFolder中正确显示,但它们显示为空文件。 在模拟器中运行时,图像正确显示。 这是我的代码: public async Task TakePhoto() { MediaFile result = null; await CrossMedia.Current.Initialize(); if (CrossMedia.Current.IsCameraAvailable && CrossMedia.Current.IsTakePhotoSupported) { // Supply media options for saving our photo after it’s taken. var mediaOptions = new Plugin.Media.Abstractions.StoreCameraMediaOptions { SaveToAlbum = true, Directory = “TestFolder”, Name=”test.jpg” }; // Take a photo of the business receipt. result […]

安卓通过Monodroid开箱即用的安全存储设备是什么?

像许多人一样 – 我正在开发一个带有共享代码库的应用程序(Windows Store + Android + MonoTouch + [稍后] WP8)。 此外,与许多应用程序一样,我有本地状态,我需要坚持这个应用程序。 我存储的一条信息是登录用户的身份validation令牌。 在Windowsapp store平台上,我已经使用漫游设置( ApplicationData.Current.RoamingSettings )混合了令牌的辅助数据(用户名和发布日期)以及实际令牌值的PasswordVault来实现存储。 因此,令牌受到OS级内省的保护,因为它是由OS加密的。 现在我正在为我的MonoDroid构建实现相同的界面,我无法看到平台提供的任何方式来存储只能由我的应用程序解密的数据 – 就像可以使用密码库一样对于商店应用。 因此,目前,我只是通过Application.Context.GetSharedPreferences方法使用Android.Content.ISharedPreferences接口来读取和写入这些值。 所以我认为平台(MonoDroid或Android)没有提供安全存储OOB是正确的吗? 是否是在应用程序中实现加密的唯一选择 – 这当然需要将加密密钥烘焙到代码中? 或者我可以获取用于签署应用程序的证书并将其用作密钥吗? 最终,如果我无法对这些数据进行加密,那么这不是世界末日,因为无论如何,令牌都是有时间限制的 – 但如果我能够真正做到这一点,那就太好了!

usb设备android,c#Xamarin

我最近开始写Xamarin,编写代码来查看连接到主机的设备时遇到了一些问题。 我已经阅读了SDK文档,所有文档都是用java编写的。 我正在尝试将java更改为C#,我将其编码为查找附加的设备: UsbManager manager = (UsbManager)GetSystemService (Context.UsbService); display.Text += ” /n inizializzo il manager”; display.Text += “numero dispositivi: “; display.Text += manager.DeviceList.Count; 使用“usb manager”应用程序,我可以看到所有usb附加,有3个。但是使用此代码它似乎是0 usb附加。 我不明白为什么。