我正在使用最新的Visual Studio 2017,Tizen插件,并且可以使用作者和发行者的证书在模拟器和真实设备(Gear Sport)上以发布模式成功运行我的应用程序。我的应用程序定位于Tizen 4.0。
Samsung Seller门户需要发布二进制文件,但没有给出太多说明,因此,我假设要获取此信息,是使用正确的证书配置文件在发布模式下重建解决方案。结果TPK文件位于bin/Release
文件夹中。
检查TPK二进制存档,我看到了所有内置的DLL,资源,清单等。
问题
[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.so
和bin/runtimes/linux-x86/native
文件夹中找到bin/runtimes/tizen-armel/native
文件。我根本没有在应用程序中使用SkiaSharp
,但是我的nuget包可能是(Tizen.NET,Xamarin等)。在Tizen-CSharp
示例项目中,SkiaSharp项目示例还将这些库也包含在其TPK中。
arm
。现在,它仅针对Any CPU
,x86
或x64
构建。我已经从单个组件中为Visual Studio添加了ARM和ARM64的C ++编译器,但没有任何更改。手动创建ARM
构建配置不会让我。TL; DR
参考:https://developer.tizen.org/forums/tizen-.net/unable-publish-c-tizen-.net-wearable-tpk-seller-portal
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
。