小编Fre*_*Ali的帖子

如何在Xamarin表单中使用推送通知

我有一个使用Xamarin.Forms的应用程序,目标是IOS,Android和WP 8.

我的应用程序中需要推送通知功能.

我看过pushsharp演示,看起来很有希望.但我见过的所有代码都是针对每个平台单独完成的.

我希望它可以在App.cs中的某个Xamarin.Forms项目中完成,这样我就不需要重复注册设备的代码,并处理如何处理推送通知.

任何帮助将不胜感激.欢迎提供示例代码或教程参考.

编辑:我是根据Idot的回答实现的.这是我的答案的链接.

c# push-notification xamarin pushsharp xamarin.forms

55
推荐指数
2
解决办法
6万
查看次数

寻找拼图解决方案的算法

我正在尝试制作一个游戏,玩家必须在游戏板上从头到尾找到自己的方式.![游戏板] [1]

如你所见,这个游戏板包含一堆红色的圆形障碍物.为了赢得比赛,玩家必须移除最少量的障碍物.所以我的问题是,我如何以编程方式找出要移除的最小障碍物,以释放路径?自由路径将被视为之间的空间,圆圈不重叠且不接触.

所以我真正需要的是要移除的最小圆圈量,我不需要实际的路径.是否有捷径可寻?

并且为了补充对该游戏板的理解,每个圆圈具有相同的半径,并且受到黑线的限制.

也没有必要沿直线移动.

algorithm path collision-detection collision

30
推荐指数
3
解决办法
2189
查看次数

iPhone/iPad:如何使UITextField只读(但不禁用)?

我知道之前已经问过这个问题,但我对答案不满意,即禁用它.有一个根本区别:禁用视图不会触发事件,但对于只读视图,它仍然应该触发事件(例如TouchUpInside),我需要它.我唯一不需要的是键盘输入.

原因是我有几个输入字段,有些可以UITextField直接使用,有些则不能.我希望他们看起来很相似.所以,我想用它UITextField来显示所有这些.其中一些需要是只读的,以便我可以使用修饰事件来替代输入.

或者可能有一种完全不同的方式来做到这一点?

编辑:这是我的MonoTouch项目.我对Objective-c的了解非常有限.

objective-c xamarin.ios ios

18
推荐指数
3
解决办法
3万
查看次数

为什么不在.NET中允许就地接口实现?

