【问题标题】:Does IBM MobileFirst support native C#/Xaml apps for windows phone 8.1/windows 8.1?IBM MobileFirst 是否支持适用于 windows phone 8.1/windows 8.1 的本机 C#/Xaml 应用程序?
【发布时间】:2015-01-15 08:37:24
【问题描述】:

进一步澄清标题。 我不是指 HTML5 混合应用程序或为 windows 8/windows phone 8 开发并在 windows 8.1/windows phone 8.1 上运行的应用程序

我想知道 IBM MobileFirst 是否支持为 windows 8.1 和/或 windows phone 8.1 编写的本机应用程序。 例如通用应用程序。

从我阅读的内容和我看到的教程来看,没有办法为 windows 8.1 和 windows phone 8.1 生成 dll。我错过了什么吗?

【问题讨论】:

    标签: c# xaml windows-runtime ibm-mobilefirst


    【解决方案1】:

    您是否查看过 IBM MobileFirst Platform Developer Center 或 IBM MobileFirst Platform Knowledge Center?你会在那里找到答案...

    Windows Phone 8 - 有本机 Windows Phone 8.x 开发的教程(未来会有更多)。

    Windows 8 - 还提供原生 Windows 8 支持(但尚未在开发中心提及)

    搜索知识中心以获取更多信息...

    【讨论】:

    • 感谢您的回答和提供上述资源,尽管我已经阅读了它们。在知识中心没有提到为 win 8.1 或 wp 8.1 开发本机 c#/xaml 应用程序,仅适用于 win 8 和 wp 8。所以据我了解,目前不支持这些平台。唯一的方法是为win8开发并利用windows的向后兼容性来运行win8.1中的应用程序
    【解决方案2】:

    @corus 我能够始终如一地重现您的问题!修复的是将 wlclient.properties 文件的构建操作更改为 Content。

    • 转到解决方案资源管理器
    • 右键单击 wlclient.properties 并选择“属性”
    • 将“构建操作”属性设置为“内容”(知识中心中缺少该属性)
    • 还将“复制到输出目录”设置为“始终”

    这应该可以解决崩溃问题。

    【讨论】:

    • 阿杰,这应该是未来 iFix 的 APAR 中的地址吗?
    • 正如jayakarthik 所说,这与尝试连接两次相结合,似乎可以解决问题。非常感谢:)
    • @IdanAdar 是的 - 需要修复文档并使用正确的错误消息而不是应用程序崩溃来处理异常。
    • 关注评论 - 此崩溃问题现已在 7.0 中修复。如果由于某种原因找不到属性文件 - 你会得到一个正确的异常而不是崩溃
    【解决方案3】:

    @corcus 第 1 部分 - 目前直到 IBM MF 6.3 - 产品 UI 中没有正式支持,但同时我们一直在验证 Visual Studio 2013 (https://www.ibm.com/developerworks/community/blogs/worklightsmobileplayground/entry/ibm_worklight_and_microsoft_visual_studio_2013?lang=en)

    第 2 部分 - 我们当前的 WindowsPhone8 环境基于 Silverlight。您可以尝试使用 Windows8 环境创建本机应用程序(这将创建一个 C# 应用程序)。在 VS2013 中打开它,然后向其中添加一个 Windows Phone 8.1 项目。然后将 DLL 引用添加到手机项目并将资产复制到手机项目(或共享项目)并尝试在 Win 8.1 手机上运行。这应该可行(我已经尝试过 Hybrid 并且它可以工作,但不是原生的 - 因此不能得出结论)

    【讨论】:

    • 我尝试了一些更简单但类似于你描述的东西。我在 VS 中创建了本机 win8.1 应用程序。然后在eclipse中创建了一个带有windows8环境的本机api(如教程)。我复制了 dll 并将引用、pri 和 wlclient.properties 添加到 C# win8.1 项目中,并且编译正常。然后我从“starter application”示例中复制了代码并尝试运行它。我收到错误“在 wlclient.properties 中找不到 wlServerProtocol 属性。将 wlServerProtocol 属性添加到 wlclient.properties 文件中。”应用程序崩溃了。 wp8.1中也发生了同样的事情
    • 错误信息不准确,因为我的 wlclient.properties 文件是这个 wlServerProtocol = http wlServerHost = 192.168.1.113 wlServerPort = 10080 wlS​​erverContext = /StarterApplication/ wlAppId = NativeWin8 wlAppVersion = 1.0 wlEnvironment = Windows8native wlPlatformVersion = 6.3 .0.0 #languagePreferences = 按优先顺序添加区域设置(例如 fr、en、pt-BR)#wlMPNSServiceName = 添加 MPNS 服务名称以进行认证推送。从调试中我看到 wlclient.properties 现在在 win8.1 中正确读取。 wp8 中的相同代码运行良好你对此有什么想法吗?
    • 这是一个已知问题,将在后续版本中修复。但是当第二次尝试连接时它可以工作。收到错误消息后可以尝试重新连接吗?
    • @jayakarthik 感谢您的评论。问题是应用程序在错误显示后崩溃并出现未处理的异常。调试器消息是“NativeWin8.exe 中发生未处理的 win32 异常” 这是引发异常的代码 try { WLClient client = WLClient.getInstance(); client.connect(new MyConnectResponseListener(this)); } catch (Exception ex) { string error = ex.Message;这是从启动应用程序示例连接到服务器的基本尝试。
    • @corcus - 您使用的是哪个版本的 IBM MF?因为这种方法仅适用于 6.3 版本的 Windows8 本机 SDK。 (WindowsPhone8 SDK 基于 Silverlight)
    猜你喜欢
    • 1970-01-01
    • 2015-02-25
    • 1970-01-01
    • 2014-06-23
    • 1970-01-01
    • 2014-11-25
    • 1970-01-01
    • 1970-01-01
    • 2014-12-08
    相关资源
    最近更新 更多