Xamarin.ios 今天从 Visual Studio 延长
Xamarin.ios Today Extension from Visual Studio
完成这个简单的任务是我最艰难的时刻,我现在正在测试的只是样本!
在 this tutorial 之后,我能够直接在我的 mac 上从 Xamarin Studio 成功创建 Today Extension。但是,在 Visual Studio 2015 年在我的 Win 10 PC 上执行相同的过程后,我什么也没得到(就今天的扩展而言)。
我尝试了几次 "fixes"。首先,我尝试简单地将已完成且正在运行的应用程序从 mac 复制到 windows。在 VS 中打开它,应用程序成功构建并部署到模拟器。今天的扩展实际上可用,但它永远不会加载我的视图。它只是说 "Unable to Load"。我尝试了故事板和硬编码方法,没有布埃诺。查看模拟器的系统日志,我看到一些关于集线器连接错误和不受支持的 XPC 对象 os_xpc_dic.
我越来越多地使用它,并最终让它在模拟器上运行。我的 CFBundleDisplayName 和 CFBundleName 都带有连字符(应用程序 - 分机名称)。在删除它并部署到一个完全不同的 ios 设备模拟器(6 加而不是 6 加)之后,今天的扩展最终显示了默认的 hello world 文本。
然后我尝试将其部署到我的物理设备,但是,仍然是 "Unable to Load" 消息。认为它与应用程序的 "dirty" 安装有关,我尝试了各种 clean/re-builds 以及删除应用程序并将其重新添加到设备。我什至尝试更改 CFBundleName 和 DisplayName 以及 CFBundleIdentifier,但没有任何效果!!!!
在今天的小部件中心加载时查看设备日志,这是我看到的:
• Will update publication state of
com.TexasDominos.ITSupport.AlertExtension visibilityChanged: 1
contentStateChanged: 0 insertAtTop: 0 notifyingObservers: 1
• Publication state of com.TexasDominos.ITSupport.AlertExtension
isVisible: 1 hasContent: 1
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Begin sequence with reason: appearance
transition
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Aborting active life cycle sequence:
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Aborting sequence as argument sequence
(WGWidgetLifeCycleSequence: 0x170a35740; sequenceID:
com.TexasDominos.ITSupport.AlertExtension.WGMajorListViewController.4/20/17,
11:31:00 AM; currentState:
WGWidgetLifeCycleSequenceStateDidRequestRemoteView) isn't in expected
range (WGWidgetLifeCycleSequenceStateDidConnectRemoteView
\M-b\M^@\M^S\M-B0WGWidgetLifeCycleSequenceStateRemoteViewRevealed)
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Initiating new life cycle sequence:
'WGWidgetLifeCycleSequence: 0x170a35740; sequenceID:
com.TexasDominos.ITSupport.AlertExtension.WGMajorListViewController.4/20/17,
11:31:00 AM; currentState: WGWidgetLifeCycleSequenceStateQuiescent'
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Connection requested with reason:
'appearance transition'
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Can't request remote view controller that is
blacklisted
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container:
WGMajorListViewController Will request remote view controller
我对这个问题很困惑,似乎无法在物理设备上做任何事情来纠正这个问题。有些东西告诉我,如果我要完全擦除我的物理设备,扩展将开始正常工作,因为它也可以在模拟器上进行全新安装。但是我根本没有办法擦除我的设备,这应该是一个简单的修复。
有什么建议吗?
杰尔内奥
*注意:我还尝试直接在 VS 中创建和添加今天的扩展,但我收到了更多问题。我不得不手动更改构建顺序和依赖项,以及从容器到扩展的引用。即使如此,扩展名也根本不会出现。上面的路线显示出更多的希望,一开始...
我相信我从 phone 本身擦除所有应用程序数据的理论是正确的。我能够让扩展正常工作...
- 从设备中删除该应用程序。
- 重新安装 Xcode 中 Xamarin.ios 指导您创建的初始空白应用程序,以最初创建和部署配置文件。
- 删除空白应用。
- 从 VS 安装你的应用。
现在我今天的扩展程序正确显示了!好麻烦。
旁注:无论出于何种原因,在几次部署后,我的应用程序停止正确安装今天的扩展程序。按照上述步骤再次修复它。此外,有时它会停止更新新代码。同样,按照上述步骤解决了这个问题。不完全是一个稳定的系统。我很好奇这与发行版本的关系如何。
完成这个简单的任务是我最艰难的时刻,我现在正在测试的只是样本!
在 this tutorial 之后,我能够直接在我的 mac 上从 Xamarin Studio 成功创建 Today Extension。但是,在 Visual Studio 2015 年在我的 Win 10 PC 上执行相同的过程后,我什么也没得到(就今天的扩展而言)。
我尝试了几次 "fixes"。首先,我尝试简单地将已完成且正在运行的应用程序从 mac 复制到 windows。在 VS 中打开它,应用程序成功构建并部署到模拟器。今天的扩展实际上可用,但它永远不会加载我的视图。它只是说 "Unable to Load"。我尝试了故事板和硬编码方法,没有布埃诺。查看模拟器的系统日志,我看到一些关于集线器连接错误和不受支持的 XPC 对象 os_xpc_dic.
我越来越多地使用它,并最终让它在模拟器上运行。我的 CFBundleDisplayName 和 CFBundleName 都带有连字符(应用程序 - 分机名称)。在删除它并部署到一个完全不同的 ios 设备模拟器(6 加而不是 6 加)之后,今天的扩展最终显示了默认的 hello world 文本。
然后我尝试将其部署到我的物理设备,但是,仍然是 "Unable to Load" 消息。认为它与应用程序的 "dirty" 安装有关,我尝试了各种 clean/re-builds 以及删除应用程序并将其重新添加到设备。我什至尝试更改 CFBundleName 和 DisplayName 以及 CFBundleIdentifier,但没有任何效果!!!!
在今天的小部件中心加载时查看设备日志,这是我看到的:
• Will update publication state of com.TexasDominos.ITSupport.AlertExtension visibilityChanged: 1 contentStateChanged: 0 insertAtTop: 0 notifyingObservers: 1
• Publication state of com.TexasDominos.ITSupport.AlertExtension isVisible: 1 hasContent: 1
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Begin sequence with reason: appearance transition
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Aborting active life cycle sequence:
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Aborting sequence as argument sequence (WGWidgetLifeCycleSequence: 0x170a35740; sequenceID: com.TexasDominos.ITSupport.AlertExtension.WGMajorListViewController.4/20/17, 11:31:00 AM; currentState: WGWidgetLifeCycleSequenceStateDidRequestRemoteView) isn't in expected range (WGWidgetLifeCycleSequenceStateDidConnectRemoteView \M-b\M^@\M^S\M-B0WGWidgetLifeCycleSequenceStateRemoteViewRevealed)
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Initiating new life cycle sequence: 'WGWidgetLifeCycleSequence: 0x170a35740; sequenceID: com.TexasDominos.ITSupport.AlertExtension.WGMajorListViewController.4/20/17, 11:31:00 AM; currentState: WGWidgetLifeCycleSequenceStateQuiescent'
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Connection requested with reason: 'appearance transition'
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Can't request remote view controller that is blacklisted
• com.TexasDominos.ITSupport.AlertExtension: 0x1576e8570; container: WGMajorListViewController Will request remote view controller
我对这个问题很困惑,似乎无法在物理设备上做任何事情来纠正这个问题。有些东西告诉我,如果我要完全擦除我的物理设备,扩展将开始正常工作,因为它也可以在模拟器上进行全新安装。但是我根本没有办法擦除我的设备,这应该是一个简单的修复。
有什么建议吗?
杰尔内奥
*注意:我还尝试直接在 VS 中创建和添加今天的扩展,但我收到了更多问题。我不得不手动更改构建顺序和依赖项,以及从容器到扩展的引用。即使如此,扩展名也根本不会出现。上面的路线显示出更多的希望,一开始...
我相信我从 phone 本身擦除所有应用程序数据的理论是正确的。我能够让扩展正常工作...
- 从设备中删除该应用程序。
- 重新安装 Xcode 中 Xamarin.ios 指导您创建的初始空白应用程序,以最初创建和部署配置文件。
- 删除空白应用。
- 从 VS 安装你的应用。
现在我今天的扩展程序正确显示了!好麻烦。
旁注:无论出于何种原因,在几次部署后,我的应用程序停止正确安装今天的扩展程序。按照上述步骤再次修复它。此外,有时它会停止更新新代码。同样,按照上述步骤解决了这个问题。不完全是一个稳定的系统。我很好奇这与发行版本的关系如何。