问题标签 [xamarin.essentials]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
53 浏览

c# - Xamarin.Form 中用于保存数据的 iOS 路径

我想将数据保存在 csv 文件中,但我收到路径不存在的错误。有谁知道正确的路径?我在互联网上搜索并使用了不同的路径,但仍然无法正常工作。

0 投票
2 回答
228 浏览

wear-os - 如何将通过 Wear OS 和 Tizen 上的 xamarin.essentials 记录的陀螺仪值转换为相互单位

我使用 Xamarin.Essentials for Wear OS 和 Tizen 在 Xamarin.Forms 中实现了一个简单的传感器收集器应用程序。我正在使用三星 Galaxy Active 2 和 Fossil Sport 进行数据收集。

我偶然发现的一件事是加速度计和陀螺仪数据在两个平台上以不同的单位记录。对于加速度计,Wear OS 以 G 为单位进行记录,Tizen 以米/秒平方为单位,因此转换为相互单位相对简单。但是,我无法弄清楚两种设备上的陀螺仪都使用了哪些单位。有没有人可以分享一些见解?

在此先感谢并问候亚历山大

0 投票
1 回答
188 浏览

.net - Xamarin Essentials 保存对象详细信息

我正在寻找一种将详细信息列表保存到 Xamarin.Essentials.Preferences 的好方法。

基本上像

我想过做一些 xml 序列化,但我不确定这是最好的方法。

这个列表将少于 500 个项目,每个项目有多达 6 个属性,名称、重量、数量、ImageRefPath 等。

任何人有任何建议和/或存储这个的好方法的例子吗?

Items 集合中不存在的东西是:

没有二进制数据。没有图像。没有斑点。

0 投票
1 回答
181 浏览

c# - 如何获得设备的旋转度数?

我不想创建气泡水平仪、陀螺仪应用程序,但加速度计没有给出正确的值来转换为度数。

我应该使用加速度计吗?或者哪个传感器可以为我做到这一点?

对于气泡水平部分,我这样做了:

对于陀螺仪部分,我这样做了:

0 投票
1 回答
65 浏览

xamarin - Xamarin 共享正在触发 OnAppearing 事件

我在项目中有一个带有共享选项的集合视图,它按预期工作。但是,它通过再次调用 OnAppearing 事件来刷新页面。这导致具有如此多项目的集合视图刷新并丢失状态。

0 投票
1 回答
1101 浏览

ios - Xamarin 表单如何使用 Apple 帐户登录

我正在尝试在 IOS 上发布我的第一个 xamarin 表单应用程序。我禁止了使用 Apple 帐户登录的问题。

请问有4个问题。

