如何为ARM平台构建Tizen C#.NET可穿戴TPK并发布到Samsung Seller Portal?

问题描述 投票:0回答:1

我正在尝试将我的Tizen Wearable .NET应用发布到Samsung Seller门户。

我正在使用最新的Visual Studio 2017,Tizen插件,并且可以使用作者和发行者的证书在模拟器和真实设备(Gear Sport)上以发布模式成功运行我的应用程序。我的应用程序定位于Tizen 4.0。

Samsung Seller门户需要发布二进制文件,但没有给出太多说明,因此,我假设要获取此信息,是使用正确的证书配置文件在发布模式下重建解决方案。结果TPK文件位于bin/Release文件夹中。

检查TPK二进制存档,我看到了所有内置的DLL,资源,清单等。

问题

一旦将此二进制文件上载到Samsung Seller门户并提交以供审阅,由于以下错误,它无法自动进行预审:

[Defect]应用程序是由x86编译器构建的。 X86表示应用程序可以在Tizen模拟器,不是真正的目标。

[[Expected Result]请在构建时配置体系结构以使其准备就绪应用程序。项目属性-> C / C ++构建-> Tizen设置,您可以检查应用程序文件名的体系结构。

e.g。 org.example.app-1.0.0-arm.tpk例如org.exapmple.ap-1.0.0-x86.tpk

[参考]通常,自动选择平台架构基于测试环境。如果测试设备通过USB,Tizen连接IDE自动选择手臂架构,但如果连接了仿真器到sdb,Tizen IDE会自动选择手臂架构。

这里的说明没有用,因为我使用的是Visual Studio和C#.NET,而不是Tizen Studio或C ++。

附加到拒绝项上的是一个名为gear_core_architecture.txt的文件,其内容很简单:

Intel 80386 [libSkiaSharp.so]

这是有问题的文件吗?如果检查发行版二进制TPK归档文件,则会在libSkiaSharp.sobin/runtimes/linux-x86/native文件夹中找到bin/runtimes/tizen-armel/native文件。我根本没有在应用程序中使用SkiaSharp,但是我的nuget包可能是(Tizen.NET,Xamarin等)。在Tizen-CSharp示例项目中,SkiaSharp项目示例还将这些库也包含在其TPK中。


我在Visual Studio中到处都是,无法将任何解决方案或项目的平台类型更改为arm。现在,它仅针对Any CPUx86x64构建。我已经从单个组件中为Visual Studio添加了ARM和ARM64的C ++编译器,但没有任何更改。手动创建ARM构建配置不会让我。

TL; DR

您如何在Visual Studio 2017中为ARM平台构建Tizen可穿戴C#.NET应用程序以发布到Samsung Seller Portal?

.net arm tizen samsung-gear
1个回答
0
投票
在Tizen支持论坛上提出相同的问题导致以下解决方案,如果其他任何人遇到此问题,请在此处回答以供将来参考。

参考:https://developer.tizen.org/forums/tizen-.net/unable-publish-c-tizen-.net-wearable-tpk-seller-portal


结果TPK中的linux-x86文件夹正在使Samsung Seller Portal中的自动拒绝系统跳闸。

解决方案是将以下行添加到您的Wearable项目的* .csproj文件中的属性组中,因此仅生成了tizen-armel

<RuntimeIdentifier>tizen-armel</RuntimeIdentifier>

实施例:

<PropertyGroup> <OutputType>Exe</OutputType> <TargetFramework>tizen40</TargetFramework> <RuntimeIdentifier>tizen-armel</RuntimeIdentifier> </PropertyGroup>


关于包括libSkiaSharp.so的内容,是包装Xamarin.FFImageLoading.Svg.Forms
© www.soinside.com 2019 - 2024. All rights reserved.