Tag: android

通过RecyclerView搜索 – Xamarin.Droid

我一直在寻找Xamarin通过recyclerView搜索的方式。 有谁可以请我参加一个关于如何以Xamarin方式做到这一点的演示?

请帮助减少Xamarin.Android的apk大小

我一直在研究Android应用,但尺寸看起来非常大! 我启用了专业防护,链接全部启用,但剂量似乎做了很多。 我有四个小图像,但它们的大小各约为5-10kb。 唯一一次它更小的是当我使用共享运行时运行时,但这对于发布来说并不好。 这些是我唯一的构建警告: Warning can’t write resource [META-INF/MANIFEST.MF] (Duplicate zip entry [classes.jar:META-INF/MANIFEST.MF]) Warning can’t write resource [META-INF/MANIFEST.MF] (Duplicate zip entry [internal_impl-22.2.1.jar:META-INF/MANIFEST.MF]) 这些警告与问题有关吗?

为什么我的自定义ButtonRenderer不起作用?

我正在尝试为Xamarin.Forms创建一个自定义ButtonRenderer。 这是一个简单的测试,我一直试图在一些教程之后将它们放在一起,但我似乎可以使它工作。 这是我的.xaml页面: 这是我的自定义渲染:(它放在Android项目中) [assembly: ExportRenderer(typeof(Xamarin.Forms.Button), typeof(CustomButtonRenderer))] namespace TestProject.Droid.CustomRenderers { public class CustomButtonRenderer: ButtonRenderer { public CustomButtonRenderer(Context context) : base(context) { } protected override void OnElementChanged(ElementChangedEventArgs e) { base.OnElementChanged(e); Control.SetBackgroundColor(Android.Graphics.Color.Red); } } } 但它永远不会被调用,我的应用程序崩溃了。 我的logcat显示: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. —> Java.Lang.ClassNotFoundException: Didn’t find class “md5dba8ede99752acada1f5ba384c7cf839.CustomButtonRenderer” on path: DexPathList[[zip […]

如何在Xamarin.Android中正确编写自定义UncaughtExceptionHandler

我想要实现的只是捕获我的应用程序上的exception,以便我可以将它们发送到服务器。 我想通过在StackOverflow中回答Java中的原生Android代码编写我的自定义UncaughtExceptionHandler ,我可以做到这一点。 这是我的CustomExceptionHandler类: public class CustomExceptionHandler : Thread.IUncaughtExceptionHandler { public IntPtr Handle { get; private set; } public CustomExceptionHandler(Thread.IUncaughtExceptionHandler exceptionHandler) { Handle = exceptionHandler.Handle; } public void UncaughtException(Thread t, Throwable e) { // Submit exception details to a server … // Display error message for local debugging purposes Debug.WriteLine(e); } public void Dispose() { […]

绑定按钮单击ListView模板MvvMCross

我有一个listview,其中包含一个包含按钮的模板。 单击按钮时,我想要触发事件并返回listview行的值,因此我可以使用它将其添加到数据库中。 我的问题是,我不知道如何将我的buttonevent绑定到itemtemplate。 我尝试了一些方法但到目前为止没有成功。 我的清单视图: 我的ItemTemplate: 我的ViewModel: public class ListPresentationViewModel: MvxViewModel { private readonly ISQLService _sqlSvc; public ListPresentationViewModel (ISQLService sqlService) { _sqlSvc = sqlService; MenuCollection = _sqlSvc.MenuItemGetAll (); } private List _menuCollection = new List (); public List MenuCollection { get{ return _menuCollection;} set { _menuCollection = value; RaisePropertyChanged (() => MenuCollection); } } private […]

打开另一个应用程序并传入URL

当我点击按钮时,我正在尝试团结打开Goog​​le+应用。 我在我的Android设备上运行应用程序,但它不起作用这是我使用的代码 Application.OpenURL (“gplus://plus.google.com/+JewelMash”); 此代码有效,但它会提示您选择使用浏览器或Google +应用程序打开它 Application.OpenURL (“https://plus.google.com/+JewelMash”);

Unity3D Android插件:无法启动服务

我的目标是启动一个服务,通过.jar文件添加为Unity3D中的android插件。 在这个线程中,我发现了如何启动它,我可以最终获得本机代码。 但是我在日志中遇到了以下问题: 07-14 15:02:23.965: W/ActivityManager(444): Unable to start service Intent { cmp=net.calipssoone.bnh/com.activitychecker.adservice.CheckService } U=0: not found 我用谷歌搜索,发现问题在清单中,但无法弄清楚我做错了什么。 以下是清单中声明服务的方式: 它在Java中的包名实际上是相同的: com.activitychecker.adservice StartReceiver类: public class StartReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) {} } CheckService类: public class CheckService extends Service { public void onCreate(){} public long getCurrentTime(){} public void loadInfo(){} public int […]

在Unity中启用/禁用Android上的Wifi

我试图在我的Android设备上启用或禁用Unity的Wifi。 我试图做我在论坛上发现的不同的事情,但没有成功。 如果我做: using(var unityPlayer = new AndroidJavaClass(“com.unity3d.player.UnityPlayer”)) { string wifiServiceName = unityPlayer.Get(“WIFI_SERVICE”); using(var wifiManager = unityPlayer.Call(“getSystemService”, wifiServiceName)) { wifiManager.Call(“setWifiEnabled”, false); } } 我有一个错误,说WIFI_SERVICE不存在。 如果我做: using (AndroidJavaObject activity = new AndroidJavaClass(“com.unity3d.player.UnityPlayer”).GetStatic(“currentActivity”)) { using (var wifiManager = activity.Call(“getSystemService”,”wifi”)) { wifiManager.Call(“setWifiEnabled”, false); } } 我有一个错误,说setWifiEnabled不是一个函数,(如果我做CallStatic ,也不是静态函数)。 我正确地合并了manifest.xml ,我可以检查我是否拥有应用程序管理器的所有权限。 我花了几个小时试图弄清楚如何做到这一点,我被卡住了! 有谁知道一个简单的方法吗? 非常感谢你的帮助, 本杰明

Xamarin AlarmManager Android

我已经创建了一个快速的xamarin android项目。 最后我想学习下面的学习并将它应用到android和ios之间共享的xamarin表单项目中。 现在我只关注Android方面的事情。 我一直在努力学习如何安排本地通知在将来的某个时间出现。 快速扔掉应用程序,下面是我编写的AlarmReceiver类,以及下面的MainActivity.cs。 class AlarmReceiver : BroadcastReceiver { public override void OnReceive(Context context, Intent intent) { var message = intent.GetStringExtra(“message”); var title = intent.GetStringExtra(“title”); var notIntent = new Intent(context, typeof(MainActivity)); var contentIntent = PendingIntent.GetActivity(context, 0, notIntent, PendingIntentFlags.CancelCurrent); var manager = NotificationManager.FromContext(context); //Generate a notification with just short text and small icon var […]

Xamarin Android Alarm Manager问题

我的Xamarin Android应用程序中有一个AlarmManager 。 我使用SetExact()以5分钟的时间配置它。 但它只在五秒后开始。 无论我何时配置它,它总是在5秒后触发。 我在Java中使用了完全相同的代码,它工作得很好。 代码: [BroadcastReceiver] public class AlarmReceiver : BroadcastReceiver { public override void OnReceive(Context context, Intent intent) { Log.Info(“AlarmReceiver”, “Triggered”); } public static void Start(Context context, long triggerAfterMilis) { var type = AlarmType.RtcWakeup; var alarmManager = (AlarmManager) context.GetSystemService(Context.AlarmService); var timerIntent = PendingIntent.GetBroadcast(context, 0, new Intent(context, typeof(AlarmReceiver)), PendingIntentFlags.CancelCurrent); alarmManager.Cancel(timerIntent); if (Build.VERSION.SdkInt […]