问题标签 [xamarin-component]

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 回答
1331 浏览

xamarin - 使用 3rd 方 Xamarin 组件时,Xamarin 应用程序仅在调试模式下编译,而不是在发布模式下编译

我正在尝试将 Localytics SDK(通过他们的Xamarin 组件)集成到我的 Xamarin Android 应用程序中。它在调试模式下编译,但是如果我切换到发布版本,那么它会在编译时出错:

/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/Android/Xamarin.Android.Common.targets:错误:执行任务时出错LinkAssemblies:错误XA2006:无法解析对'Android.Gms.Gcm.Iid.InstanceIDListenerService的引用'(在程序集中定义为“LocalyticsXamarin.Android,版本=4.2.0.29760,Culture=neutral,PublicKeyToken=null”),范围为“Xamarin.GooglePlayServices.Gcm,版本=1.0.0.0,Culture=neutral,PublicKeyToken=null”。当作用域与定义的程序集不同时,通常意味着类型被转发。(com.rpr.mobile.droid)

如果我将链接器行为从链接 SDK 程序集切换为不链接,那么它编译得很好,但这不是一个选项,因为那时 apk 太大了。如果我切换回仅链接 SDK 程序集并将“LocalyticsXamarin.Android”添加到忽略程序集列表中,它仍然会给出相同的编译错误。

此错误似乎意味着我的应用程序和 Localytics Xamarin 包装器之间的 Google Play 服务版本不匹配,但是他们向我发送了使用最新版本 (42.1001.0) 的包装器的更新版本,我已经确认它与我们的应用程序。此外,他们自己的示例 Android 项目编译良好。我已经梳理了他们示例 Android 项目中的每个设置,并将其更改为与我的匹配,但他们仍然可以编译,而我的没有。

这是我的Android项目中的packages.config:

这是适用于示例 Localytics 项目的 packages.config:

要重现该问题...

是 Localytics SDK Xamarin 包装器的最新代码,构建得很好。您需要获取 .xam 文件并使用 Xamarin-Component 将其安装到 Xamarin Studio。

是我的 Android 项目代码的精简版。

我为我的项目的大小道歉,我删除了所有的代码和资源,但由于组件和包,它仍然很大,我不想删除它们,因为它们与问题相关。您需要打开 RPR Mobile - Android.sln 解决方案,更改为 Release-Prod,然后尝试构建,您会看到错误。

有任何想法吗?

0 投票
1 回答
572 浏览

xamarin - 尽管已登录,但您必须登录才能下载此组件

我正在使用 Visual Studio for Mac(通常我在我的 Mac 上使用 Xamarin Studio)进行 iOS 和 Android 开发。我正在尝试创建一个新解决方案并将“组件”添加到我的解决方案中。我已登录我的 Microsoft 帐户,但它显示“您必须登录才能下载此组件”。

有没有办法禁用它或告诉它我已登录?或者是否有其他我不知道的帐户应该登录?

它说我的状态是“Visual Studio Community”。那不允许使用组件吗?它 Xamarin Studio,免费的社区许可证允许使用组件就好了。

在此处输入图像描述

在此处输入图像描述

0 投票
2 回答
92 浏览

xamarin - Xamarin.iOS 中 Xamarin 组件的替代方案

我最近打开了我的一个旧项目。这是使用旧的 Xamarin.component barchart-1.1.2.1。但是当我打开我的项目时说

升级时间 我们检测到您的解决方案当前正在使用不再支持的 Xamarin 组件。请手动删除使用的组件并重新打开解决方案。

我知道它说删除 Xamarin 组件。但我想要免费使用并提供相同功能的 Xamarin 组件的替代品。

注意和研究:

我知道所有 Xamarin 组件现在都转换为 Nuget 包,但我在 Nuget 包上找不到条形图组件。

任何帮助将不胜感激。

0 投票
1 回答
77 浏览

xamarin.forms - 使用数据绑定设置一个简单的组件

我正在尝试使用数据绑定设置组件。这基本上是一个单独的内容视图,它具有Item类型属性Item并支持绑定。以下是绑定的定义:

该项目似乎没有绑定。注释行有一个断点并且没有中断。完整的源代码在这里:https ://github.com/neville-nazerane/xamarin-component-sample

上面的代码可以在ItemComponent类中找到。该组件在MainPage类中被调用。

更新

只是为了解释我要模拟的内容以及原因:

为什么我们在页面中使用 MVVM?虽然通过直接使用后面的代码我们将获得更好的类型安全性和性能,但当页面的逻辑变得更大时,使用视图模型处理它并拥有一个简单绑定到它的视图会变得更简洁。

为什么我们有组件?这样我们就可以重用我们打算与某些功能一起使用的 UI。如果这个功能变得复杂,它可能需要一个视图模型,原因与上面解释的相同。因此,如果页面需要视图模型,我不明白为什么组件在某些时候也不需要它们。

考虑到这一点,这确实感觉像是一个粒子要求,没有容易找到的例子。