要么我缺少某些东西,要么.NET不支持Java的功能.我希望能够避免创建一个小类只是为了实现一个小接口.例如,LINQ的Except方法需要IEqualityComparer.所以我不得不写一个实现接口的小类.但是在Java中我可以简单地new IEqualityComparer() { //interface declarations }完成它并完成它.所以有什么问题?

这与这篇文章有些相关:

C#匿名类可以实现一个接口吗?.

附加:此刻,我为Equals和添加了覆盖GetHashCode.

.net c# anonymous interface in-place

13
推荐指数
1
解决办法
2575
查看次数

.Net Maui XAML 输入字段组件

我似乎找不到可在 .net maui xaml 应用程序中使用的简单文本输入字段。查看用户界面/控件/视图部分中的文档,有许多处理用户交互/输入的组件,例如复选框和滑块,甚至还有搜索字段组件(对我来说,这应该只是一个专门的输入字段),但没有文本输入。

如何在 .Net Maui 中使用 Xaml 制作输入字段?

(我确实找到了telerik,但我认为它要花钱,而且我只是在寻找“默认”选项)

.net c# xamarin xamarin.forms maui

13
推荐指数
2
解决办法
2万
查看次数

原生链接失败,重复符号:'_ main',同时添加原生Binding Dll和Xamarin.Firebase.iOS.Database

我尝试使用NuGet在我的Xamarin项目中添加和实现本机Binding Dll和Xamarin.Firebase.iOS.Database,但由于以下错误,我无法构建我的项目:

错误MT5213:重复符号位于:/ / /obj/iPhone/Debug/device-builds/iphone8.1-11.4/mtouch-cache/arm64/main.o(与上一个错误相关的位置)(MT5213)

重复符号:/ / /obj/iPhone/Debug/device-builds/iphone8.1-11.4/mtouch-cache/leveldb-library(leveldb_main.o)(与上一个错误相关的位置)(MT5213)

另外,我在其他mtouch参数中添加了"--registrar:static".

请以最佳方式建议解决上述问题.

谢谢.

xamarin.ios ios firebase xamarin firebase-realtime-database

11
推荐指数
1
解决办法
640
查看次数

不支持"User7ZipPath"参数

最近,我已经收到了很多这个错误,从一些研究中,我知道它的原因是Xamarin.Build包.

错误文本如下:

"XamarinDownloadArchives"任务不支持"User7ZipPath"参数.验证该任务上是否存在该参数,它是一个可设置的公共实例属性.

我在这里这里尝试了解决方案,但没有任何帮助.

我的配置如下:

Xamarin version: 4.7.10.38

Visual Studio 2015

当我更新xamarin构建NuGet包时出现错误,如果有人有这个问题的解决方案,请帮助我.

谢谢.

xamarin.ios xamarin.android xamarin xamarin.forms

7
推荐指数
1
解决办法
1836
查看次数

[VS MAC]更新到 .NET 8 我的所有毛伊岛项目都显示错误 NETSDK1139:无法识别目标平台标识符 ios

昨天,我跟随我的同事从 .NET 7.0 更新到 .NET 8.0,并使其立即运行。然而,对于我自己来说,在我的 VS Mac 和我的 VS Windows 上我都收到错误

错误 NETSDK1139:无法识别目标平台标识符 ios。

在此输入图像描述

(如果设置为 ios 作为部署目标,此错误也会出现在 android 版本中)

目标框架列为 net8.0-android;net8.0-ios;

在此输入图像描述

以下这些我都有了~

  • 卸载所有 .NET SDK 和工作负载以及 VS 2022
  • 仅重新安装 VS 2022 和 .NET 8(.NET 6 和 7 随 VS 自动安装)
  • 运行命令行语句,例如适用于 maui、maui-ios 和 maui-android 的 dotnet 工作负载恢复和安装。
  • 一个全新的毛伊岛项目
  • 我也尝试过让 maui-check 正常工作,但目前似乎完全崩溃了,出现了诸如“zsh:杀死了 maui-check”之类的错误。

还有一点值得注意的是~

  • 创建新的 maui 项目时,不能选择 .NET 8,只能选择 .NET 7 和 6
  • 自更新以来,我没有任何模拟器或设备显示为部署目标。

在此输入图像描述

  • 我的 .NET 核心和运行时均在 VS 2022 中列出,并在运行命令行检查系统上安装了哪些时列出。

在此输入图像描述

我真的很感谢任何人在这个主题上的知识,特别是任何以前遇到过并处理过这个问题的人。

.net c# visual-studio visual-studio-mac maui

7
推荐指数
1
解决办法
1584
查看次数

使用Xamarin表单中的UIDocumentPickerViewController作为依赖服务

我正在使用Xamarin表单并为以下目标编写依赖服务:

  1. 打开iOS文件应用.(UIDocumentPickerViewController)

  2. 选择任何类型的文档.

  3. 将该文档复制到我的应用程序文档目录.(适用于应用访问)

  4. 通过将其路径存储到我的SQLite DB中,将该文档显示到我的应用程序中.

我在这里尝试做的是在条目点击上从我的应用程序调用Files应用程序并且click事件似乎运行良好我的依赖服务调用完美但现在当我尝试使用UIDocumentPickerViewController时我无法获取View控制器上下文在我的依赖服务中调用PresentViewController方法.现在我知道了xamarin表单的上下文,但我不知道它是否会在这里工作,我甚至不知道使用它是否是一个明智的想法,因为它已被标记为已过时,因为我不是来自iOS背景,我不知道什么是正确的解决方案.

我的代码如下:

public class DocumentPickerRenderer : IDocumentPicker
{
    public object PickFile()
    {
        var docPicker = new UIDocumentPickerViewController(new string[] { UTType.Data, UTType.Content }, UIDocumentPickerMode.Import);
        docPicker.WasCancelled += (sender, wasCancelledArgs) =>
        {
        };
        docPicker.DidPickDocumentAtUrls += (object sender, UIDocumentPickedAtUrlsEventArgs e) =>
        {
            Console.WriteLine("url = {0}", e.Urls[0].AbsoluteString);
            //bool success = await MoveFileToApp(didPickDocArgs.Url);
            var success = true;
            string filename = e.Urls[0].LastPathComponent;
            string msg = success ? string.Format("Successfully imported file '{0}'", filename) : string.Format("Failed to import file '{0}'", filename);
            var alertController …
Run Code Online (Sandbox Code Playgroud)

xamarin.ios xamarin xamarin.forms

6
推荐指数
1
解决办法
900
查看次数

Google Play:Beta 版到生产版

我们最近决定更新我们在 google play 上发布 Beta 版的新应用程序,

现在阅读指南后,我想到了一些问题并想了解更多关于它们的信息,我用谷歌搜索以进一步了解找到了一些答案,但仍有一些我不确定的事情所以决定提出这个问题向上:

  • 对于 Beta 版本,是否可以制作一个可供所有 google play 用户使用的 Beta 版本(作为正常的生产应用程序),还是所有人都可以使用?(因为根据本指南,它让我知道该应用程序仅对一定数量的用户可用。)

确保用户可以加入测试。您的测试人员需要拥有 Google 帐户 (@gmail.com) 或 G Suite 帐户才能加入测试。

在内部运行测试。使用内部测试轨道在几秒钟内将您的应用推送给多达 100 名内部测试人员。

  • 一旦我发布了一个测试版应用程序并决定现在将其投入生产,它会作为不同的应用程序上传还是同样的,发布到测试版 Google Play 应用程序的评论是否会在我的生产应用程序上可见?(没有完全得到与此有关的任何信息。)

  • 在其中一个要点中,它说我的应用程序在 beta 版本中应该具有比生产版本更高的版本代码,但是如果我在该版本中有更高的版本,它甚至不会是将被下载的应用程序什么时候它可能不是最稳定的版本?(这个真的让我很困惑)

检查您的 Android App Bundle 版本号。要使测试人员可以使用处于内部、封闭或开放测试轨道上的应用程序,它的版本代码必须高于您的生产版本。

  • 是否有指定的字段可以为 Beta 测试人员提供此电子邮件,或者我可以在应用程序的描述中提供它吗?

为测试人员提供一个向您发送反馈的渠道。对于封闭式测试,让测试人员能够通过电子邮件、网站、消息论坛或其他合适的机制提供反馈。

android xamarin.android google-play google-play-console

6
推荐指数
3
解决办法
1万
查看次数