1- 如果我只为 IOS 13+ 实施 Sign in with Apple 会被接受吗?:(

2-我正在尝试使用 Xamarin Essentials 登录到 IOS 13+,如本文所示:

Xamarin 要点

但我只取回了 idToken。AccessToken、姓名和邮件返回空值。我错过了什么吗?

3 - 最后我尝试使用 plugin.firebaseAuth 4.0.0-pre01 版:

链接插件

// 对于 iOS var credential = CrossFirebaseAuth.Current.OAuthProvider.GetCredential("apple.com", idToken, rawNonce: rawNonce); var 结果 = 等待 CrossFirebaseAuth.Current.Instance.SignInWithCredentialAsync(credential);

// 对于 Android var provider = new OAuthProvider("apple.com"); var 结果 = 等待 CrossFirebaseAuth.Current.Instance.SignInWithProviderAsync(provider);

它提供了一个使用 prism 来处理这个问题的示例,但是当我在这个版本中安装插件时,应用程序只不过是一个启动屏幕并关闭,而不会在输出中显示错误。我究竟做错了什么?:(

对于低于 13 的 iOS 和使用 Asp.NET 的 Android,第一个链接似乎很有希望。但是在应用程序中,我只使用 Firebase ClouFirestone 和 Firebase Hosting 作为管理面板。我可以在没有其他后端服务的情况下登录 Apple 吗?

我非常感谢我必须遵循的道路上的任何光明

0 投票
4 回答
1153 浏览

c# - 单元测试 Xamarin.Forms 应用程序时引发 Xamarin.Essentials.NotImplementedInReferenceAssemblyException

我正在为我的 Xamarin.Forms 应用程序运行单元测试,单元测试抛出Xamarin.Essentials.NotImplementedInReferenceAssemblyException

在此处输入图像描述

我为应用程序创建了一个单元测试项目(使用 NUnit 3.12.0)并编写了以下代码来测试功能。

下面是来自 Xamarin.Forms 应用程序的测试代码:

上述功能在 Xamarin.Forms 应用程序中运行良好。

注意:我读到可以使用 await/async,但是,我必须在整个项目中进行更改。目前这不是一个可行的解决方案。


编辑 1: 我创建了一个示例 Xamarin.Forms 项目,其中包含单元测试。该项目可在此处获得

0 投票
2 回答
640 浏览

ios - Xamarin.Forms:在 iPhoneSimulator 上调试

我正在尝试在 iPhoneSimulator 上调试一个简单的新 Xamarin.Forms 应用程序。我使用的是 Windows,并且已与网络中的 macbook 配对。

Xamarin.Forms 模板运行良好,但是当我调用Xamarin.Essentials.SecureStorageAPI时

我收到以下错误:

System.Exception:添加记录时出错:MissingEntitlement

所以我编辑了我的 Entitlements.plist 并启用了KeyChain权利。尝试再次调试,仍然是同样的错误。所以我转到项目属性> iOS Bundle Signing 并将其设置Custom entitlements为我的 Entitlements.plist。这以某种方式将方案切换到Manual Provisioning

在 iOS 上找不到适用于 MyApplication.iOS 的任何可用配置文件

所以我做了这个答案所说的:https ://stackoverflow.com/a/51615262/8941307 。现在我仍然收到 MissingEntitlement 异常。

当我删除自定义权利并切换回自动配置时,我可以再次运行该应用程序,但在没有 SecureStorage 的情况下会偏离轨道。

我是否需要订阅 99 美元才能在 iPhoneSimulator 上测试 SecureStorage 等这些功能?这在使用物理 iPhone 时会起作用吗?

编辑

我可以从我的 iPad(物理)上的 macbook 上的 XCode 中调试示例项目,但显然我无法在我的 iPad 上使用 Visual Studio for Mac。我收到以下错误:

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets(3,3):错误:在 iOS 上找不到 Helloworld.iOS 的任何可用配置文件。

我在 VSMac 中还缺少什么?此外,我已经信任我 iPad 上的开发者帐户,因此我能够从 XCode 运行示例。

我使用了位于/Applications/Xcode.app的 XCode 12.1

0 投票
2 回答
865 浏览

xamarin.forms - 如何以 xamarin 形式检测设备的大小

如何检测设备是小还是大?我不需要检测是否是平板电脑。

这个概念取自https://devblogs.microsoft.com/xamarin/styling-for-multiple-device-resolutions/

我们使用下面的方法并相应地加载适当的样式,但是因为我没有考虑密度,所以它是不准确的。

我该如何改进或重写此方法,以便它给我一个更好的结果并更准确地检测设备是大还是小。

当前的

尝试使用密度但不知道公式是什么

更新

有什么建议么?

0 投票
1 回答
2421 浏览

c# - Xamarin.Forms - Xamarin.Essentials 命名空间缺少 MediaPicker 或 FilePicker 类

我已经在 VS 2019,Android + iOS + UWP 中启动了一个 Xamarin.Forms 跨平台项目。

我需要使用 Xamarin.Essentials.FilePicker 和 Xamarin.Essentials.MediaPicker 类。问题是 FilePicker 和 MediaPicker 类在我的 Xamarin.Essentials 命名空间中不可用...

VS 是 Professional 2019,版本 16.7.7 - 完全更新。常见的项目目标是 .NET Standard 2.0。安装的 Nuget 包是 Xamarin.Essentials v1.5.3.2。Android 目标平台是 Android 0.0 (Pie)。iOS SDK 版本是默认的(根本没有设置)。UWP 最低版本为 Qindows 10 Fall Creators Update,目标版本为 Windows 10 版本 1903(编译 18362)。

我重新安装了 Nuget 包,恢复了它,清理了重新编译的整个解决方案......

当我在任何常见的项目类(或特定于平台的项目)中编写“Xamarin.Essentials.”时,智能感知会显示几个可用的类,但不会出现 MediaPicker 或 FilePicker。看这个截图:

显示 Xamarin.Essentials 智能感知类的屏幕截图 - MediaPicker 不存在

如果我让 Xamarin.Essentials.MediaPicker,VS 抱怨“命名空间‘Xamarin.Essentials’中不存在类型或命名空间‘MediaPicker’(缺少程序集引用?)

一个提示是,如果我开始一个全新的 Xamarin.Forms 跨平台,这些类也不可用。如果我创建仅限 Android 或仅限 iOS 的 Xamarin.Forms 项目,这些类也不可用。

¿我应该重新安装 VS,查看一些程序集参考(以及在哪里?),...?

注意:我知道有提供这些功能的 NuGet 包,但我想尽可能遵守“基本标准”......