时间:2017-11-05 来源:互联网 浏览量:
在这个示例中,我们将创建并部署运行Windows 10 IoT Core任何设备的第一个应用程序“Hello,world!”。
创建一个新的C#项目
所有示例代码都可以下载,但作为练习,本教程将带您完成从头开始创建此应用程序的所有步骤。您需要确保您已经从这里安装了Windows 10 IoT核心项目模板。
启动Visual Studio 2017。
用(文件| 新建项目 ...)创建一个新项目。
在新建项目对话框中,导航到通用(Universal),如下所示(在对话框的左窗格中:Templates | Visual C#| Windows | Universal)。
选择模板空白应用程序(Windows通用)。
记得给你的第一个应用程序一个好名字!在这个例子中,我们调用了项目“HelloWorld”。
注意如果这是您创建的第一个项目,Visual Studio可能会提示您启用Windows 10的开发者模式。添加对Windows IoT扩展SDK的引用
由于物联网扩展SDK默认不会添加到项目中,因此我们需要添加一个引用,以便像Windows.Devices.Gpio这样的名称空间在项目中可用。为此,只需右键单击项目下的“引用”条目,选择“添加引用”,然后将结果对话框导航至Universal Windows-> Extensions-> UWP的Windows IoT Extensions,选中该框并单击确定。
将内容添加到MainPage.xaml让我们添加一些内容到MainPage。从解决方案资源管理器中,选择MainPage.xaml文件。我们要添加一个文本框和一个按钮,以显示一些交互。所以我们将编辑XAML文件来添加这些元素。找到设计器的XAML部分中的<Grid>标记,并添加以下标记。
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}"> <StackPanel HorizontalAlignment="Center" VerticalAlignment="Center"> <TextBox x:Name="HelloMessage" Text="Hello, World!" Margin="10" IsReadOnly="True"/> <Button x:Name="ClickMe" Content="Click Me!" Margin="10" HorizontalAlignment="Center"/> </StackPanel> </Grid>
现在我们有了一个TextBox和一个Button,我们可以添加一些代码,这些代码在按下按钮时将被执行。双击设计图面中的按钮:Visual Studio将Click属性添加到Button XAML标记,并在MainPage.xaml.cs中生成ClickMe_Click方法。我们在这个方法中添加一行简单的代码。
MainPage.xaml中:
<Button x:Name="ClickMe" Content="Click Me!" Margin="10" HorizontalAlignment="Center" Click="ClickMe_Click"/>
MainPage.xaml.cs中:
private void ClickMe_Click(object sender, RoutedEventArgs e) { this.HelloMessage.Text = "Hello, Windows 10 IoT Core!"; }
在本地构建和测试应用程序
通过调用调试(Build) |确保应用程序正确构建 Build Solution菜单命令。
由于这是一个通用Windows平台(UWP)应用程序,因此您也可以在Visual Studio机器上测试应用程序:只需按F5,应用程序就可以在您的机器中运行。你应该看到这样的东西:
完成验证后关闭应用程序。将应用程序部署到Windows IoT Core设备
当然,我们希望将我们的第一个应用程序部署到我们的物联网核心设备。这很容易。在PowerShell文档中,可以找到为您的IoT Core设备选择唯一名称的说明。在这个示例中,我们将在Visual Studio的“远程机器调试”设置中使用该名称(尽管您也可以使用您的IP地址)。
如果你要部署到Minnowboard Max,请在Visual Studio工具栏体系结构下拉列表中选择x86。如果部署到树莓派 2或3或DragonBoard,请选择ARM。
接下来,在Visual Studio工具栏中,单击本地计算机下拉列表并选择远程计算机
此时,Visual Studio将显示“远程连接”对话框。把你的物联网核心设备的IP地址或名称(在这个例子中,我们使用“我的设备”),并选择通用(未加密协议)的身份验证模式。然后点击选择。
您可以使用IP地址而不是物联网核心设备名称。
您可以验证和/或修改导航到项目属性的这些值(在解决方案资源管理器中选择“属性”),然后选择左侧的“调试”选项卡:
现在我们准备部署到远程物联网核心设备。只需按F5(或选择Debug | Start Debugging)开始调试我们的应用程序。你应该看到应用程序出现在IoT核心设备屏幕上,你应该可以点击按钮。
您可以设置断点,查看变量值等。要停止应用程序,请按“停止调试”按钮(或选择“调试”|“停止调试”)。
在成功部署和调试您的第一个应用UWP,通过简单地改变从Visual Studio工具栏下拉配置创建一个发布版本调试到释放。您现在可以通过选择Build |来构建应用程序并将其部署到您的设备 重建解决方案和构建| 部署解决方案。
恭喜!您只是将第一个UWP应用程序部署到运行IoT Core的设备上!
将您的应用程序设置为启动应用程序
您可以将您的应用程序设置为Windows IoT Core设备的“启动应用程序”,以便在设备重新启动时自动启动您的应用程序。为此,您需要在Windows IoT Core设备上运行名为iotstartup的命令行实用程序。我们将使用PowerShell来做到这一点。
按照此处所述,使用Windows IoT Core设备启动PowerShell(PS)会话。
从PS会话中,键入(为了简单起见,我们将假定应用程序的名称是HelloWorld,请替换您的应用程序的实际名称):
[192.168.0.243]: PS C:\> iotstartup list HelloWorld
你应该看到UWP应用程序的全名,即:
Headed : HelloWorld_n2pe7ts0w7wey!App
该实用程序正在确认您的应用程序是一个“头”的应用程序,并正确安装。
现在,将这个应用程序设置为“启动应用程序”很容易。只需输入命令:
[192.168.0.243]: PS C:\> iotstartup add headed HelloWorld
该实用程序将确认新的启动领导应用程序现在是您的应用程序:
AppId changed to HelloWorld_n2pe7ts0w7wey!App
继续并重新启动Windows IoT Core设备。在PS会话中,您可以发出关机命令:
[192.168.0.243]: PS C:\> shutdown /r /t 0
一旦设备重新启动,你会看到你的应用程序自动启动。
此时,您可以恢复为使用DefaultApp作为“启动应用程序”。只需输入命令:
[192.168.0.243]: PS C:\> iotstartup add headed IoTCoreDefaultApp
该实用程序将确认新的启动应用程序现在是IoTCoreDefaultApp:
AppId changed to IoTCoreDefaultApp_kwmcxzszfer2y!App
有了第一次的了解 对于下面的人脸识别刷脸项目才能更好的理解。感兴趣的同学务必尝试一下第一个hello world。