diff --git a/README.md b/README.md
index ac37860da5..b9b0c1f8a9 100644
--- a/README.md
+++ b/README.md
@@ -147,7 +147,6 @@ For additional Windows samples, see [Windows on GitHub](http://microsoft.github.
Contact picker
- My People notifications
UserDataAccountManager
@@ -305,34 +304,35 @@ For additional Windows samples, see [Windows on GitHub](http://microsoft.github.
General Purpose Input/Output (GPIO)
Gyrometer
- Inclinometer
+ Presence sensor
+ Inclinometer
Inter-Integrated Circuit (I2C)
Lamp device
- Light sensor
+ Light sensor
Line display
Magnetometer
- Magnetic stripe reader
+ Magnetic stripe reader
Near field communication (NFC)
NFC enterprise provisioner
- Orientation sensor
+ Orientation sensor
Pedometer
POS printer
- Proximity sensor
+ Proximity sensor
Radial controller
Relative inclinometer
- Serial Arduino
+ Serial Arduino
Serial Peripheral Interface (SPI)
Simple orientation sensor
@@ -512,21 +512,22 @@ For additional Windows samples, see [Windows on GitHub](http://microsoft.github.
Network connectivity
+ On-Demand Wi-Fi hotspot
Radios
Socket activity trigger stream socket
- StreamSocket
+ StreamSocket
Syndication
USSD protocol
- WebSocket
+ WebSocket
Wi-Fi Direct
Wi-Fi Direct services
- Wi-Fi hotspot authentication
+ Wi-Fi hotspot authentication
Wi-Fi scanning
diff --git a/Samples/360VideoPlayback/cpp/360VideoPlayback.vcxproj b/Samples/360VideoPlayback/cpp/360VideoPlayback.vcxproj
index 6dc9b71321..e94b8c3c3f 100644
--- a/Samples/360VideoPlayback/cpp/360VideoPlayback.vcxproj
+++ b/Samples/360VideoPlayback/cpp/360VideoPlayback.vcxproj
@@ -11,8 +11,8 @@
15.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
true
diff --git a/Samples/360VideoPlayback/cpp/Package.appxmanifest b/Samples/360VideoPlayback/cpp/Package.appxmanifest
index 0815ba840a..ae7d2f5094 100644
--- a/Samples/360VideoPlayback/cpp/Package.appxmanifest
+++ b/Samples/360VideoPlayback/cpp/Package.appxmanifest
@@ -14,7 +14,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/360VideoPlayback/cs/360VideoPlayback.csproj b/Samples/360VideoPlayback/cs/360VideoPlayback.csproj
index 473ed30110..181b238feb 100644
--- a/Samples/360VideoPlayback/cs/360VideoPlayback.csproj
+++ b/Samples/360VideoPlayback/cs/360VideoPlayback.csproj
@@ -14,8 +14,8 @@
360VideoPlayback
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
15
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/360VideoPlayback/cs/Package.appxmanifest b/Samples/360VideoPlayback/cs/Package.appxmanifest
index 47efcd0510..418d78aac3 100644
--- a/Samples/360VideoPlayback/cs/Package.appxmanifest
+++ b/Samples/360VideoPlayback/cs/Package.appxmanifest
@@ -14,7 +14,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/3DPrinting/cppwinrt/3DPrinting.vcxproj b/Samples/3DPrinting/cppwinrt/3DPrinting.vcxproj
index 7ed362f6a7..0afdd1dd1e 100644
--- a/Samples/3DPrinting/cppwinrt/3DPrinting.vcxproj
+++ b/Samples/3DPrinting/cppwinrt/3DPrinting.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/3DPrinting/cppwinrt/Package.appxmanifest b/Samples/3DPrinting/cppwinrt/Package.appxmanifest
index 7955c2a844..604d01a698 100644
--- a/Samples/3DPrinting/cppwinrt/Package.appxmanifest
+++ b/Samples/3DPrinting/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/3DPrinting/cs/3DPrinting.csproj b/Samples/3DPrinting/cs/3DPrinting.csproj
index 5674cd0ec5..fa6a10080b 100644
--- a/Samples/3DPrinting/cs/3DPrinting.csproj
+++ b/Samples/3DPrinting/cs/3DPrinting.csproj
@@ -14,8 +14,8 @@
SDKTemplate
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/3DPrinting/cs/Package.appxmanifest b/Samples/3DPrinting/cs/Package.appxmanifest
index 81d533c89e..a92ad03264 100644
--- a/Samples/3DPrinting/cs/Package.appxmanifest
+++ b/Samples/3DPrinting/cs/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/Accelerometer/cpp/Accelerometer.vcxproj b/Samples/Accelerometer/cpp/Accelerometer.vcxproj
index e762c4a1f1..bbf47d2d8b 100644
--- a/Samples/Accelerometer/cpp/Accelerometer.vcxproj
+++ b/Samples/Accelerometer/cpp/Accelerometer.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Accelerometer/cpp/Package.appxmanifest b/Samples/Accelerometer/cpp/Package.appxmanifest
index 25eca2f477..f2292a215e 100644
--- a/Samples/Accelerometer/cpp/Package.appxmanifest
+++ b/Samples/Accelerometer/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Accelerometer/cs/Accelerometer.csproj b/Samples/Accelerometer/cs/Accelerometer.csproj
index 7e560e1dcd..efc9fa1525 100644
--- a/Samples/Accelerometer/cs/Accelerometer.csproj
+++ b/Samples/Accelerometer/cs/Accelerometer.csproj
@@ -14,8 +14,8 @@
Accelerometer
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Accelerometer/cs/Package.appxmanifest b/Samples/Accelerometer/cs/Package.appxmanifest
index 24700f19ed..eb125e8089 100644
--- a/Samples/Accelerometer/cs/Package.appxmanifest
+++ b/Samples/Accelerometer/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Accelerometer/vb/Accelerometer.vbproj b/Samples/Accelerometer/vb/Accelerometer.vbproj
index 5ecd099e9e..350b9b1607 100644
--- a/Samples/Accelerometer/vb/Accelerometer.vbproj
+++ b/Samples/Accelerometer/vb/Accelerometer.vbproj
@@ -14,8 +14,8 @@
Accelerometer
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Accelerometer/vb/Package.appxmanifest b/Samples/Accelerometer/vb/Package.appxmanifest
index 3729281d43..2694d89d7e 100644
--- a/Samples/Accelerometer/vb/Package.appxmanifest
+++ b/Samples/Accelerometer/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/ActivitySensor/cpp/ActivitySensor.vcxproj b/Samples/ActivitySensor/cpp/ActivitySensor.vcxproj
index e8f1d4e016..40a7c9274b 100644
--- a/Samples/ActivitySensor/cpp/ActivitySensor.vcxproj
+++ b/Samples/ActivitySensor/cpp/ActivitySensor.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ActivitySensor/cpp/Package.appxmanifest b/Samples/ActivitySensor/cpp/Package.appxmanifest
index 17a78e4afe..9414ef25f6 100644
--- a/Samples/ActivitySensor/cpp/Package.appxmanifest
+++ b/Samples/ActivitySensor/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ActivitySensor/cpp/Tasks/ActivitySensorTasks.vcxproj b/Samples/ActivitySensor/cpp/Tasks/ActivitySensorTasks.vcxproj
index f77d655377..7561e27d4d 100644
--- a/Samples/ActivitySensor/cpp/Tasks/ActivitySensorTasks.vcxproj
+++ b/Samples/ActivitySensor/cpp/Tasks/ActivitySensorTasks.vcxproj
@@ -11,10 +11,10 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
- 10.0.22000.0
+ 10.0.22621.0
diff --git a/Samples/ActivitySensor/cs/ActivitySensor.csproj b/Samples/ActivitySensor/cs/ActivitySensor.csproj
index cfa0360703..2c46d73b4f 100644
--- a/Samples/ActivitySensor/cs/ActivitySensor.csproj
+++ b/Samples/ActivitySensor/cs/ActivitySensor.csproj
@@ -14,8 +14,8 @@
ActivitySensor
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ActivitySensor/cs/Package.appxmanifest b/Samples/ActivitySensor/cs/Package.appxmanifest
index 6b7df934e2..0bba192798 100644
--- a/Samples/ActivitySensor/cs/Package.appxmanifest
+++ b/Samples/ActivitySensor/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ActivitySensor/cs/Tasks/ActivitySensorTasks.csproj b/Samples/ActivitySensor/cs/Tasks/ActivitySensorTasks.csproj
index f05401a81b..42221b9945 100644
--- a/Samples/ActivitySensor/cs/Tasks/ActivitySensorTasks.csproj
+++ b/Samples/ActivitySensor/cs/Tasks/ActivitySensorTasks.csproj
@@ -14,8 +14,8 @@
ActivitySensorTasksCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ActivitySensor/vb/ActivitySensor.vbproj b/Samples/ActivitySensor/vb/ActivitySensor.vbproj
index 116c7217b3..662800638d 100644
--- a/Samples/ActivitySensor/vb/ActivitySensor.vbproj
+++ b/Samples/ActivitySensor/vb/ActivitySensor.vbproj
@@ -14,8 +14,8 @@
ActivitySensor
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ActivitySensor/vb/Package.appxmanifest b/Samples/ActivitySensor/vb/Package.appxmanifest
index bd57f2f402..bac390270c 100644
--- a/Samples/ActivitySensor/vb/Package.appxmanifest
+++ b/Samples/ActivitySensor/vb/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ActivitySensor/vb/Tasks/ActivitySensorTasks.vbproj b/Samples/ActivitySensor/vb/Tasks/ActivitySensorTasks.vbproj
index 58fdaa3542..907487c9e0 100644
--- a/Samples/ActivitySensor/vb/Tasks/ActivitySensorTasks.vbproj
+++ b/Samples/ActivitySensor/vb/Tasks/ActivitySensorTasks.vbproj
@@ -14,8 +14,8 @@
ActivitySensorTasksCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AdaptiveStreaming/cs/AdaptiveStreaming.csproj b/Samples/AdaptiveStreaming/cs/AdaptiveStreaming.csproj
index 939cf57e18..93f5031e11 100644
--- a/Samples/AdaptiveStreaming/cs/AdaptiveStreaming.csproj
+++ b/Samples/AdaptiveStreaming/cs/AdaptiveStreaming.csproj
@@ -14,8 +14,8 @@
AdaptiveStreaming
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AdaptiveStreaming/cs/Package.appxmanifest b/Samples/AdaptiveStreaming/cs/Package.appxmanifest
index ba8a2880eb..72265f16a4 100644
--- a/Samples/AdaptiveStreaming/cs/Package.appxmanifest
+++ b/Samples/AdaptiveStreaming/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/AdvancedCasting/cs/AdvancedCasting.csproj b/Samples/AdvancedCasting/cs/AdvancedCasting.csproj
index a914f8d5f2..7d3a08f90b 100644
--- a/Samples/AdvancedCasting/cs/AdvancedCasting.csproj
+++ b/Samples/AdvancedCasting/cs/AdvancedCasting.csproj
@@ -14,8 +14,8 @@
ScreenCasting
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AdvancedCasting/cs/Package.appxmanifest b/Samples/AdvancedCasting/cs/Package.appxmanifest
index e3f0ec57bb..05209b7d34 100644
--- a/Samples/AdvancedCasting/cs/Package.appxmanifest
+++ b/Samples/AdvancedCasting/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/AdvancedCasting/vb/AdvancedCasting.vbproj b/Samples/AdvancedCasting/vb/AdvancedCasting.vbproj
index b63d1d4f0d..8e30f72acd 100644
--- a/Samples/AdvancedCasting/vb/AdvancedCasting.vbproj
+++ b/Samples/AdvancedCasting/vb/AdvancedCasting.vbproj
@@ -14,8 +14,8 @@
ScreenCasting
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AdvancedCasting/vb/Package.appxmanifest b/Samples/AdvancedCasting/vb/Package.appxmanifest
index cc046f1951..1e78192a96 100644
--- a/Samples/AdvancedCasting/vb/Package.appxmanifest
+++ b/Samples/AdvancedCasting/vb/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/AllJoyn/Common/Scenario1WinRTComponent/Scenario1WinRTComponent.vcxproj b/Samples/AllJoyn/Common/Scenario1WinRTComponent/Scenario1WinRTComponent.vcxproj
index 80dd5d8867..be19353746 100644
--- a/Samples/AllJoyn/Common/Scenario1WinRTComponent/Scenario1WinRTComponent.vcxproj
+++ b/Samples/AllJoyn/Common/Scenario1WinRTComponent/Scenario1WinRTComponent.vcxproj
@@ -38,8 +38,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
true
diff --git a/Samples/AllJoyn/Common/Scenario2WinRTComponent/Scenario2WinRTComponent.vcxproj b/Samples/AllJoyn/Common/Scenario2WinRTComponent/Scenario2WinRTComponent.vcxproj
index 2bece104b0..a1b9499091 100644
--- a/Samples/AllJoyn/Common/Scenario2WinRTComponent/Scenario2WinRTComponent.vcxproj
+++ b/Samples/AllJoyn/Common/Scenario2WinRTComponent/Scenario2WinRTComponent.vcxproj
@@ -38,8 +38,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
true
diff --git a/Samples/AllJoyn/ConsumerExperiences/cs/AllJoynConsumerExperiences.csproj b/Samples/AllJoyn/ConsumerExperiences/cs/AllJoynConsumerExperiences.csproj
index 399153887a..54a60f7ee9 100644
--- a/Samples/AllJoyn/ConsumerExperiences/cs/AllJoynConsumerExperiences.csproj
+++ b/Samples/AllJoyn/ConsumerExperiences/cs/AllJoynConsumerExperiences.csproj
@@ -15,8 +15,8 @@
AllJoynConsumerExperiences
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AllJoyn/ConsumerExperiences/cs/Package.appxmanifest b/Samples/AllJoyn/ConsumerExperiences/cs/Package.appxmanifest
index f62bc780c1..c3fc45e648 100644
--- a/Samples/AllJoyn/ConsumerExperiences/cs/Package.appxmanifest
+++ b/Samples/AllJoyn/ConsumerExperiences/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AllJoyn/ProducerExperiences/cs/AllJoynProducerExperiences.csproj b/Samples/AllJoyn/ProducerExperiences/cs/AllJoynProducerExperiences.csproj
index d2a8b76f6d..f80a7b78c5 100644
--- a/Samples/AllJoyn/ProducerExperiences/cs/AllJoynProducerExperiences.csproj
+++ b/Samples/AllJoyn/ProducerExperiences/cs/AllJoynProducerExperiences.csproj
@@ -15,8 +15,8 @@
AllJoynProducerExperiences
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AllJoyn/ProducerExperiences/cs/Package.appxmanifest b/Samples/AllJoyn/ProducerExperiences/cs/Package.appxmanifest
index 5aceacb11e..3e8b482856 100644
--- a/Samples/AllJoyn/ProducerExperiences/cs/Package.appxmanifest
+++ b/Samples/AllJoyn/ProducerExperiences/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Altimeter/cpp/Altimeter.vcxproj b/Samples/Altimeter/cpp/Altimeter.vcxproj
index 37a3c6a625..2b483ddcb8 100644
--- a/Samples/Altimeter/cpp/Altimeter.vcxproj
+++ b/Samples/Altimeter/cpp/Altimeter.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Altimeter/cpp/Package.appxmanifest b/Samples/Altimeter/cpp/Package.appxmanifest
index 10582a4583..c8406b911e 100644
--- a/Samples/Altimeter/cpp/Package.appxmanifest
+++ b/Samples/Altimeter/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Altimeter/cs/Altimeter.csproj b/Samples/Altimeter/cs/Altimeter.csproj
index 8502bf413a..bf5ddfc842 100644
--- a/Samples/Altimeter/cs/Altimeter.csproj
+++ b/Samples/Altimeter/cs/Altimeter.csproj
@@ -14,8 +14,8 @@
Altimeter
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Altimeter/cs/Package.appxmanifest b/Samples/Altimeter/cs/Package.appxmanifest
index 5133d6a844..07eb5c3726 100644
--- a/Samples/Altimeter/cs/Package.appxmanifest
+++ b/Samples/Altimeter/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Altimeter/vb/Altimeter.vbproj b/Samples/Altimeter/vb/Altimeter.vbproj
index c6acbb57fe..e358b97327 100644
--- a/Samples/Altimeter/vb/Altimeter.vbproj
+++ b/Samples/Altimeter/vb/Altimeter.vbproj
@@ -14,8 +14,8 @@
Altimeter
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Altimeter/vb/Package.appxmanifest b/Samples/Altimeter/vb/Package.appxmanifest
index 0b5c566534..2ba8af57dd 100644
--- a/Samples/Altimeter/vb/Package.appxmanifest
+++ b/Samples/Altimeter/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AnimationMetrics/cpp/AnimationMetrics.vcxproj b/Samples/AnimationMetrics/cpp/AnimationMetrics.vcxproj
index ff2ea19aaa..d77c81baf0 100644
--- a/Samples/AnimationMetrics/cpp/AnimationMetrics.vcxproj
+++ b/Samples/AnimationMetrics/cpp/AnimationMetrics.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/AnimationMetrics/cpp/Package.appxmanifest b/Samples/AnimationMetrics/cpp/Package.appxmanifest
index 2fac2ed5ee..4f5b339e6a 100644
--- a/Samples/AnimationMetrics/cpp/Package.appxmanifest
+++ b/Samples/AnimationMetrics/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/AnimationMetrics/cs/AnimationMetrics.csproj b/Samples/AnimationMetrics/cs/AnimationMetrics.csproj
index 5acbebbd87..e6d02320e7 100644
--- a/Samples/AnimationMetrics/cs/AnimationMetrics.csproj
+++ b/Samples/AnimationMetrics/cs/AnimationMetrics.csproj
@@ -14,8 +14,8 @@
AnimationMetrics
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AnimationMetrics/cs/Package.appxmanifest b/Samples/AnimationMetrics/cs/Package.appxmanifest
index 6b773b1b7e..78369d5fa1 100644
--- a/Samples/AnimationMetrics/cs/Package.appxmanifest
+++ b/Samples/AnimationMetrics/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AnimationMetrics/vb/AnimationMetrics.vbproj b/Samples/AnimationMetrics/vb/AnimationMetrics.vbproj
index 6d469348e2..ecb29251db 100644
--- a/Samples/AnimationMetrics/vb/AnimationMetrics.vbproj
+++ b/Samples/AnimationMetrics/vb/AnimationMetrics.vbproj
@@ -14,8 +14,8 @@
AnimationMetrics
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AnimationMetrics/vb/Package.appxmanifest b/Samples/AnimationMetrics/vb/Package.appxmanifest
index 22fd35c3fd..6edcd171fa 100644
--- a/Samples/AnimationMetrics/vb/Package.appxmanifest
+++ b/Samples/AnimationMetrics/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AppServices/cppwinrt/AppServicesClient/AppServicesClient.vcxproj b/Samples/AppServices/cppwinrt/AppServicesClient/AppServicesClient.vcxproj
index 4e4fcacb14..b065b4b69b 100644
--- a/Samples/AppServices/cppwinrt/AppServicesClient/AppServicesClient.vcxproj
+++ b/Samples/AppServices/cppwinrt/AppServicesClient/AppServicesClient.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/AppServices/cppwinrt/AppServicesClient/Package.appxmanifest b/Samples/AppServices/cppwinrt/AppServicesClient/Package.appxmanifest
index 13326eb8c1..b9bab30d31 100644
--- a/Samples/AppServices/cppwinrt/AppServicesClient/Package.appxmanifest
+++ b/Samples/AppServices/cppwinrt/AppServicesClient/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AppServices/cppwinrt/AppServicesProvider/AppServicesProvider.vcxproj b/Samples/AppServices/cppwinrt/AppServicesProvider/AppServicesProvider.vcxproj
index b01ffbcdf2..d73a5001c1 100644
--- a/Samples/AppServices/cppwinrt/AppServicesProvider/AppServicesProvider.vcxproj
+++ b/Samples/AppServices/cppwinrt/AppServicesProvider/AppServicesProvider.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/AppServices/cppwinrt/AppServicesProvider/Package.appxmanifest b/Samples/AppServices/cppwinrt/AppServicesProvider/Package.appxmanifest
index a8bd5f3215..0e43147c78 100644
--- a/Samples/AppServices/cppwinrt/AppServicesProvider/Package.appxmanifest
+++ b/Samples/AppServices/cppwinrt/AppServicesProvider/Package.appxmanifest
@@ -22,7 +22,7 @@
-
+
diff --git a/Samples/AppServices/cppwinrt/RandomNumberService/RandomNumberService.vcxproj b/Samples/AppServices/cppwinrt/RandomNumberService/RandomNumberService.vcxproj
index ec8ea2313e..9978f91096 100644
--- a/Samples/AppServices/cppwinrt/RandomNumberService/RandomNumberService.vcxproj
+++ b/Samples/AppServices/cppwinrt/RandomNumberService/RandomNumberService.vcxproj
@@ -17,7 +17,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/AppServices/cs/AppServicesClient/AppServicesClient.csproj b/Samples/AppServices/cs/AppServicesClient/AppServicesClient.csproj
index 906b547c46..149d71f4e3 100644
--- a/Samples/AppServices/cs/AppServicesClient/AppServicesClient.csproj
+++ b/Samples/AppServices/cs/AppServicesClient/AppServicesClient.csproj
@@ -13,8 +13,8 @@
AppServicesClient
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AppServices/cs/AppServicesClient/Package.appxmanifest b/Samples/AppServices/cs/AppServicesClient/Package.appxmanifest
index 90dac3bcea..7c16f58ffd 100644
--- a/Samples/AppServices/cs/AppServicesClient/Package.appxmanifest
+++ b/Samples/AppServices/cs/AppServicesClient/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AppServices/cs/AppServicesProvider/AppServicesProvider.csproj b/Samples/AppServices/cs/AppServicesProvider/AppServicesProvider.csproj
index 45e3fb4f7b..71239ba1eb 100644
--- a/Samples/AppServices/cs/AppServicesProvider/AppServicesProvider.csproj
+++ b/Samples/AppServices/cs/AppServicesProvider/AppServicesProvider.csproj
@@ -13,8 +13,8 @@
AppServicesProvider
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AppServices/cs/AppServicesProvider/Package.appxmanifest b/Samples/AppServices/cs/AppServicesProvider/Package.appxmanifest
index 76656b57a2..98d5ea7bdc 100644
--- a/Samples/AppServices/cs/AppServicesProvider/Package.appxmanifest
+++ b/Samples/AppServices/cs/AppServicesProvider/Package.appxmanifest
@@ -22,7 +22,7 @@
-
+
diff --git a/Samples/AppServices/cs/RandomNumberService/RandomNumberService.csproj b/Samples/AppServices/cs/RandomNumberService/RandomNumberService.csproj
index 400c4414ad..46e5eecfc1 100644
--- a/Samples/AppServices/cs/RandomNumberService/RandomNumberService.csproj
+++ b/Samples/AppServices/cs/RandomNumberService/RandomNumberService.csproj
@@ -14,8 +14,8 @@
RandomNumberService
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AppWindow/cppwinrt/AppWindow.vcxproj b/Samples/AppWindow/cppwinrt/AppWindow.vcxproj
index 2d3ee56e9b..c38527a97b 100644
--- a/Samples/AppWindow/cppwinrt/AppWindow.vcxproj
+++ b/Samples/AppWindow/cppwinrt/AppWindow.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/AppWindow/cppwinrt/Package.appxmanifest b/Samples/AppWindow/cppwinrt/Package.appxmanifest
index 9e0c86f35b..d3a50cabef 100644
--- a/Samples/AppWindow/cppwinrt/Package.appxmanifest
+++ b/Samples/AppWindow/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/AppWindow/cs/AppWindow.csproj b/Samples/AppWindow/cs/AppWindow.csproj
index 8068d6c663..a8e222106a 100644
--- a/Samples/AppWindow/cs/AppWindow.csproj
+++ b/Samples/AppWindow/cs/AppWindow.csproj
@@ -14,8 +14,8 @@
AppWindow
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
15
true
512
diff --git a/Samples/AppWindow/cs/Package.appxmanifest b/Samples/AppWindow/cs/Package.appxmanifest
index f37978551c..5b028a8a80 100644
--- a/Samples/AppWindow/cs/Package.appxmanifest
+++ b/Samples/AppWindow/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ApplicationData/cppwinrt/ApplicationData.vcxproj b/Samples/ApplicationData/cppwinrt/ApplicationData.vcxproj
index 3d4f729b4d..5120810361 100644
--- a/Samples/ApplicationData/cppwinrt/ApplicationData.vcxproj
+++ b/Samples/ApplicationData/cppwinrt/ApplicationData.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/ApplicationData/cppwinrt/Package.appxmanifest b/Samples/ApplicationData/cppwinrt/Package.appxmanifest
index 185d8fef63..bbbc4f9f1a 100644
--- a/Samples/ApplicationData/cppwinrt/Package.appxmanifest
+++ b/Samples/ApplicationData/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/ApplicationData/cs/ApplicationData.csproj b/Samples/ApplicationData/cs/ApplicationData.csproj
index 89f06800c6..ecfc828fef 100644
--- a/Samples/ApplicationData/cs/ApplicationData.csproj
+++ b/Samples/ApplicationData/cs/ApplicationData.csproj
@@ -14,7 +14,7 @@
ApplicationDataSample
en-US
UAP
- 10.0.22000.0
+ 10.0.22621.0
$(TargetPlatformVersion)
14
true
diff --git a/Samples/ApplicationData/cs/Package.appxmanifest b/Samples/ApplicationData/cs/Package.appxmanifest
index ac4f130f7b..6694133d3e 100644
--- a/Samples/ApplicationData/cs/Package.appxmanifest
+++ b/Samples/ApplicationData/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/ApplicationResources/cpp/ApplicationResources.vcxproj b/Samples/ApplicationResources/cpp/ApplicationResources.vcxproj
index a1ae9c1f3f..35de1a3506 100644
--- a/Samples/ApplicationResources/cpp/ApplicationResources.vcxproj
+++ b/Samples/ApplicationResources/cpp/ApplicationResources.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ApplicationResources/cpp/Package.appxmanifest b/Samples/ApplicationResources/cpp/Package.appxmanifest
index 630f0d4684..216b733e0e 100644
--- a/Samples/ApplicationResources/cpp/Package.appxmanifest
+++ b/Samples/ApplicationResources/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/ApplicationResources/cs/AppResourceClassLibrary/AppResourceClassLibrary.csproj b/Samples/ApplicationResources/cs/AppResourceClassLibrary/AppResourceClassLibrary.csproj
index 1030949b9f..8e3cc4a782 100644
--- a/Samples/ApplicationResources/cs/AppResourceClassLibrary/AppResourceClassLibrary.csproj
+++ b/Samples/ApplicationResources/cs/AppResourceClassLibrary/AppResourceClassLibrary.csproj
@@ -14,8 +14,8 @@
AppResourceClassLibrary
en
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ApplicationResources/cs/ApplicationResources.csproj b/Samples/ApplicationResources/cs/ApplicationResources.csproj
index d39c9ae6af..3fd40bac00 100644
--- a/Samples/ApplicationResources/cs/ApplicationResources.csproj
+++ b/Samples/ApplicationResources/cs/ApplicationResources.csproj
@@ -13,8 +13,8 @@
ApplicationResources
en
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ApplicationResources/cs/Package.appxmanifest b/Samples/ApplicationResources/cs/Package.appxmanifest
index c71df6894d..87189da27a 100644
--- a/Samples/ApplicationResources/cs/Package.appxmanifest
+++ b/Samples/ApplicationResources/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
images\packagelogo.png
-
+
diff --git a/Samples/ApplicationResources/vb/AppResourceClassLibrary/AppResourceClassLibrary.vbproj b/Samples/ApplicationResources/vb/AppResourceClassLibrary/AppResourceClassLibrary.vbproj
index c1a80edcc2..43c201deed 100644
--- a/Samples/ApplicationResources/vb/AppResourceClassLibrary/AppResourceClassLibrary.vbproj
+++ b/Samples/ApplicationResources/vb/AppResourceClassLibrary/AppResourceClassLibrary.vbproj
@@ -14,8 +14,8 @@
AppResourceClassLibrary
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ApplicationResources/vb/ApplicationResources.vbproj b/Samples/ApplicationResources/vb/ApplicationResources.vbproj
index 95bd1a4ff1..7a248caf5d 100644
--- a/Samples/ApplicationResources/vb/ApplicationResources.vbproj
+++ b/Samples/ApplicationResources/vb/ApplicationResources.vbproj
@@ -14,8 +14,8 @@
ApplicationResources
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ApplicationResources/vb/Package.appxmanifest b/Samples/ApplicationResources/vb/Package.appxmanifest
index 3e8bfe2b4d..ecf5578335 100644
--- a/Samples/ApplicationResources/vb/Package.appxmanifest
+++ b/Samples/ApplicationResources/vb/Package.appxmanifest
@@ -8,7 +8,7 @@
images\packagelogo.png
-
+
diff --git a/Samples/Appointments/cs/Appointments.csproj b/Samples/Appointments/cs/Appointments.csproj
index 970c3401c6..340fdd8fd1 100644
--- a/Samples/Appointments/cs/Appointments.csproj
+++ b/Samples/Appointments/cs/Appointments.csproj
@@ -13,8 +13,8 @@
Appointments
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Appointments/cs/Package.appxmanifest b/Samples/Appointments/cs/Package.appxmanifest
index 6f20c0767d..dae81f5037 100644
--- a/Samples/Appointments/cs/Package.appxmanifest
+++ b/Samples/Appointments/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/Appointments/vb/Appointments.vbproj b/Samples/Appointments/vb/Appointments.vbproj
index c20cfd048b..197371d906 100644
--- a/Samples/Appointments/vb/Appointments.vbproj
+++ b/Samples/Appointments/vb/Appointments.vbproj
@@ -14,8 +14,8 @@
Appointments
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Appointments/vb/Package.appxmanifest b/Samples/Appointments/vb/Package.appxmanifest
index 66126950ff..ffd28465a9 100644
--- a/Samples/Appointments/vb/Package.appxmanifest
+++ b/Samples/Appointments/vb/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/AssociationLaunching/cs/AssociationLaunching.csproj b/Samples/AssociationLaunching/cs/AssociationLaunching.csproj
index f07cfc9367..e1e9532863 100644
--- a/Samples/AssociationLaunching/cs/AssociationLaunching.csproj
+++ b/Samples/AssociationLaunching/cs/AssociationLaunching.csproj
@@ -13,8 +13,8 @@
AssociationLaunching
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AssociationLaunching/cs/Package.appxmanifest b/Samples/AssociationLaunching/cs/Package.appxmanifest
index 4524a55204..b5aeac9c22 100644
--- a/Samples/AssociationLaunching/cs/Package.appxmanifest
+++ b/Samples/AssociationLaunching/cs/Package.appxmanifest
@@ -16,7 +16,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/AssociationLaunching/vb/AssociationLaunching.vbproj b/Samples/AssociationLaunching/vb/AssociationLaunching.vbproj
index 3d1441c2a0..da28215aa1 100644
--- a/Samples/AssociationLaunching/vb/AssociationLaunching.vbproj
+++ b/Samples/AssociationLaunching/vb/AssociationLaunching.vbproj
@@ -14,8 +14,8 @@
AssociationLaunching
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AssociationLaunching/vb/Package.appxmanifest b/Samples/AssociationLaunching/vb/Package.appxmanifest
index 42eb23671f..1d71fdc6e2 100644
--- a/Samples/AssociationLaunching/vb/Package.appxmanifest
+++ b/Samples/AssociationLaunching/vb/Package.appxmanifest
@@ -16,7 +16,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/AudioCategory/cs/AudioCategory/AudioCategory.csproj b/Samples/AudioCategory/cs/AudioCategory/AudioCategory.csproj
index a2af05c2fd..d8444eaf31 100644
--- a/Samples/AudioCategory/cs/AudioCategory/AudioCategory.csproj
+++ b/Samples/AudioCategory/cs/AudioCategory/AudioCategory.csproj
@@ -13,8 +13,8 @@
AudioCategory
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AudioCategory/cs/AudioCategory/Package.appxmanifest b/Samples/AudioCategory/cs/AudioCategory/Package.appxmanifest
index cf23e77cf1..431b44ffd7 100644
--- a/Samples/AudioCategory/cs/AudioCategory/Package.appxmanifest
+++ b/Samples/AudioCategory/cs/AudioCategory/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AudioCategory/cs/AudioCategoryCompanion/AudioCategoryCompanion.csproj b/Samples/AudioCategory/cs/AudioCategoryCompanion/AudioCategoryCompanion.csproj
index 66e5a8e8f2..3b03087682 100644
--- a/Samples/AudioCategory/cs/AudioCategoryCompanion/AudioCategoryCompanion.csproj
+++ b/Samples/AudioCategory/cs/AudioCategoryCompanion/AudioCategoryCompanion.csproj
@@ -13,8 +13,8 @@
AudioCategoryCompanion
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AudioCategory/cs/AudioCategoryCompanion/Package.appxmanifest b/Samples/AudioCategory/cs/AudioCategoryCompanion/Package.appxmanifest
index 37c7e462cf..cd64611735 100644
--- a/Samples/AudioCategory/cs/AudioCategoryCompanion/Package.appxmanifest
+++ b/Samples/AudioCategory/cs/AudioCategoryCompanion/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AudioCategory/vb/AudioCategory/AudioCategory.vbproj b/Samples/AudioCategory/vb/AudioCategory/AudioCategory.vbproj
index 0375a9b2ab..e623bc1799 100644
--- a/Samples/AudioCategory/vb/AudioCategory/AudioCategory.vbproj
+++ b/Samples/AudioCategory/vb/AudioCategory/AudioCategory.vbproj
@@ -14,8 +14,8 @@
AudioCategory
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AudioCategory/vb/AudioCategory/Package.appxmanifest b/Samples/AudioCategory/vb/AudioCategory/Package.appxmanifest
index db262c470f..dd60cf33bf 100644
--- a/Samples/AudioCategory/vb/AudioCategory/Package.appxmanifest
+++ b/Samples/AudioCategory/vb/AudioCategory/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AudioCategory/vb/AudioCategoryCompanion/AudioCategoryCompanion.vbproj b/Samples/AudioCategory/vb/AudioCategoryCompanion/AudioCategoryCompanion.vbproj
index 9e879c0e00..aa7b9f710e 100644
--- a/Samples/AudioCategory/vb/AudioCategoryCompanion/AudioCategoryCompanion.vbproj
+++ b/Samples/AudioCategory/vb/AudioCategoryCompanion/AudioCategoryCompanion.vbproj
@@ -14,8 +14,8 @@
AudioCategoryCompanion
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AudioCategory/vb/AudioCategoryCompanion/Package.appxmanifest b/Samples/AudioCategory/vb/AudioCategoryCompanion/Package.appxmanifest
index b8a74eb341..a821aa5afb 100644
--- a/Samples/AudioCategory/vb/AudioCategoryCompanion/Package.appxmanifest
+++ b/Samples/AudioCategory/vb/AudioCategoryCompanion/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/AudioCreation/cs/AudioCreation/AudioCreation.csproj b/Samples/AudioCreation/cs/AudioCreation/AudioCreation.csproj
index 4b215a5b9f..1311d1cff9 100644
--- a/Samples/AudioCreation/cs/AudioCreation/AudioCreation.csproj
+++ b/Samples/AudioCreation/cs/AudioCreation/AudioCreation.csproj
@@ -14,8 +14,8 @@
AudioCreation
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/AudioCreation/cs/AudioCreation/Package.appxmanifest b/Samples/AudioCreation/cs/AudioCreation/Package.appxmanifest
index 0fc774951b..c07be670be 100644
--- a/Samples/AudioCreation/cs/AudioCreation/Package.appxmanifest
+++ b/Samples/AudioCreation/cs/AudioCreation/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/AudioCreation/cs/CustomEffect/CustomEffect.csproj b/Samples/AudioCreation/cs/CustomEffect/CustomEffect.csproj
index 0db4a1e8e6..310b5fe4cf 100644
--- a/Samples/AudioCreation/cs/CustomEffect/CustomEffect.csproj
+++ b/Samples/AudioCreation/cs/CustomEffect/CustomEffect.csproj
@@ -14,8 +14,8 @@
CustomEffect
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackButton/cpp/Package.appxmanifest b/Samples/BackButton/cpp/Package.appxmanifest
index e21aa731ad..1c6a98f948 100644
--- a/Samples/BackButton/cpp/Package.appxmanifest
+++ b/Samples/BackButton/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BackButton/cpp/SystemBack.vcxproj b/Samples/BackButton/cpp/SystemBack.vcxproj
index d5ec0dd828..8fd63c70c5 100644
--- a/Samples/BackButton/cpp/SystemBack.vcxproj
+++ b/Samples/BackButton/cpp/SystemBack.vcxproj
@@ -10,8 +10,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
diff --git a/Samples/BackButton/cs/Package.appxmanifest b/Samples/BackButton/cs/Package.appxmanifest
index e861ca8192..cc4b1c6a6f 100644
--- a/Samples/BackButton/cs/Package.appxmanifest
+++ b/Samples/BackButton/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackButton/cs/SystemBack.csproj b/Samples/BackButton/cs/SystemBack.csproj
index f9d6820f65..4d0a57a6f1 100644
--- a/Samples/BackButton/cs/SystemBack.csproj
+++ b/Samples/BackButton/cs/SystemBack.csproj
@@ -13,8 +13,8 @@
SystemBack
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackButton/vb/Package.appxmanifest b/Samples/BackButton/vb/Package.appxmanifest
index 7dee75d0ba..ada72ebb00 100644
--- a/Samples/BackButton/vb/Package.appxmanifest
+++ b/Samples/BackButton/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackButton/vb/SystemBack.vbproj b/Samples/BackButton/vb/SystemBack.vbproj
index 949197b541..14c026d1b7 100644
--- a/Samples/BackButton/vb/SystemBack.vbproj
+++ b/Samples/BackButton/vb/SystemBack.vbproj
@@ -14,8 +14,8 @@
SystemBack
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundActivation/cpp/BackgroundActivation.vcxproj b/Samples/BackgroundActivation/cpp/BackgroundActivation.vcxproj
index e3200c99e3..42a1a7cfd0 100644
--- a/Samples/BackgroundActivation/cpp/BackgroundActivation.vcxproj
+++ b/Samples/BackgroundActivation/cpp/BackgroundActivation.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
BackgroundActivation
diff --git a/Samples/BackgroundActivation/cpp/Package.appxmanifest b/Samples/BackgroundActivation/cpp/Package.appxmanifest
index dc3d8f7573..1eda1006fe 100644
--- a/Samples/BackgroundActivation/cpp/Package.appxmanifest
+++ b/Samples/BackgroundActivation/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BackgroundActivation/cs/BackgroundActivation.csproj b/Samples/BackgroundActivation/cs/BackgroundActivation.csproj
index 0f58acdf17..37e74b26a5 100644
--- a/Samples/BackgroundActivation/cs/BackgroundActivation.csproj
+++ b/Samples/BackgroundActivation/cs/BackgroundActivation.csproj
@@ -14,8 +14,8 @@
BackgroundActivation
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundActivation/cs/Package.appxmanifest b/Samples/BackgroundActivation/cs/Package.appxmanifest
index 96d9c1ce63..9687f73064 100644
--- a/Samples/BackgroundActivation/cs/Package.appxmanifest
+++ b/Samples/BackgroundActivation/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackgroundActivation/vb/BackgroundActivation.vbproj b/Samples/BackgroundActivation/vb/BackgroundActivation.vbproj
index 959f4c4c31..029532f65f 100644
--- a/Samples/BackgroundActivation/vb/BackgroundActivation.vbproj
+++ b/Samples/BackgroundActivation/vb/BackgroundActivation.vbproj
@@ -14,8 +14,8 @@
BackgroundActivation
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundActivation/vb/Package.appxmanifest b/Samples/BackgroundActivation/vb/Package.appxmanifest
index f1b1d05efc..421fc7f23c 100644
--- a/Samples/BackgroundActivation/vb/Package.appxmanifest
+++ b/Samples/BackgroundActivation/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackgroundMediaPlayback/cs/BackgroundMediaPlayback.csproj b/Samples/BackgroundMediaPlayback/cs/BackgroundMediaPlayback.csproj
index 65e2683c97..6cc365cc96 100644
--- a/Samples/BackgroundMediaPlayback/cs/BackgroundMediaPlayback.csproj
+++ b/Samples/BackgroundMediaPlayback/cs/BackgroundMediaPlayback.csproj
@@ -14,8 +14,8 @@
BackgroundMediaPlayback
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundMediaPlayback/cs/Package.appxmanifest b/Samples/BackgroundMediaPlayback/cs/Package.appxmanifest
index 0380637d74..2244a2be10 100644
--- a/Samples/BackgroundMediaPlayback/cs/Package.appxmanifest
+++ b/Samples/BackgroundMediaPlayback/cs/Package.appxmanifest
@@ -14,7 +14,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BackgroundSensors/cpp/BackgroundSensors.vcxproj b/Samples/BackgroundSensors/cpp/BackgroundSensors.vcxproj
index eb980c8f39..8a6ad4a4ec 100644
--- a/Samples/BackgroundSensors/cpp/BackgroundSensors.vcxproj
+++ b/Samples/BackgroundSensors/cpp/BackgroundSensors.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BackgroundSensors/cpp/BackgroundTask/BackgroundTask.vcxproj b/Samples/BackgroundSensors/cpp/BackgroundTask/BackgroundTask.vcxproj
index 49869fa31f..a1d3a2e855 100644
--- a/Samples/BackgroundSensors/cpp/BackgroundTask/BackgroundTask.vcxproj
+++ b/Samples/BackgroundSensors/cpp/BackgroundTask/BackgroundTask.vcxproj
@@ -39,8 +39,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BackgroundSensors/cpp/Package.appxmanifest b/Samples/BackgroundSensors/cpp/Package.appxmanifest
index 4c01e7b195..9ba1bb8bab 100644
--- a/Samples/BackgroundSensors/cpp/Package.appxmanifest
+++ b/Samples/BackgroundSensors/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BackgroundSensors/cs/BackgroundSensors.csproj b/Samples/BackgroundSensors/cs/BackgroundSensors.csproj
index bae792eb8f..9678180b54 100644
--- a/Samples/BackgroundSensors/cs/BackgroundSensors.csproj
+++ b/Samples/BackgroundSensors/cs/BackgroundSensors.csproj
@@ -14,8 +14,8 @@
BackgroundSensors
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundSensors/cs/BackgroundTask/BackgroundTask.csproj b/Samples/BackgroundSensors/cs/BackgroundTask/BackgroundTask.csproj
index b63798edae..05773596c5 100644
--- a/Samples/BackgroundSensors/cs/BackgroundTask/BackgroundTask.csproj
+++ b/Samples/BackgroundSensors/cs/BackgroundTask/BackgroundTask.csproj
@@ -14,8 +14,8 @@
ActivitySensorTasksCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundSensors/cs/Package.appxmanifest b/Samples/BackgroundSensors/cs/Package.appxmanifest
index 4675d223b2..3a81c3d8f2 100644
--- a/Samples/BackgroundSensors/cs/Package.appxmanifest
+++ b/Samples/BackgroundSensors/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackgroundSensors/vb/BackgroundSensors.vbproj b/Samples/BackgroundSensors/vb/BackgroundSensors.vbproj
index 90843e755d..58ca589516 100644
--- a/Samples/BackgroundSensors/vb/BackgroundSensors.vbproj
+++ b/Samples/BackgroundSensors/vb/BackgroundSensors.vbproj
@@ -14,8 +14,8 @@
BackgroundSensors
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundSensors/vb/BackgroundTask/BackgroundTask.vbproj b/Samples/BackgroundSensors/vb/BackgroundTask/BackgroundTask.vbproj
index d36393e63a..e6a1acf8a1 100644
--- a/Samples/BackgroundSensors/vb/BackgroundTask/BackgroundTask.vbproj
+++ b/Samples/BackgroundSensors/vb/BackgroundTask/BackgroundTask.vbproj
@@ -14,8 +14,8 @@
ActivitySensorTasksCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundSensors/vb/Package.appxmanifest b/Samples/BackgroundSensors/vb/Package.appxmanifest
index 0cc3f121fc..bc84c30fcd 100644
--- a/Samples/BackgroundSensors/vb/Package.appxmanifest
+++ b/Samples/BackgroundSensors/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackgroundTask/cpp/BackgroundTask/BackgroundTask.vcxproj b/Samples/BackgroundTask/cpp/BackgroundTask/BackgroundTask.vcxproj
index 03dc3ffbf6..bdcb88dbe2 100644
--- a/Samples/BackgroundTask/cpp/BackgroundTask/BackgroundTask.vcxproj
+++ b/Samples/BackgroundTask/cpp/BackgroundTask/BackgroundTask.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BackgroundTask/cpp/BackgroundTask/Package.appxmanifest b/Samples/BackgroundTask/cpp/BackgroundTask/Package.appxmanifest
index dbbd34087e..5cb309755b 100644
--- a/Samples/BackgroundTask/cpp/BackgroundTask/Package.appxmanifest
+++ b/Samples/BackgroundTask/cpp/BackgroundTask/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BackgroundTask/cpp/Tasks/Tasks.vcxproj b/Samples/BackgroundTask/cpp/Tasks/Tasks.vcxproj
index f628f21c96..c249aa28d9 100644
--- a/Samples/BackgroundTask/cpp/Tasks/Tasks.vcxproj
+++ b/Samples/BackgroundTask/cpp/Tasks/Tasks.vcxproj
@@ -39,8 +39,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BackgroundTask/cs/BackgroundTask/BackgroundTask.csproj b/Samples/BackgroundTask/cs/BackgroundTask/BackgroundTask.csproj
index 923468f587..9f26b5447a 100644
--- a/Samples/BackgroundTask/cs/BackgroundTask/BackgroundTask.csproj
+++ b/Samples/BackgroundTask/cs/BackgroundTask/BackgroundTask.csproj
@@ -14,8 +14,8 @@
BackgroundTask
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTask/cs/BackgroundTask/Package.appxmanifest b/Samples/BackgroundTask/cs/BackgroundTask/Package.appxmanifest
index 455305e054..01e8b23f94 100644
--- a/Samples/BackgroundTask/cs/BackgroundTask/Package.appxmanifest
+++ b/Samples/BackgroundTask/cs/BackgroundTask/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackgroundTask/cs/Tasks/Tasks.csproj b/Samples/BackgroundTask/cs/Tasks/Tasks.csproj
index 8496665cae..d607face84 100644
--- a/Samples/BackgroundTask/cs/Tasks/Tasks.csproj
+++ b/Samples/BackgroundTask/cs/Tasks/Tasks.csproj
@@ -14,8 +14,8 @@
Tasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTask/vb/BackgroundTask/BackgroundTask.vbproj b/Samples/BackgroundTask/vb/BackgroundTask/BackgroundTask.vbproj
index 5ea3ba0b19..49200eba48 100644
--- a/Samples/BackgroundTask/vb/BackgroundTask/BackgroundTask.vbproj
+++ b/Samples/BackgroundTask/vb/BackgroundTask/BackgroundTask.vbproj
@@ -14,8 +14,8 @@
BackgroundTask
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTask/vb/BackgroundTask/Package.appxmanifest b/Samples/BackgroundTask/vb/BackgroundTask/Package.appxmanifest
index 9dd9ca8ae3..c7098a0912 100644
--- a/Samples/BackgroundTask/vb/BackgroundTask/Package.appxmanifest
+++ b/Samples/BackgroundTask/vb/BackgroundTask/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BackgroundTask/vb/Tasks/Tasks.vbproj b/Samples/BackgroundTask/vb/Tasks/Tasks.vbproj
index 3cf956de49..4940b99427 100644
--- a/Samples/BackgroundTask/vb/Tasks/Tasks.vbproj
+++ b/Samples/BackgroundTask/vb/Tasks/Tasks.vbproj
@@ -14,8 +14,8 @@
Tasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTransfer/cpp/BackgroundTransfer/BackgroundTransfer.vcxproj b/Samples/BackgroundTransfer/cpp/BackgroundTransfer/BackgroundTransfer.vcxproj
index c4ced06f57..1df6317d63 100644
--- a/Samples/BackgroundTransfer/cpp/BackgroundTransfer/BackgroundTransfer.vcxproj
+++ b/Samples/BackgroundTransfer/cpp/BackgroundTransfer/BackgroundTransfer.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BackgroundTransfer/cpp/BackgroundTransfer/Package.appxmanifest b/Samples/BackgroundTransfer/cpp/BackgroundTransfer/Package.appxmanifest
index 55343bfc5f..0f8d45a8b2 100644
--- a/Samples/BackgroundTransfer/cpp/BackgroundTransfer/Package.appxmanifest
+++ b/Samples/BackgroundTransfer/cpp/BackgroundTransfer/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BackgroundTransfer/cpp/Tasks/Tasks.vcxproj b/Samples/BackgroundTransfer/cpp/Tasks/Tasks.vcxproj
index 8f64e23259..59a87fa8b7 100644
--- a/Samples/BackgroundTransfer/cpp/Tasks/Tasks.vcxproj
+++ b/Samples/BackgroundTransfer/cpp/Tasks/Tasks.vcxproj
@@ -39,8 +39,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BackgroundTransfer/cs/BackgroundTransfer/BackgroundTransfer.csproj b/Samples/BackgroundTransfer/cs/BackgroundTransfer/BackgroundTransfer.csproj
index 1fba78b19f..a8cbeac36e 100644
--- a/Samples/BackgroundTransfer/cs/BackgroundTransfer/BackgroundTransfer.csproj
+++ b/Samples/BackgroundTransfer/cs/BackgroundTransfer/BackgroundTransfer.csproj
@@ -14,8 +14,8 @@
BackgroundTransfer
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTransfer/cs/BackgroundTransfer/Package.appxmanifest b/Samples/BackgroundTransfer/cs/BackgroundTransfer/Package.appxmanifest
index 34e6beefc9..1c72daa0c4 100644
--- a/Samples/BackgroundTransfer/cs/BackgroundTransfer/Package.appxmanifest
+++ b/Samples/BackgroundTransfer/cs/BackgroundTransfer/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BackgroundTransfer/cs/Tasks/Tasks.csproj b/Samples/BackgroundTransfer/cs/Tasks/Tasks.csproj
index b5686c5930..4685fe90d1 100644
--- a/Samples/BackgroundTransfer/cs/Tasks/Tasks.csproj
+++ b/Samples/BackgroundTransfer/cs/Tasks/Tasks.csproj
@@ -14,8 +14,8 @@
Tasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTransfer/vb/BackgroundTransfer/BackgroundTransfer.vbproj b/Samples/BackgroundTransfer/vb/BackgroundTransfer/BackgroundTransfer.vbproj
index e9e75cb968..390a9a682d 100644
--- a/Samples/BackgroundTransfer/vb/BackgroundTransfer/BackgroundTransfer.vbproj
+++ b/Samples/BackgroundTransfer/vb/BackgroundTransfer/BackgroundTransfer.vbproj
@@ -14,8 +14,8 @@
BackgroundTransfer
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BackgroundTransfer/vb/BackgroundTransfer/Package.appxmanifest b/Samples/BackgroundTransfer/vb/BackgroundTransfer/Package.appxmanifest
index 22e38d196a..2849deccf5 100644
--- a/Samples/BackgroundTransfer/vb/BackgroundTransfer/Package.appxmanifest
+++ b/Samples/BackgroundTransfer/vb/BackgroundTransfer/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BackgroundTransfer/vb/Tasks/Tasks.vbproj b/Samples/BackgroundTransfer/vb/Tasks/Tasks.vbproj
index 68e978f10b..636437a245 100644
--- a/Samples/BackgroundTransfer/vb/Tasks/Tasks.vbproj
+++ b/Samples/BackgroundTransfer/vb/Tasks/Tasks.vbproj
@@ -14,8 +14,8 @@
Tasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BarcodeScanner/cppwinrt/BarcodeScanner.vcxproj b/Samples/BarcodeScanner/cppwinrt/BarcodeScanner.vcxproj
index f095b2be10..eb033584e5 100644
--- a/Samples/BarcodeScanner/cppwinrt/BarcodeScanner.vcxproj
+++ b/Samples/BarcodeScanner/cppwinrt/BarcodeScanner.vcxproj
@@ -14,8 +14,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/BarcodeScanner/cppwinrt/Package.appxmanifest b/Samples/BarcodeScanner/cppwinrt/Package.appxmanifest
index e7cfc255db..b1e30994d2 100644
--- a/Samples/BarcodeScanner/cppwinrt/Package.appxmanifest
+++ b/Samples/BarcodeScanner/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/BarcodeScanner/cs/BarcodeScanner.csproj b/Samples/BarcodeScanner/cs/BarcodeScanner.csproj
index e946b9af2a..a177258357 100644
--- a/Samples/BarcodeScanner/cs/BarcodeScanner.csproj
+++ b/Samples/BarcodeScanner/cs/BarcodeScanner.csproj
@@ -14,8 +14,8 @@
BarcodeScanner
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BarcodeScanner/cs/Package.appxmanifest b/Samples/BarcodeScanner/cs/Package.appxmanifest
index 37ac5f4d2a..87fa8dfcab 100644
--- a/Samples/BarcodeScanner/cs/Package.appxmanifest
+++ b/Samples/BarcodeScanner/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BarcodeScannerProvider/cpp/BarcodeDecoder/BarcodeDecoder.vcxproj b/Samples/BarcodeScannerProvider/cpp/BarcodeDecoder/BarcodeDecoder.vcxproj
index 75abe08a51..f865231624 100644
--- a/Samples/BarcodeScannerProvider/cpp/BarcodeDecoder/BarcodeDecoder.vcxproj
+++ b/Samples/BarcodeScannerProvider/cpp/BarcodeDecoder/BarcodeDecoder.vcxproj
@@ -37,8 +37,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
diff --git a/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/BarcodeScannerProvider.vcxproj b/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/BarcodeScannerProvider.vcxproj
index f93c9cbcc5..fa27412e74 100644
--- a/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/BarcodeScannerProvider.vcxproj
+++ b/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/BarcodeScannerProvider.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/Package.appxmanifest b/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/Package.appxmanifest
index c32d0ee01f..84cb3d0b81 100644
--- a/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/Package.appxmanifest
+++ b/Samples/BarcodeScannerProvider/cpp/BarcodeScannerProvider/Package.appxmanifest
@@ -22,7 +22,7 @@
-
+
diff --git a/Samples/BarcodeScannerProvider/cs/BarcodeDecoder/BarcodeDecoder.csproj b/Samples/BarcodeScannerProvider/cs/BarcodeDecoder/BarcodeDecoder.csproj
index 008ef6f316..3ce3eef457 100644
--- a/Samples/BarcodeScannerProvider/cs/BarcodeDecoder/BarcodeDecoder.csproj
+++ b/Samples/BarcodeScannerProvider/cs/BarcodeDecoder/BarcodeDecoder.csproj
@@ -14,8 +14,8 @@
BarcodeDecoder
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/BarcodeScannerProvider.csproj b/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/BarcodeScannerProvider.csproj
index 58242be093..14e276769d 100644
--- a/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/BarcodeScannerProvider.csproj
+++ b/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/BarcodeScannerProvider.csproj
@@ -14,8 +14,8 @@
BarcodeScannerProvider
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/Package.appxmanifest b/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/Package.appxmanifest
index cab929d4b9..30db4a6764 100644
--- a/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/Package.appxmanifest
+++ b/Samples/BarcodeScannerProvider/cs/BarcodeScannerProvider/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Barometer/cpp/Barometer.vcxproj b/Samples/Barometer/cpp/Barometer.vcxproj
index 7eeb7163cf..03335b43c0 100644
--- a/Samples/Barometer/cpp/Barometer.vcxproj
+++ b/Samples/Barometer/cpp/Barometer.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Barometer/cpp/Package.appxmanifest b/Samples/Barometer/cpp/Package.appxmanifest
index 8aacd56454..9512136a00 100644
--- a/Samples/Barometer/cpp/Package.appxmanifest
+++ b/Samples/Barometer/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Barometer/cs/Barometer.csproj b/Samples/Barometer/cs/Barometer.csproj
index d66160b706..b7c29e47c3 100644
--- a/Samples/Barometer/cs/Barometer.csproj
+++ b/Samples/Barometer/cs/Barometer.csproj
@@ -14,8 +14,8 @@
Barometer
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Barometer/cs/Package.appxmanifest b/Samples/Barometer/cs/Package.appxmanifest
index ae86c548be..5706d4b74c 100644
--- a/Samples/Barometer/cs/Package.appxmanifest
+++ b/Samples/Barometer/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Barometer/vb/Barometer.vbproj b/Samples/Barometer/vb/Barometer.vbproj
index d7d262033a..3a42e8c7da 100644
--- a/Samples/Barometer/vb/Barometer.vbproj
+++ b/Samples/Barometer/vb/Barometer.vbproj
@@ -14,8 +14,8 @@
Barometer
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Barometer/vb/Package.appxmanifest b/Samples/Barometer/vb/Package.appxmanifest
index 8f534845d4..ae0fe992a7 100644
--- a/Samples/Barometer/vb/Package.appxmanifest
+++ b/Samples/Barometer/vb/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BasicFaceDetection/cppwinrt/BasicFaceDetection.vcxproj b/Samples/BasicFaceDetection/cppwinrt/BasicFaceDetection.vcxproj
index 7ef2a165dc..45484990cc 100644
--- a/Samples/BasicFaceDetection/cppwinrt/BasicFaceDetection.vcxproj
+++ b/Samples/BasicFaceDetection/cppwinrt/BasicFaceDetection.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/BasicFaceDetection/cppwinrt/Package.appxmanifest b/Samples/BasicFaceDetection/cppwinrt/Package.appxmanifest
index 239033a69c..1509f330cb 100644
--- a/Samples/BasicFaceDetection/cppwinrt/Package.appxmanifest
+++ b/Samples/BasicFaceDetection/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/BasicFaceDetection/cs/BasicFaceDetection.csproj b/Samples/BasicFaceDetection/cs/BasicFaceDetection.csproj
index c272c56110..ccc9085bac 100644
--- a/Samples/BasicFaceDetection/cs/BasicFaceDetection.csproj
+++ b/Samples/BasicFaceDetection/cs/BasicFaceDetection.csproj
@@ -14,8 +14,8 @@
BasicFaceDetection
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BasicFaceDetection/cs/Package.appxmanifest b/Samples/BasicFaceDetection/cs/Package.appxmanifest
index c487642c0c..6e45069468 100644
--- a/Samples/BasicFaceDetection/cs/Package.appxmanifest
+++ b/Samples/BasicFaceDetection/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BasicFaceTracking/cppwinrt/BasicFaceTracking.vcxproj b/Samples/BasicFaceTracking/cppwinrt/BasicFaceTracking.vcxproj
index 4f588f4409..55295f119f 100644
--- a/Samples/BasicFaceTracking/cppwinrt/BasicFaceTracking.vcxproj
+++ b/Samples/BasicFaceTracking/cppwinrt/BasicFaceTracking.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/BasicFaceTracking/cppwinrt/Package.appxmanifest b/Samples/BasicFaceTracking/cppwinrt/Package.appxmanifest
index 3d371cd172..0dd613a18e 100644
--- a/Samples/BasicFaceTracking/cppwinrt/Package.appxmanifest
+++ b/Samples/BasicFaceTracking/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/BasicFaceTracking/cs/BasicFaceTracking.csproj b/Samples/BasicFaceTracking/cs/BasicFaceTracking.csproj
index b232d9f1b1..85907fd34d 100644
--- a/Samples/BasicFaceTracking/cs/BasicFaceTracking.csproj
+++ b/Samples/BasicFaceTracking/cs/BasicFaceTracking.csproj
@@ -14,8 +14,8 @@
BasicFaceTracking
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BasicFaceTracking/cs/Package.appxmanifest b/Samples/BasicFaceTracking/cs/Package.appxmanifest
index 539a5c3e9c..de54ed9a35 100644
--- a/Samples/BasicFaceTracking/cs/Package.appxmanifest
+++ b/Samples/BasicFaceTracking/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BasicHologram/cpp/BasicHologram.vcxproj b/Samples/BasicHologram/cpp/BasicHologram.vcxproj
index d29fc650f8..7113f848c9 100644
--- a/Samples/BasicHologram/cpp/BasicHologram.vcxproj
+++ b/Samples/BasicHologram/cpp/BasicHologram.vcxproj
@@ -11,8 +11,8 @@
15.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
true
BasicHologram
diff --git a/Samples/BasicHologram/cpp/Package.appxmanifest b/Samples/BasicHologram/cpp/Package.appxmanifest
index af3106b23d..0ac4161230 100644
--- a/Samples/BasicHologram/cpp/Package.appxmanifest
+++ b/Samples/BasicHologram/cpp/Package.appxmanifest
@@ -19,7 +19,7 @@
-
+
diff --git a/Samples/BasicHologram/cppwinrt/BasicHologram.vcxproj b/Samples/BasicHologram/cppwinrt/BasicHologram.vcxproj
index 3788efb6da..700e5e16b2 100644
--- a/Samples/BasicHologram/cppwinrt/BasicHologram.vcxproj
+++ b/Samples/BasicHologram/cppwinrt/BasicHologram.vcxproj
@@ -13,8 +13,8 @@
15.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
diff --git a/Samples/BasicHologram/cppwinrt/Package.appxmanifest b/Samples/BasicHologram/cppwinrt/Package.appxmanifest
index 1e10115938..9159549eb0 100644
--- a/Samples/BasicHologram/cppwinrt/Package.appxmanifest
+++ b/Samples/BasicHologram/cppwinrt/Package.appxmanifest
@@ -19,7 +19,7 @@
-
+
diff --git a/Samples/BasicHologram/cs/BasicHologram.csproj b/Samples/BasicHologram/cs/BasicHologram.csproj
index dca758322f..4f5d15f02a 100644
--- a/Samples/BasicHologram/cs/BasicHologram.csproj
+++ b/Samples/BasicHologram/cs/BasicHologram.csproj
@@ -14,8 +14,8 @@
BasicHologram
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
15
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/BasicHologram/cs/Package.appxmanifest b/Samples/BasicHologram/cs/Package.appxmanifest
index d99e4569ab..6ffd7731e8 100644
--- a/Samples/BasicHologram/cs/Package.appxmanifest
+++ b/Samples/BasicHologram/cs/Package.appxmanifest
@@ -19,7 +19,7 @@
-
+
diff --git a/Samples/BasicInput/cpp/BasicInput.vcxproj b/Samples/BasicInput/cpp/BasicInput.vcxproj
index 8dab0dc27d..c15d8e60b6 100644
--- a/Samples/BasicInput/cpp/BasicInput.vcxproj
+++ b/Samples/BasicInput/cpp/BasicInput.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/BasicInput/cpp/Package.appxmanifest b/Samples/BasicInput/cpp/Package.appxmanifest
index 969b011d47..26e1910d02 100644
--- a/Samples/BasicInput/cpp/Package.appxmanifest
+++ b/Samples/BasicInput/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BasicInput/cs/BasicInput.csproj b/Samples/BasicInput/cs/BasicInput.csproj
index 0b8fe133fa..d9726816c2 100644
--- a/Samples/BasicInput/cs/BasicInput.csproj
+++ b/Samples/BasicInput/cs/BasicInput.csproj
@@ -13,8 +13,8 @@
BasicInput
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BasicInput/cs/Package.appxmanifest b/Samples/BasicInput/cs/Package.appxmanifest
index ddc32155f4..4aff07ea9f 100644
--- a/Samples/BasicInput/cs/Package.appxmanifest
+++ b/Samples/BasicInput/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BasicInput/vb/BasicInput.vbproj b/Samples/BasicInput/vb/BasicInput.vbproj
index b8aa8ccc2a..b3be1fe0c3 100644
--- a/Samples/BasicInput/vb/BasicInput.vbproj
+++ b/Samples/BasicInput/vb/BasicInput.vbproj
@@ -14,8 +14,8 @@
BasicInput
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BasicInput/vb/Package.appxmanifest b/Samples/BasicInput/vb/Package.appxmanifest
index e5b80f8b87..acacfca5a5 100644
--- a/Samples/BasicInput/vb/Package.appxmanifest
+++ b/Samples/BasicInput/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BasicMediaCasting/cs/BasicMediaCasting.csproj b/Samples/BasicMediaCasting/cs/BasicMediaCasting.csproj
index 4dbbcc674e..4b2ab3b073 100644
--- a/Samples/BasicMediaCasting/cs/BasicMediaCasting.csproj
+++ b/Samples/BasicMediaCasting/cs/BasicMediaCasting.csproj
@@ -14,8 +14,8 @@
BasicMediaCasting
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
false
512
diff --git a/Samples/BasicMediaCasting/cs/Package.appxmanifest b/Samples/BasicMediaCasting/cs/Package.appxmanifest
index bff8464825..202fc645d5 100644
--- a/Samples/BasicMediaCasting/cs/Package.appxmanifest
+++ b/Samples/BasicMediaCasting/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BasicMediaCasting/vb/BasicMediaCasting.vbproj b/Samples/BasicMediaCasting/vb/BasicMediaCasting.vbproj
index 8927463dcd..34b0695e16 100644
--- a/Samples/BasicMediaCasting/vb/BasicMediaCasting.vbproj
+++ b/Samples/BasicMediaCasting/vb/BasicMediaCasting.vbproj
@@ -14,8 +14,8 @@
BasicMediaCasting
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BasicMediaCasting/vb/Package.appxmanifest b/Samples/BasicMediaCasting/vb/Package.appxmanifest
index 24febdb1b9..0b228ffa8f 100644
--- a/Samples/BasicMediaCasting/vb/Package.appxmanifest
+++ b/Samples/BasicMediaCasting/vb/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BasicSuspension/cs/BasicSuspension.csproj b/Samples/BasicSuspension/cs/BasicSuspension.csproj
index 3a36c8c259..a4fe81b9bf 100644
--- a/Samples/BasicSuspension/cs/BasicSuspension.csproj
+++ b/Samples/BasicSuspension/cs/BasicSuspension.csproj
@@ -14,8 +14,8 @@
BasicSuspension
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BasicSuspension/cs/Package.appxmanifest b/Samples/BasicSuspension/cs/Package.appxmanifest
index 7c8e8b9ff4..5c7c07468a 100644
--- a/Samples/BasicSuspension/cs/Package.appxmanifest
+++ b/Samples/BasicSuspension/cs/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BluetoothAdvertisement/cs/BluetoothAdvertisement.csproj b/Samples/BluetoothAdvertisement/cs/BluetoothAdvertisement.csproj
index c2dc5be230..8dd7273959 100644
--- a/Samples/BluetoothAdvertisement/cs/BluetoothAdvertisement.csproj
+++ b/Samples/BluetoothAdvertisement/cs/BluetoothAdvertisement.csproj
@@ -14,8 +14,8 @@
BluetoothAdvertisement
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BluetoothAdvertisement/cs/Package.appxmanifest b/Samples/BluetoothAdvertisement/cs/Package.appxmanifest
index 0cb9ec4cb0..e40be9eba2 100644
--- a/Samples/BluetoothAdvertisement/cs/Package.appxmanifest
+++ b/Samples/BluetoothAdvertisement/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BluetoothAdvertisement/cs/Tasks/Tasks.csproj b/Samples/BluetoothAdvertisement/cs/Tasks/Tasks.csproj
index 1b348cb797..91f0c8906a 100644
--- a/Samples/BluetoothAdvertisement/cs/Tasks/Tasks.csproj
+++ b/Samples/BluetoothAdvertisement/cs/Tasks/Tasks.csproj
@@ -14,8 +14,8 @@
BackgroundTasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BluetoothAdvertisement/vb/BluetoothAdvertisement.vbproj b/Samples/BluetoothAdvertisement/vb/BluetoothAdvertisement.vbproj
index 25dd8b3cc5..1a40c24f31 100644
--- a/Samples/BluetoothAdvertisement/vb/BluetoothAdvertisement.vbproj
+++ b/Samples/BluetoothAdvertisement/vb/BluetoothAdvertisement.vbproj
@@ -14,8 +14,8 @@
BluetoothAdvertisement
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BluetoothAdvertisement/vb/Package.appxmanifest b/Samples/BluetoothAdvertisement/vb/Package.appxmanifest
index 2d9c1aec4a..c4c8ca94ce 100644
--- a/Samples/BluetoothAdvertisement/vb/Package.appxmanifest
+++ b/Samples/BluetoothAdvertisement/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/BluetoothAdvertisement/vb/Tasks/Tasks.vbproj b/Samples/BluetoothAdvertisement/vb/Tasks/Tasks.vbproj
index e766f1fce8..e4a76c0cc7 100644
--- a/Samples/BluetoothAdvertisement/vb/Tasks/Tasks.vbproj
+++ b/Samples/BluetoothAdvertisement/vb/Tasks/Tasks.vbproj
@@ -14,8 +14,8 @@
BackgroundTasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BluetoothLE/cppwinrt/BluetoothLE.vcxproj b/Samples/BluetoothLE/cppwinrt/BluetoothLE.vcxproj
index 74921a6ab8..eafc3a2531 100644
--- a/Samples/BluetoothLE/cppwinrt/BluetoothLE.vcxproj
+++ b/Samples/BluetoothLE/cppwinrt/BluetoothLE.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/BluetoothLE/cppwinrt/Package.appxmanifest b/Samples/BluetoothLE/cppwinrt/Package.appxmanifest
index 35d9f08770..7ecc01fa67 100644
--- a/Samples/BluetoothLE/cppwinrt/Package.appxmanifest
+++ b/Samples/BluetoothLE/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/BluetoothLE/cs/BluetoothLE.csproj b/Samples/BluetoothLE/cs/BluetoothLE.csproj
index 15eaee8c98..5c5e283003 100644
--- a/Samples/BluetoothLE/cs/BluetoothLE.csproj
+++ b/Samples/BluetoothLE/cs/BluetoothLE.csproj
@@ -14,8 +14,8 @@
BluetoothLEUniversal
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BluetoothLE/cs/Package.appxmanifest b/Samples/BluetoothLE/cs/Package.appxmanifest
index 486949322d..e638927411 100644
--- a/Samples/BluetoothLE/cs/Package.appxmanifest
+++ b/Samples/BluetoothLE/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/BluetoothRfcommChat/cs/Package.appxmanifest b/Samples/BluetoothRfcommChat/cs/Package.appxmanifest
index c0ce683699..534596977f 100644
--- a/Samples/BluetoothRfcommChat/cs/Package.appxmanifest
+++ b/Samples/BluetoothRfcommChat/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/BluetoothRfcommChat/cs/RfcommChat.csproj b/Samples/BluetoothRfcommChat/cs/RfcommChat.csproj
index 8c3944fd35..686d9e31a6 100644
--- a/Samples/BluetoothRfcommChat/cs/RfcommChat.csproj
+++ b/Samples/BluetoothRfcommChat/cs/RfcommChat.csproj
@@ -14,8 +14,8 @@
BluetoothRfcommChat
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/BluetoothRfcommChat/cs/Tasks/Tasks.csproj b/Samples/BluetoothRfcommChat/cs/Tasks/Tasks.csproj
index 0ad6cddf89..f6e2f454aa 100644
--- a/Samples/BluetoothRfcommChat/cs/Tasks/Tasks.csproj
+++ b/Samples/BluetoothRfcommChat/cs/Tasks/Tasks.csproj
@@ -14,8 +14,8 @@
BackgroundTasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/Calendar/cpp/Calendar.vcxproj b/Samples/Calendar/cpp/Calendar.vcxproj
index bfdef9d73f..77902ac884 100644
--- a/Samples/Calendar/cpp/Calendar.vcxproj
+++ b/Samples/Calendar/cpp/Calendar.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Calendar/cpp/Package.appxmanifest b/Samples/Calendar/cpp/Package.appxmanifest
index d482c199c2..87e0213877 100644
--- a/Samples/Calendar/cpp/Package.appxmanifest
+++ b/Samples/Calendar/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Calendar/cppwinrt/Calendar.vcxproj b/Samples/Calendar/cppwinrt/Calendar.vcxproj
index 695994ccfe..f14ad9f64b 100644
--- a/Samples/Calendar/cppwinrt/Calendar.vcxproj
+++ b/Samples/Calendar/cppwinrt/Calendar.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/Calendar/cppwinrt/Package.appxmanifest b/Samples/Calendar/cppwinrt/Package.appxmanifest
index 6082ad2d10..46d28a5ac4 100644
--- a/Samples/Calendar/cppwinrt/Package.appxmanifest
+++ b/Samples/Calendar/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/Calendar/cs/Calendar.csproj b/Samples/Calendar/cs/Calendar.csproj
index f5af37408a..eedd5166e7 100644
--- a/Samples/Calendar/cs/Calendar.csproj
+++ b/Samples/Calendar/cs/Calendar.csproj
@@ -13,8 +13,8 @@
Calendar
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Calendar/cs/Package.appxmanifest b/Samples/Calendar/cs/Package.appxmanifest
index 13dfd7daf4..7a420b3492 100644
--- a/Samples/Calendar/cs/Package.appxmanifest
+++ b/Samples/Calendar/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Calendar/vb/Calendar.vbproj b/Samples/Calendar/vb/Calendar.vbproj
index c7d75e56f3..6100602a95 100644
--- a/Samples/Calendar/vb/Calendar.vbproj
+++ b/Samples/Calendar/vb/Calendar.vbproj
@@ -14,8 +14,8 @@
Calendar
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Calendar/vb/Package.appxmanifest b/Samples/Calendar/vb/Package.appxmanifest
index 379b9dcc48..023eb46bf2 100644
--- a/Samples/Calendar/vb/Package.appxmanifest
+++ b/Samples/Calendar/vb/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/CameraAdvancedCapture/cpp/CameraAdvancedCapture.vcxproj b/Samples/CameraAdvancedCapture/cpp/CameraAdvancedCapture.vcxproj
index 2328b05d6a..b9e6eea975 100644
--- a/Samples/CameraAdvancedCapture/cpp/CameraAdvancedCapture.vcxproj
+++ b/Samples/CameraAdvancedCapture/cpp/CameraAdvancedCapture.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraAdvancedCapture/cpp/Package.appxmanifest b/Samples/CameraAdvancedCapture/cpp/Package.appxmanifest
index 4a59ffcd80..bf82de5c75 100644
--- a/Samples/CameraAdvancedCapture/cpp/Package.appxmanifest
+++ b/Samples/CameraAdvancedCapture/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraAdvancedCapture/cs/CameraAdvancedCapture.csproj b/Samples/CameraAdvancedCapture/cs/CameraAdvancedCapture.csproj
index d0b3877898..16af3e8e97 100644
--- a/Samples/CameraAdvancedCapture/cs/CameraAdvancedCapture.csproj
+++ b/Samples/CameraAdvancedCapture/cs/CameraAdvancedCapture.csproj
@@ -14,8 +14,8 @@
CameraAdvancedCapture
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraAdvancedCapture/cs/Package.appxmanifest b/Samples/CameraAdvancedCapture/cs/Package.appxmanifest
index d07a37505f..24f844dd66 100644
--- a/Samples/CameraAdvancedCapture/cs/Package.appxmanifest
+++ b/Samples/CameraAdvancedCapture/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraAdvancedCapture/vb/CameraAdvancedCapture.vbproj b/Samples/CameraAdvancedCapture/vb/CameraAdvancedCapture.vbproj
index 88304b42e2..61b526714e 100644
--- a/Samples/CameraAdvancedCapture/vb/CameraAdvancedCapture.vbproj
+++ b/Samples/CameraAdvancedCapture/vb/CameraAdvancedCapture.vbproj
@@ -14,8 +14,8 @@
CameraAdvancedCapture
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraAdvancedCapture/vb/Package.appxmanifest b/Samples/CameraAdvancedCapture/vb/Package.appxmanifest
index 9c43190cb1..7de0b16199 100644
--- a/Samples/CameraAdvancedCapture/vb/Package.appxmanifest
+++ b/Samples/CameraAdvancedCapture/vb/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraFaceDetection/cpp/CameraFaceDetection.vcxproj b/Samples/CameraFaceDetection/cpp/CameraFaceDetection.vcxproj
index 06ac176ffe..1040522266 100644
--- a/Samples/CameraFaceDetection/cpp/CameraFaceDetection.vcxproj
+++ b/Samples/CameraFaceDetection/cpp/CameraFaceDetection.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraFaceDetection/cpp/Package.appxmanifest b/Samples/CameraFaceDetection/cpp/Package.appxmanifest
index 02321269d7..699473aa15 100644
--- a/Samples/CameraFaceDetection/cpp/Package.appxmanifest
+++ b/Samples/CameraFaceDetection/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraFaceDetection/cs/CameraFaceDetection.csproj b/Samples/CameraFaceDetection/cs/CameraFaceDetection.csproj
index 9e104acda5..e2a33468da 100644
--- a/Samples/CameraFaceDetection/cs/CameraFaceDetection.csproj
+++ b/Samples/CameraFaceDetection/cs/CameraFaceDetection.csproj
@@ -14,8 +14,8 @@
CameraFaceDetection
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraFaceDetection/cs/Package.appxmanifest b/Samples/CameraFaceDetection/cs/Package.appxmanifest
index 7bc48a0bbc..00fdbbdd00 100644
--- a/Samples/CameraFaceDetection/cs/Package.appxmanifest
+++ b/Samples/CameraFaceDetection/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraFaceDetection/vb/CameraFaceDetection.vbproj b/Samples/CameraFaceDetection/vb/CameraFaceDetection.vbproj
index e3cf85cf16..d875a99c87 100644
--- a/Samples/CameraFaceDetection/vb/CameraFaceDetection.vbproj
+++ b/Samples/CameraFaceDetection/vb/CameraFaceDetection.vbproj
@@ -14,8 +14,8 @@
CameraFaceDetection
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraFaceDetection/vb/Package.appxmanifest b/Samples/CameraFaceDetection/vb/Package.appxmanifest
index 1c75cc78ad..70db423a9b 100644
--- a/Samples/CameraFaceDetection/vb/Package.appxmanifest
+++ b/Samples/CameraFaceDetection/vb/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraFrames/cpp/CameraFrames.vcxproj b/Samples/CameraFrames/cpp/CameraFrames.vcxproj
index cb676f2ec1..ad1abdd256 100644
--- a/Samples/CameraFrames/cpp/CameraFrames.vcxproj
+++ b/Samples/CameraFrames/cpp/CameraFrames.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/CameraFrames/cpp/Package.appxmanifest b/Samples/CameraFrames/cpp/Package.appxmanifest
index cb13d8f2ea..071e89c165 100644
--- a/Samples/CameraFrames/cpp/Package.appxmanifest
+++ b/Samples/CameraFrames/cpp/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraFrames/cs/CameraFrames.csproj b/Samples/CameraFrames/cs/CameraFrames.csproj
index 32e06b0be1..c4326c698d 100644
--- a/Samples/CameraFrames/cs/CameraFrames.csproj
+++ b/Samples/CameraFrames/cs/CameraFrames.csproj
@@ -13,8 +13,8 @@
CameraFrames
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraFrames/cs/Package.appxmanifest b/Samples/CameraFrames/cs/Package.appxmanifest
index bcd7e79a39..868c9ee245 100644
--- a/Samples/CameraFrames/cs/Package.appxmanifest
+++ b/Samples/CameraFrames/cs/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraGetPreviewFrame/cpp/CameraGetPreviewFrame.vcxproj b/Samples/CameraGetPreviewFrame/cpp/CameraGetPreviewFrame.vcxproj
index dccbc7e9a1..9ce707219b 100644
--- a/Samples/CameraGetPreviewFrame/cpp/CameraGetPreviewFrame.vcxproj
+++ b/Samples/CameraGetPreviewFrame/cpp/CameraGetPreviewFrame.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraGetPreviewFrame/cpp/Package.appxmanifest b/Samples/CameraGetPreviewFrame/cpp/Package.appxmanifest
index a1516ef167..124f69b546 100644
--- a/Samples/CameraGetPreviewFrame/cpp/Package.appxmanifest
+++ b/Samples/CameraGetPreviewFrame/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraGetPreviewFrame/cs/CameraGetPreviewFrame.csproj b/Samples/CameraGetPreviewFrame/cs/CameraGetPreviewFrame.csproj
index 8ea1f6f78b..09cd559814 100644
--- a/Samples/CameraGetPreviewFrame/cs/CameraGetPreviewFrame.csproj
+++ b/Samples/CameraGetPreviewFrame/cs/CameraGetPreviewFrame.csproj
@@ -14,8 +14,8 @@
CameraGetPreviewFrame
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraGetPreviewFrame/cs/Package.appxmanifest b/Samples/CameraGetPreviewFrame/cs/Package.appxmanifest
index 141e01b674..6955e2f5b9 100644
--- a/Samples/CameraGetPreviewFrame/cs/Package.appxmanifest
+++ b/Samples/CameraGetPreviewFrame/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraManualControls/cs/CameraManualControls.csproj b/Samples/CameraManualControls/cs/CameraManualControls.csproj
index 640b641bb4..1d934f67ee 100644
--- a/Samples/CameraManualControls/cs/CameraManualControls.csproj
+++ b/Samples/CameraManualControls/cs/CameraManualControls.csproj
@@ -14,8 +14,8 @@
CameraManualControls
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraManualControls/cs/Package.appxmanifest b/Samples/CameraManualControls/cs/Package.appxmanifest
index 9a6d6fa5fc..1069b6a868 100644
--- a/Samples/CameraManualControls/cs/Package.appxmanifest
+++ b/Samples/CameraManualControls/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraOpenCV/cs/CameraOpenCV.csproj b/Samples/CameraOpenCV/cs/CameraOpenCV.csproj
index db61fc4077..90f5532c6d 100644
--- a/Samples/CameraOpenCV/cs/CameraOpenCV.csproj
+++ b/Samples/CameraOpenCV/cs/CameraOpenCV.csproj
@@ -14,8 +14,8 @@
CameraOpenCV
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraOpenCV/cs/Package.appxmanifest b/Samples/CameraOpenCV/cs/Package.appxmanifest
index 326fb94648..9802a09525 100644
--- a/Samples/CameraOpenCV/cs/Package.appxmanifest
+++ b/Samples/CameraOpenCV/cs/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraOpenCV/shared/OpenCVBridge/OpenCVBridge.vcxproj b/Samples/CameraOpenCV/shared/OpenCVBridge/OpenCVBridge.vcxproj
index ff08bd85f2..b650490e55 100644
--- a/Samples/CameraOpenCV/shared/OpenCVBridge/OpenCVBridge.vcxproj
+++ b/Samples/CameraOpenCV/shared/OpenCVBridge/OpenCVBridge.vcxproj
@@ -37,8 +37,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
diff --git a/Samples/CameraProfile/cpp/CameraProfile.vcxproj b/Samples/CameraProfile/cpp/CameraProfile.vcxproj
index 438a86264f..2cac166873 100644
--- a/Samples/CameraProfile/cpp/CameraProfile.vcxproj
+++ b/Samples/CameraProfile/cpp/CameraProfile.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraProfile/cpp/Package.appxmanifest b/Samples/CameraProfile/cpp/Package.appxmanifest
index 9005f5998e..600e45c7a0 100644
--- a/Samples/CameraProfile/cpp/Package.appxmanifest
+++ b/Samples/CameraProfile/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraProfile/cs/CameraProfile.csproj b/Samples/CameraProfile/cs/CameraProfile.csproj
index 24d4be773c..c8ccf67e96 100644
--- a/Samples/CameraProfile/cs/CameraProfile.csproj
+++ b/Samples/CameraProfile/cs/CameraProfile.csproj
@@ -14,8 +14,8 @@
CameraProfile
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraProfile/cs/Package.appxmanifest b/Samples/CameraProfile/cs/Package.appxmanifest
index 625140fc9b..f6a228a908 100644
--- a/Samples/CameraProfile/cs/Package.appxmanifest
+++ b/Samples/CameraProfile/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraResolution/cpp/CameraResolution.vcxproj b/Samples/CameraResolution/cpp/CameraResolution.vcxproj
index fdff43b87e..8ce87c4d99 100644
--- a/Samples/CameraResolution/cpp/CameraResolution.vcxproj
+++ b/Samples/CameraResolution/cpp/CameraResolution.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraResolution/cpp/Package.appxmanifest b/Samples/CameraResolution/cpp/Package.appxmanifest
index 0a594a1df1..c9a86979f2 100644
--- a/Samples/CameraResolution/cpp/Package.appxmanifest
+++ b/Samples/CameraResolution/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraResolution/cs/CameraResolution.csproj b/Samples/CameraResolution/cs/CameraResolution.csproj
index aab6b32e67..8cf18b26e2 100644
--- a/Samples/CameraResolution/cs/CameraResolution.csproj
+++ b/Samples/CameraResolution/cs/CameraResolution.csproj
@@ -14,8 +14,8 @@
CameraResolution
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraResolution/cs/Package.appxmanifest b/Samples/CameraResolution/cs/Package.appxmanifest
index 96b720a1cf..3f24812e6b 100644
--- a/Samples/CameraResolution/cs/Package.appxmanifest
+++ b/Samples/CameraResolution/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraStarterKit/cpp/CameraStarterKit.vcxproj b/Samples/CameraStarterKit/cpp/CameraStarterKit.vcxproj
index c7a73bedf7..a51577ba21 100644
--- a/Samples/CameraStarterKit/cpp/CameraStarterKit.vcxproj
+++ b/Samples/CameraStarterKit/cpp/CameraStarterKit.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraStarterKit/cpp/Package.appxmanifest b/Samples/CameraStarterKit/cpp/Package.appxmanifest
index 22bd8c98a1..288a4375cc 100644
--- a/Samples/CameraStarterKit/cpp/Package.appxmanifest
+++ b/Samples/CameraStarterKit/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraStarterKit/cs/CameraStarterKit.csproj b/Samples/CameraStarterKit/cs/CameraStarterKit.csproj
index bc21fb3617..ba98735d90 100644
--- a/Samples/CameraStarterKit/cs/CameraStarterKit.csproj
+++ b/Samples/CameraStarterKit/cs/CameraStarterKit.csproj
@@ -14,8 +14,8 @@
CameraStarterKit
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraStarterKit/cs/Package.appxmanifest b/Samples/CameraStarterKit/cs/Package.appxmanifest
index 45eb8c6b16..d9db1013c0 100644
--- a/Samples/CameraStarterKit/cs/Package.appxmanifest
+++ b/Samples/CameraStarterKit/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraStarterKit/vb/CameraStarterKit.vbproj b/Samples/CameraStarterKit/vb/CameraStarterKit.vbproj
index 2e61695320..e6870ac2ce 100644
--- a/Samples/CameraStarterKit/vb/CameraStarterKit.vbproj
+++ b/Samples/CameraStarterKit/vb/CameraStarterKit.vbproj
@@ -14,8 +14,8 @@
CameraStarterKit
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraStarterKit/vb/Package.appxmanifest b/Samples/CameraStarterKit/vb/Package.appxmanifest
index f3d0fc7047..6383973a5e 100644
--- a/Samples/CameraStarterKit/vb/Package.appxmanifest
+++ b/Samples/CameraStarterKit/vb/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraStreamCoordinateMapper/cpp/CameraStreamCoordinateMapper.vcxproj b/Samples/CameraStreamCoordinateMapper/cpp/CameraStreamCoordinateMapper.vcxproj
index 1f5a966168..b9ed90fd84 100644
--- a/Samples/CameraStreamCoordinateMapper/cpp/CameraStreamCoordinateMapper.vcxproj
+++ b/Samples/CameraStreamCoordinateMapper/cpp/CameraStreamCoordinateMapper.vcxproj
@@ -12,8 +12,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/CameraStreamCoordinateMapper/cpp/Package.appxmanifest b/Samples/CameraStreamCoordinateMapper/cpp/Package.appxmanifest
index a3d06d676a..4ccfea4632 100644
--- a/Samples/CameraStreamCoordinateMapper/cpp/Package.appxmanifest
+++ b/Samples/CameraStreamCoordinateMapper/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraStreamCorrelation/cpp/CameraStreamCorrelation.vcxproj b/Samples/CameraStreamCorrelation/cpp/CameraStreamCorrelation.vcxproj
index c5dbce13da..97af8724c6 100644
--- a/Samples/CameraStreamCorrelation/cpp/CameraStreamCorrelation.vcxproj
+++ b/Samples/CameraStreamCorrelation/cpp/CameraStreamCorrelation.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
CameraStreamCorrelation
diff --git a/Samples/CameraStreamCorrelation/cpp/Package.appxmanifest b/Samples/CameraStreamCorrelation/cpp/Package.appxmanifest
index 991d22d90c..7090b58c4b 100644
--- a/Samples/CameraStreamCorrelation/cpp/Package.appxmanifest
+++ b/Samples/CameraStreamCorrelation/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/CameraStreamCorrelation/cpp/PoseTrackingPreview/PoseTrackingPreview.vcxproj b/Samples/CameraStreamCorrelation/cpp/PoseTrackingPreview/PoseTrackingPreview.vcxproj
index a80c1262fa..1ba4001880 100644
--- a/Samples/CameraStreamCorrelation/cpp/PoseTrackingPreview/PoseTrackingPreview.vcxproj
+++ b/Samples/CameraStreamCorrelation/cpp/PoseTrackingPreview/PoseTrackingPreview.vcxproj
@@ -39,8 +39,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/CameraVideoStabilization/cpp/CameraVideoStabilization.vcxproj b/Samples/CameraVideoStabilization/cpp/CameraVideoStabilization.vcxproj
index 64ffde7ed8..5802e2f721 100644
--- a/Samples/CameraVideoStabilization/cpp/CameraVideoStabilization.vcxproj
+++ b/Samples/CameraVideoStabilization/cpp/CameraVideoStabilization.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/CameraVideoStabilization/cpp/Package.appxmanifest b/Samples/CameraVideoStabilization/cpp/Package.appxmanifest
index 3740b9355d..f4fd06aa83 100644
--- a/Samples/CameraVideoStabilization/cpp/Package.appxmanifest
+++ b/Samples/CameraVideoStabilization/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraVideoStabilization/cs/CameraVideoStabilization.csproj b/Samples/CameraVideoStabilization/cs/CameraVideoStabilization.csproj
index b1bc77ffca..d3175fe069 100644
--- a/Samples/CameraVideoStabilization/cs/CameraVideoStabilization.csproj
+++ b/Samples/CameraVideoStabilization/cs/CameraVideoStabilization.csproj
@@ -14,8 +14,8 @@
CameraVideoStabilization
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraVideoStabilization/cs/Package.appxmanifest b/Samples/CameraVideoStabilization/cs/Package.appxmanifest
index d0ad7f4a1e..9c35c0b018 100644
--- a/Samples/CameraVideoStabilization/cs/Package.appxmanifest
+++ b/Samples/CameraVideoStabilization/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/CameraVideoStabilization/vb/CameraVideoStabilization.vbproj b/Samples/CameraVideoStabilization/vb/CameraVideoStabilization.vbproj
index c38d15a4da..4d7697b48b 100644
--- a/Samples/CameraVideoStabilization/vb/CameraVideoStabilization.vbproj
+++ b/Samples/CameraVideoStabilization/vb/CameraVideoStabilization.vbproj
@@ -14,8 +14,8 @@
CameraVideoStabilization
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/CameraVideoStabilization/vb/Package.appxmanifest b/Samples/CameraVideoStabilization/vb/Package.appxmanifest
index 54e4fca83e..e448c1bc43 100644
--- a/Samples/CameraVideoStabilization/vb/Package.appxmanifest
+++ b/Samples/CameraVideoStabilization/vb/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Capabilities/README.md b/Samples/Capabilities/README.md
index 7a7cff9074..c032c1df1c 100644
--- a/Samples/Capabilities/README.md
+++ b/Samples/Capabilities/README.md
@@ -38,6 +38,7 @@ The sample shows the following techniques:
- Checking whether a declared capability has been granted.
- Responding when a capability is granted or denied.
- Requesting multiple capabilities.
+- Setting display messages to specify usage purpose
**Note** The Windows universal samples require Visual Studio to build and Windows 10 to execute.
@@ -53,7 +54,7 @@ To obtain information about Microsoft Visual Studio and the tools for developing
## System requirements
-* Windows 10 version 18362 or higher
+* Windows 10 version 22621 or higher
## Build the sample
diff --git a/Samples/Capabilities/cppwinrt/Capabilities.vcxproj b/Samples/Capabilities/cppwinrt/Capabilities.vcxproj
index 8ce833e57b..e6f0619728 100644
--- a/Samples/Capabilities/cppwinrt/Capabilities.vcxproj
+++ b/Samples/Capabilities/cppwinrt/Capabilities.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/Capabilities/cppwinrt/Package.appxmanifest b/Samples/Capabilities/cppwinrt/Package.appxmanifest
index 40694cf649..70167f1e4e 100644
--- a/Samples/Capabilities/cppwinrt/Package.appxmanifest
+++ b/Samples/Capabilities/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/Capabilities/cppwinrt/SampleConfiguration.cpp b/Samples/Capabilities/cppwinrt/SampleConfiguration.cpp
index d934c7e6cc..1fafa0f6e4 100644
--- a/Samples/Capabilities/cppwinrt/SampleConfiguration.cpp
+++ b/Samples/Capabilities/cppwinrt/SampleConfiguration.cpp
@@ -25,6 +25,6 @@ hstring implementation::MainPage::FEATURE_NAME()
IVector implementation::MainPage::scenariosInner = winrt::single_threaded_observable_vector(
{
- Scenario{ L"Check capability", xaml_typename() },
+ Scenario{ L"Check capability and set display message", xaml_typename() },
Scenario{ L"Request multiple capabilities", xaml_typename() },
});
diff --git a/Samples/Capabilities/cppwinrt/Scenario1_Check.cpp b/Samples/Capabilities/cppwinrt/Scenario1_Check.cpp
index ebbf0ed3fb..5f80f69a57 100644
--- a/Samples/Capabilities/cppwinrt/Scenario1_Check.cpp
+++ b/Samples/Capabilities/cppwinrt/Scenario1_Check.cpp
@@ -21,6 +21,7 @@ using namespace winrt::Windows::Security::Authorization::AppCapabilityAccess;
using namespace winrt::Windows::System;
using namespace winrt::Windows::UI::Xaml;
using namespace winrt::Windows::UI::Xaml::Navigation;
+using namespace std::literals::chrono_literals;
namespace winrt::SDKTemplate::implementation
{
@@ -53,7 +54,7 @@ namespace winrt::SDKTemplate::implementation
UpdateCapabilityStatus();
}
- fire_and_forget Scenario1_Check::RequestAccessButton_Click(IInspectable const&, RoutedEventArgs const&)
+ fire_and_forget Scenario1_Check::StreamLocationButton_Click(IInspectable const&, RoutedEventArgs const&)
{
auto lifetime = get_strong();
@@ -62,6 +63,7 @@ namespace winrt::SDKTemplate::implementation
case AppCapabilityAccessStatus::Allowed:
// Access was already granted.
// AccessChanged event will trigger a recalc.
+ co_await StreamLocationAsync();
break;
case AppCapabilityAccessStatus::UserPromptRequired:
@@ -71,6 +73,7 @@ namespace winrt::SDKTemplate::implementation
{
// The user granted access.
// AccessChanged event will trigger a recalc.
+ co_await StreamLocationAsync();
}
break;
@@ -81,11 +84,10 @@ namespace winrt::SDKTemplate::implementation
// or explain why access is denied.
co_await Launcher::LaunchUriAsync(Uri(L"ms-settings:privacy-location"));
break;
-
}
}
- IAsyncAction Scenario1_Check::ShowLocationAsync()
+ IAsyncAction Scenario1_Check::StreamLocationAsync()
{
auto lifetime = get_strong();
@@ -94,19 +96,33 @@ namespace winrt::SDKTemplate::implementation
// Need try/catch because we can lose geolocator access at any time.
try
{
- LocationTextBlock().Text(L"Calculating current location...");
+ // Specify a message to explain to the user why we are tracking their location.
+ locationCapability.DisplayMessage(winrt::hstring(L"Streaming location"));
+
+ LocationTextBlock().Text(L"Finding your current location...");
Geolocator geolocator;
- Geoposition pos = co_await geolocator.GetGeopositionAsync();
- if (pos == nullptr)
- {
- LocationTextBlock().Text(L"Current location unknown.");
- }
- else
+
+ for (int i = 0; i < 4; i++)
{
- std::wostringstream output;
- output << L"Approximate location is Latitude " << pos.Coordinate().Point().Position().Latitude <<
- L", Longitude" << pos.Coordinate().Point().Position().Longitude;
- LocationTextBlock().Text(output.str());
+ Geoposition pos = co_await geolocator.GetGeopositionAsync();
+
+ if (pos == nullptr)
+ {
+ LocationTextBlock().Text(L"Current location unknown.");
+ }
+ else
+ {
+ std::wostringstream output;
+ output << L"Your location is: Latitude " << pos.Coordinate().Point().Position().Latitude <<
+ L", Longitude" << pos.Coordinate().Point().Position().Longitude;
+ LocationTextBlock().Text(output.str());
+ }
+
+ co_await winrt::resume_after(500ms);
+ co_await resume_foreground(Dispatcher());
+
+ // You can change the message as your app's usage changes.
+ locationCapability.DisplayMessage(L"Tracking your current location...");
}
}
catch (hresult_access_denied const&)
@@ -114,6 +130,13 @@ namespace winrt::SDKTemplate::implementation
// Lost access in the middle of the operation.
// AccessChanged event will trigger a recalc.
}
+
+ LocationTextBlock().Text(L"");
+
+ // Even though we clear the message immediately, it will take time before the message
+ // disappear from the system. The system has a minimum display time for the message,
+ // so that users can observe brief usage.
+ locationCapability.DisplayMessage(L"");
}
else
{
@@ -122,16 +145,15 @@ namespace winrt::SDKTemplate::implementation
}
}
- fire_and_forget Scenario1_Check::UpdateCapabilityStatus()
+ void Scenario1_Check::UpdateCapabilityStatus()
{
auto lifetime = get_strong();
AppCapabilityAccessStatus status = locationCapability.CheckAccess();
if (status == AppCapabilityAccessStatus::Allowed)
{
+ LocationAccessBlock().Visibility(Visibility::Collapsed);
LocationTextBlock().Visibility(Visibility::Visible);
- RequestAccessButton().Visibility(Visibility::Collapsed);
- co_await ShowLocationAsync();
}
else
{
@@ -142,27 +164,29 @@ namespace winrt::SDKTemplate::implementation
case AppCapabilityAccessStatus::NotDeclaredByApp:
// The app neglected to declare the capability in its manifest.
// This is a developer error.
- RequestAccessButton().Visibility(Visibility::Collapsed);
- rootPage.NotifyUser(L"App misconfiguration error. Contact vendor for support.", NotifyType::ErrorMessage);
+ LocationAccessBlock().Text(L"App misconfiguration error. Contact vendor for support.");
+ LocationAccessBlock().Visibility(Visibility::Visible);
break;
default:
case AppCapabilityAccessStatus::DeniedBySystem:
// We can send the user to the Settings page to obtain access
// or at least explain why access is denied.
- RequestAccessButton().Visibility(Visibility::Visible);
+ LocationAccessBlock().Text(L"The system has blocked access to location.");
+ LocationAccessBlock().Visibility(Visibility::Visible);
break;
case AppCapabilityAccessStatus::DeniedByUser:
// We can send the user to the Settings page to obtain access.
- RequestAccessButton().Visibility(Visibility::Visible);
+ LocationAccessBlock().Text(L"You must enable location access in Settings.");
+ LocationAccessBlock().Visibility(Visibility::Visible);
break;
case AppCapabilityAccessStatus::UserPromptRequired:
// We can prompt the user to give us access.
- RequestAccessButton().Visibility(Visibility::Visible);
+ LocationAccessBlock().Visibility(Visibility::Collapsed);
break;
}
}
}
-}
+}
\ No newline at end of file
diff --git a/Samples/Capabilities/cppwinrt/Scenario1_Check.h b/Samples/Capabilities/cppwinrt/Scenario1_Check.h
index 710edec22e..f13583fb50 100644
--- a/Samples/Capabilities/cppwinrt/Scenario1_Check.h
+++ b/Samples/Capabilities/cppwinrt/Scenario1_Check.h
@@ -22,7 +22,7 @@ namespace winrt::SDKTemplate::implementation
void OnNavigatedTo(Windows::UI::Xaml::Navigation::NavigationEventArgs const&);
void OnNavigatedFrom(Windows::UI::Xaml::Navigation::NavigationEventArgs const&);
- fire_and_forget RequestAccessButton_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ fire_and_forget StreamLocationButton_Click(Windows::Foundation::IInspectable const&, Windows::UI::Xaml::RoutedEventArgs const&);
private:
SDKTemplate::MainPage rootPage{ MainPage::Current() };
@@ -30,8 +30,8 @@ namespace winrt::SDKTemplate::implementation
event_token accessChangedToken;
fire_and_forget OnCapabilityAccessChanged(Windows::Security::Authorization::AppCapabilityAccess::AppCapability const&, Windows::Foundation::IInspectable const&);
- Windows::Foundation::IAsyncAction ShowLocationAsync();
- fire_and_forget UpdateCapabilityStatus();
+ Windows::Foundation::IAsyncAction StreamLocationAsync();
+ void UpdateCapabilityStatus();
};
}
diff --git a/Samples/Capabilities/cs/Capabilities.csproj b/Samples/Capabilities/cs/Capabilities.csproj
index 55d72bbfbe..30da9c6eb2 100644
--- a/Samples/Capabilities/cs/Capabilities.csproj
+++ b/Samples/Capabilities/cs/Capabilities.csproj
@@ -13,8 +13,8 @@
Capabilities
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Capabilities/cs/Package.appxmanifest b/Samples/Capabilities/cs/Package.appxmanifest
index 2e1efd7db2..624a95692e 100644
--- a/Samples/Capabilities/cs/Package.appxmanifest
+++ b/Samples/Capabilities/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Capabilities/cs/SampleConfiguration.cs b/Samples/Capabilities/cs/SampleConfiguration.cs
index ebc9262469..9798d59e12 100644
--- a/Samples/Capabilities/cs/SampleConfiguration.cs
+++ b/Samples/Capabilities/cs/SampleConfiguration.cs
@@ -21,7 +21,7 @@ public partial class MainPage : Page
List scenarios = new List
{
- new Scenario() { Title="Check capability", ClassType=typeof(Scenario1_Check)},
+ new Scenario() { Title="Check capability and set display message", ClassType=typeof(Scenario1_Check)},
new Scenario() { Title="Request multiple capabilities", ClassType=typeof(Scenario2_RequestMany)},
};
}
diff --git a/Samples/Capabilities/cs/Scenario1_Check.xaml.cs b/Samples/Capabilities/cs/Scenario1_Check.xaml.cs
index e96e48344a..2003d7fae2 100644
--- a/Samples/Capabilities/cs/Scenario1_Check.xaml.cs
+++ b/Samples/Capabilities/cs/Scenario1_Check.xaml.cs
@@ -56,13 +56,14 @@ async void OnCapabilityAccessChanged(AppCapability sender, object e)
await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () => UpdateCapabilityStatus());
}
- async void RequestAccessButton_Click(object sender, RoutedEventArgs e)
+ async void StreamLocationButton_Click(object sender, RoutedEventArgs e)
{
switch (locationCapability.CheckAccess())
{
case AppCapabilityAccessStatus.Allowed:
// Access was already granted.
// AccessChanged event will trigger a recalc.
+ await StreamLocationAsync();
break;
case AppCapabilityAccessStatus.UserPromptRequired:
@@ -72,6 +73,7 @@ async void RequestAccessButton_Click(object sender, RoutedEventArgs e)
{
// The user granted access.
// AccessChanged event will trigger a recalc.
+ await StreamLocationAsync();
}
break;
@@ -82,35 +84,53 @@ async void RequestAccessButton_Click(object sender, RoutedEventArgs e)
// or explain why access is denied.
await Launcher.LaunchUriAsync(new Uri("ms-settings:privacy-location"));
break;
-
}
}
- async Task ShowLocationAsync()
+ async Task StreamLocationAsync()
{
if (await Geolocator.RequestAccessAsync() == GeolocationAccessStatus.Allowed)
{
// Need try/catch because we can lose geolocator access at any time.
try
{
- LocationTextBlock.Text = "Calculating current location...";
+ // Specify a message to explain to the user why we are tracking their location.
+ locationCapability.DisplayMessage = "Streaming location";
+
+ LocationTextBlock.Text = "Finding your current location...";
Geolocator geolocator = new Geolocator();
- Geoposition pos = await geolocator.GetGeopositionAsync();
- if (pos == null)
- {
- LocationTextBlock.Text = "Current location unknown.";
- }
- else
+
+ for (int i = 0; i < 4; i++)
{
- LocationTextBlock.Text = $"Approximate location is Latitude {pos.Coordinate.Point.Position.Latitude:F}, Longitude {pos.Coordinate.Point.Position.Longitude:F}";
- }
+ Geoposition pos = await geolocator.GetGeopositionAsync();
+ if (pos == null)
+ {
+ LocationTextBlock.Text = "Current location unknown.";
+ }
+ else
+ {
+ LocationTextBlock.Text = $"Your location is: Latitude {pos.Coordinate.Point.Position.Latitude:F}, Longitude {pos.Coordinate.Point.Position.Longitude:F}";
+ }
+
+ await Task.Delay(500);
+
+ // You can change the message as your app's usage changes.
+ locationCapability.DisplayMessage = "Tracking your current location...";
+ }
}
catch (Exception ex) when (ex.HResult == unchecked((int)0x80070005)) // E_ACCESSDENIED
{
// Lost access in the middle of the operation.
// AccessChanged event will trigger a recalc.
}
+
+ LocationTextBlock.Text = "";
+
+ // Even though we clear the message immediately, it will take time before the message
+ // disappear from the system. The system has a minimum display time for the message,
+ // so that users can observe brief usage.
+ locationCapability.DisplayMessage = "";
}
else
{
@@ -119,14 +139,13 @@ async Task ShowLocationAsync()
}
}
- async void UpdateCapabilityStatus()
+ void UpdateCapabilityStatus()
{
AppCapabilityAccessStatus status = locationCapability.CheckAccess();
if (status == AppCapabilityAccessStatus.Allowed)
{
+ LocationAccessBlock.Visibility = Visibility.Collapsed;
LocationTextBlock.Visibility = Visibility.Visible;
- RequestAccessButton.Visibility = Visibility.Collapsed;
- await ShowLocationAsync();
}
else
{
@@ -137,28 +156,30 @@ async void UpdateCapabilityStatus()
case AppCapabilityAccessStatus.NotDeclaredByApp:
// The app neglected to declare the capability in its manifest.
// This is a developer error.
- RequestAccessButton.Visibility = Visibility.Collapsed;
- rootPage.NotifyUser("App misconfiguration error. Contact vendor for support.", NotifyType.ErrorMessage);
+ LocationAccessBlock.Text = "App misconfiguration error. Contact vendor for support.";
+ LocationAccessBlock.Visibility = Visibility.Visible;
break;
default:
case AppCapabilityAccessStatus.DeniedBySystem:
// We can send the user to the Settings page to obtain access
// or at least explain why access is denied.
- RequestAccessButton.Visibility = Visibility.Visible;
+ LocationAccessBlock.Text = "The system has blocked access to location.";
+ LocationAccessBlock.Visibility = Visibility.Visible;
break;
case AppCapabilityAccessStatus.DeniedByUser:
// We can send the user to the Settings page to obtain access.
- RequestAccessButton.Visibility = Visibility.Visible;
+ LocationAccessBlock.Text = "You must enable location access in Settings.";
+ LocationAccessBlock.Visibility = Visibility.Visible;
break;
case AppCapabilityAccessStatus.UserPromptRequired:
// We can prompt the user to give us access.
- RequestAccessButton.Visibility = Visibility.Visible;
+ LocationAccessBlock.Visibility = Visibility.Collapsed;
break;
}
}
}
}
-}
+}
\ No newline at end of file
diff --git a/Samples/Capabilities/shared/Scenario1_Check.xaml b/Samples/Capabilities/shared/Scenario1_Check.xaml
index 945613cecd..f3384b491d 100644
--- a/Samples/Capabilities/shared/Scenario1_Check.xaml
+++ b/Samples/Capabilities/shared/Scenario1_Check.xaml
@@ -1,4 +1,4 @@
-
+
+# Wi-Fi on-demand hotspot sample
+
+Shows how to use the [Windows.Devices.WiFi.WiFiOnDemandHotspotNetwork](https://docs.microsoft.com/uwp/api/Windows.Devices.WiFi.WiFiOnDemandHotspotNetwork) APIs.
+
+An on-demand hotspot is a Wi-Fi hotspot that can be enabled programmatically.
+When you create an on-demand hotspot and mark it as available,
+the system includes the hotspot in the list of available Wi-Fi networks.
+If the user chooses to connect to it, the system triggers the application's background task
+to turn on the hotspot.
+
+> **Note:** This sample is part of a large collection of UWP feature samples.
+> You can download this sample as a standalone ZIP file
+> [from docs.microsoft.com](https://docs.microsoft.com/samples/microsoft/windows-universal-samples/ondemandhotspot/),
+> or you can download the entire collection as a single
+> [ZIP file](https://github.com/Microsoft/Windows-universal-samples/archive/master.zip), but be
+> sure to unzip everything to access shared dependencies. For more info on working with the ZIP file,
+> the samples collection, and GitHub, see [Get the UWP samples from GitHub](https://aka.ms/ovu2uq).
+> For more samples, see the [Samples portal](https://aka.ms/winsamples) on the Windows Dev Center.
+
+Specifically, this sample demonstrates:
+
+- Registering and unregistering the background tasks ([Windows.ApplicationModel.Background.WiFiOnDemandHotspotUpdateMetadataTrigger](https://docs.microsoft.com/uwp/api/windows.applicationmodel.background.wifiondemandhotspotupdatemetadatatrigger) and [Windows.ApplicationModel.Background.WiFiOnDemandHotspotConnectTrigger](https://docs.microsoft.com/uwp/api/windows.applicationmodel.background.wifiondemandhotspotconnecttrigger)) for managing on-demand hotspots
+- Showing the on-demand hotspot in the list of available Wi-Fi networks
+- Reporting signal strength and other information about the on-demand hotspot
+- Showing when to turn on the on-demand hotspot when the user chooses to connect to it and providing the connection SSID and password
+
+> **Note:** Note that the SCCD file included with this sample is not valid,
+> but it is included for instructional purposes.
+> If the PC is Developer Mode, the sample will deploy despite the invalid SCCD file.
+> When writing your own app, follow the instructions in
+> [Custom Capabilities for Universal Windows Platform apps](https://msdn.microsoft.com/windows/hardware/drivers/devapps/custom-capabilities-for-universal-windows-platform-apps)
+> to obtain a properly-signed SCCD file.
+
+## System requirements
+
+**Client:** Windows 11, Build 22621 and later.
+
+**Server:** N/A
+
+## Build the sample
+
+1. If you download the samples ZIP, be sure to unzip the entire archive, not just the folder with the sample you want to build.
+2. Start Microsoft Visual Studio and select **File** \> **Open** \> **Project/Solution**.
+3. Starting in the folder where you unzipped the samples, go to the Samples subfolder, then the subfolder for this specific sample, then the subfolder for your preferred language (C++ or C#). Double-click the Visual Studio Solution (.sln) file.
+4. Press Ctrl+Shift+B, or select **Build** \> **Build Solution**.
+
+## Run the sample
+
+The next steps depend on whether you just want to deploy the sample or you want to both deploy and run it.
+
+### Deploying the sample
+
+- Select **Build** \> **Deploy Solution**.
+
+### Deploying and running the sample
+
+- To debug the sample and then run it, press F5 or select **Debug** \> **Start Debugging**. To run the sample without debugging, press Ctrl+F5 or select **Debug** \> **Start Without Debugging**.
+
+Each scenario has buttons you can use to perform the actions described in the scenario text. If you do not have any WiFi Adapters on your system, you will not be able to experience the scenarios.
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.def b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.def
new file mode 100644
index 0000000000..24e7c1235c
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.def
@@ -0,0 +1,3 @@
+EXPORTS
+DllCanUnloadNow = WINRT_CanUnloadNow PRIVATE
+DllGetActivationFactory = WINRT_GetActivationFactory PRIVATE
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.vcxproj b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.vcxproj
new file mode 100644
index 0000000000..9d2ce3eb59
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.vcxproj
@@ -0,0 +1,147 @@
+
+
+
+
+ true
+ true
+ true
+ true
+ true
+ {8b2d51d4-ee0b-4d69-b1ef-88e418c38d8b}
+ BackgroundTask
+ BackgroundTask
+ en-US
+ 14.0
+ true
+ Windows Store
+ 10.0
+ 10.0.22621.0
+ 10.0.22621.0
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ ARM64
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ ARM64
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ DynamicLibrary
+ v143
+ v142
+ v141
+ v140
+ Unicode
+ false
+
+
+ true
+ true
+
+
+ false
+ true
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Use
+ pch.h
+ $(IntDir)pch.pch
+ Level4
+ %(AdditionalOptions) /bigobj /std:c++17
+
+ /DWINRT_NO_MAKE_DETECTION %(AdditionalOptions)
+ _WINRT_DLL;WIN32_LEAN_AND_MEAN;WINRT_LEAN_AND_MEAN;%(PreprocessorDefinitions)
+ $(WindowsSDK_WindowsMetadata);$(AdditionalUsingDirectories)
+
+
+ Console
+ false
+ BackgroundTask.def
+
+
+
+
+ _DEBUG;%(PreprocessorDefinitions)
+
+
+
+
+ NDEBUG;%(PreprocessorDefinitions)
+
+
+ true
+ true
+
+
+
+
+
+
+
+
+ Create
+
+
+ Tasks.h
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.vcxproj.filters b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.vcxproj.filters
new file mode 100644
index 0000000000..7d03838a59
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/BackgroundTask.vcxproj.filters
@@ -0,0 +1,28 @@
+
+
+
+
+ accd3aa8-1ba0-4223-9bbe-0c431709210b
+ rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tga;tiff;tif;png;wav;mfcribbon-ms
+
+
+ {926ab91d-31b4-48c3-b9a4-e681349f27f0}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.cpp b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.cpp
new file mode 100644
index 0000000000..7e88b4abda
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.cpp
@@ -0,0 +1,130 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include "Tasks.h"
+#include "UpdateMetadataTask.g.cpp"
+#include "ConnectTask.g.cpp"
+
+using namespace winrt;
+using namespace winrt::Windows::ApplicationModel::Background;
+using namespace winrt::Windows::Data::Xml::Dom;
+using namespace winrt::Windows::Devices::WiFi;
+using namespace winrt::Windows::Foundation;
+using namespace winrt::Windows::Foundation::Collections;
+using namespace winrt::Windows::Security::Credentials;
+using namespace winrt::Windows::Storage;
+using namespace winrt::Windows::UI::Notifications;
+
+namespace winrt::BackgroundTask::implementation
+{
+ // This task is triggered when the system wants us to refresh our hotspot metadata.
+ // This typically happens when the system is about to show a list of available Wi-Fi networks.
+ void UpdateMetadataTask::Run(IBackgroundTaskInstance const&)
+ {
+ // A real on-demand hotspot task would contact each hotspot device to
+ // obtain this information. This sample doesn't have a real hotspot device,
+ // so it just repeats the information set by the UI portion of the app.
+
+ IPropertySet values{ ApplicationData::Current().LocalSettings().Values() };
+ std::optional hotspotGuid = values.TryLookup(L"hotspotGuid").try_as();
+ if (!hotspotGuid.has_value())
+ {
+ // Nothing configured.
+ return;
+ }
+
+ WiFiOnDemandHotspotNetwork network = WiFiOnDemandHotspotNetwork::GetOrCreateById(hotspotGuid.value());
+ WiFiOnDemandHotspotNetworkProperties properties = network.GetProperties();
+
+ properties.Availability(values.Lookup(L"availability").as() ? WiFiOnDemandHotspotAvailability::Available : WiFiOnDemandHotspotAvailability::Unavailable);
+ properties.DisplayName(values.Lookup(L"displayName").as());
+ std::optional bars = values.TryLookup(L"bars").try_as();
+ properties.CellularBars(bars.has_value() ? std::optional(static_cast(bars.value())) : std::nullopt);
+ properties.RemainingBatteryPercent(values.TryLookup(L"bars").try_as());
+ properties.Ssid(values.TryLookup(L"ssid").as());
+
+ PasswordCredential credential;
+ credential.Password(values.TryLookup(L"password").as());
+ properties.Password(credential);
+
+ network.UpdateProperties(properties);
+ }
+
+ // This task is triggered when the user selects our hotspot in the list of available Wi-Fi networks.
+ // The task should turn on the Wi-Fi hotspot so that the system can connect to it.
+
+ void ConnectTask::Run(IBackgroundTaskInstance const& taskInstance)
+ {
+ WiFiOnDemandHotspotConnectTriggerDetails triggerDetails = taskInstance.TriggerDetails().as();
+
+ // A real on-demand hotspot task would contact the hotspot device and tell it
+ // to start advertising the SSID.
+ //
+ // This sample doesn't have a real hotspot device, so it will simulate the action
+ // by displaying a toast to instruct the user to turn on the mobile hotspot manually.
+
+ WiFiOnDemandHotspotNetwork network = triggerDetails.RequestedNetwork();
+
+ // Is this the network we know how to turn on?
+ IPropertySet values = ApplicationData::Current().LocalSettings().Values();
+ if (values.TryLookup(L"hotspotGuid").try_as().value_or(winrt::guid{}) != network.Id())
+ {
+ triggerDetails.ReportError(WiFiOnDemandHotspotConnectStatus::UnspecifiedFailure);
+ return;
+ }
+
+ // To demonstrate how to report errors turning on the hotspot, we will report an error
+ // if the hotspot is configured with an SSID named "error".
+ WiFiOnDemandHotspotNetworkProperties properties = network.GetProperties();
+ hstring ssid = properties.Ssid();
+ if (ssid == L"error")
+ {
+ // Simulate an error turning on the hotspot. You can report any error code from the
+ // WiFiOnDemandHotspotConnectStatus enumeration.
+ triggerDetails.ReportError(WiFiOnDemandHotspotConnectStatus::NetworkNotAvailable);
+ }
+ else
+ {
+ DisplayToast(ssid);
+ Sleep(5000);
+
+ WiFiOnDemandHotspotConnectionResult result = triggerDetails.Connect();
+ values.Insert(L"connectResult", box_value(static_cast(result.Status())));
+ }
+ }
+
+ void ConnectTask::DisplayToast(const winrt::hstring& ssid)
+ {
+ ToastNotifier ToastNotifier = ToastNotificationManager::CreateToastNotifier();
+
+ // Create a two line toast and add audio reminder
+
+ // Here the xml that will be passed to the
+ // ToastNotification for the toast is retrieved
+ XmlDocument toastXml = ToastNotificationManager::GetTemplateContent(ToastTemplateType::ToastText02);
+
+ winrt::hstring message(L"SSID: '" + ssid + L"'. Connecting in five seconds.");
+
+ // Set both lines of text
+ XmlNodeList toastNodeList = toastXml.GetElementsByTagName(L"text");
+ toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode(L"Please turn on your hotspot now!"));
+ toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(message));
+
+ // now create a xml node for the audio source
+ IXmlNode toastNode = toastXml.SelectSingleNode(L"/toast");
+ XmlElement audio = toastXml.CreateElement(L"audio");
+ audio.SetAttribute(L"src", L"ms-winsoundevent:Notification.SMS");
+
+ ToastNotification toast(toastXml);
+ ToastNotifier.Show(toast);
+ }
+}
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.h b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.h
new file mode 100644
index 0000000000..3068c31ecf
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.h
@@ -0,0 +1,40 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+#include "pch.h"
+#include "UpdateMetadataTask.g.h"
+#include "ConnectTask.g.h"
+
+namespace winrt::BackgroundTask::implementation
+{
+ struct UpdateMetadataTask : UpdateMetadataTaskT
+ {
+ void Run(Windows::ApplicationModel::Background::IBackgroundTaskInstance const& taskInstance);
+ };
+
+ struct ConnectTask : ConnectTaskT
+ {
+ void Run(Windows::ApplicationModel::Background::IBackgroundTaskInstance const& taskInstance);
+ void DisplayToast(const winrt::hstring& ssid);
+ };
+}
+
+namespace winrt::BackgroundTask::factory_implementation
+{
+ struct UpdateMetadataTask : UpdateMetadataTaskT
+ {
+ };
+
+ struct ConnectTask : ConnectTaskT
+ {
+ };
+}
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.idl b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.idl
new file mode 100644
index 0000000000..901fa27aeb
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/Tasks.idl
@@ -0,0 +1,14 @@
+namespace BackgroundTask
+{
+ [default_interface]
+ runtimeclass UpdateMetadataTask : Windows.ApplicationModel.Background.IBackgroundTask
+ {
+ UpdateMetadataTask();
+ }
+
+ [default_interface]
+ runtimeclass ConnectTask : Windows.ApplicationModel.Background.IBackgroundTask
+ {
+ ConnectTask();
+ }
+}
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/packages.config b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/packages.config
new file mode 100644
index 0000000000..614e5993ee
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/pch.cpp b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/pch.cpp
new file mode 100644
index 0000000000..bcb5590be1
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/pch.cpp
@@ -0,0 +1 @@
+#include "pch.h"
diff --git a/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/pch.h b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/pch.h
new file mode 100644
index 0000000000..fe341f6b06
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/BackgroundTask/pch.h
@@ -0,0 +1,10 @@
+#pragma once
+#include
+#include
+#include
+#include "winrt/Windows.ApplicationModel.Background.h"
+#include "winrt/Windows.Data.Xml.Dom.h"
+#include "winrt/Windows.Devices.WiFi.h"
+#include "winrt/Windows.Security.Credentials.h"
+#include "winrt/Windows.Storage.h"
+#include "winrt/Windows.UI.Notifications.h"
diff --git a/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.sln b/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.sln
new file mode 100644
index 0000000000..98fea1389d
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.sln
@@ -0,0 +1,69 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31903.59
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "OnDemandHotspot", "OnDemandHotspot.vcxproj", "{A2D33437-5635-4832-AD71-08D653A37053}"
+EndProject
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "BackgroundTask", "BackgroundTask\BackgroundTask.vcxproj", "{8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|ARM64 = Debug|ARM64
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|ARM = Release|ARM
+ Release|ARM64 = Release|ARM64
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|ARM.ActiveCfg = Debug|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|ARM.Build.0 = Debug|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|ARM.Deploy.0 = Debug|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|ARM64.ActiveCfg = Debug|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|ARM64.Build.0 = Debug|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|ARM64.Deploy.0 = Debug|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|x64.ActiveCfg = Debug|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|x64.Build.0 = Debug|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|x64.Deploy.0 = Debug|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|x86.ActiveCfg = Debug|Win32
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|x86.Build.0 = Debug|Win32
+ {A2D33437-5635-4832-AD71-08D653A37053}.Debug|x86.Deploy.0 = Debug|Win32
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|ARM.ActiveCfg = Release|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|ARM.Build.0 = Release|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|ARM.Deploy.0 = Release|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|ARM64.ActiveCfg = Release|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|ARM64.Build.0 = Release|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|ARM64.Deploy.0 = Release|ARM
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|x64.ActiveCfg = Release|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|x64.Build.0 = Release|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|x64.Deploy.0 = Release|x64
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|x86.ActiveCfg = Release|Win32
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|x86.Build.0 = Release|Win32
+ {A2D33437-5635-4832-AD71-08D653A37053}.Release|x86.Deploy.0 = Release|Win32
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|ARM.ActiveCfg = Debug|ARM
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|ARM.Build.0 = Debug|ARM
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|ARM64.Build.0 = Debug|ARM64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|x64.ActiveCfg = Debug|x64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|x64.Build.0 = Debug|x64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|x86.ActiveCfg = Debug|Win32
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Debug|x86.Build.0 = Debug|Win32
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|ARM.ActiveCfg = Release|ARM
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|ARM.Build.0 = Release|ARM
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|ARM64.ActiveCfg = Release|ARM64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|ARM64.Build.0 = Release|ARM64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|x64.ActiveCfg = Release|x64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|x64.Build.0 = Release|x64
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|x86.ActiveCfg = Release|Win32
+ {8B2D51D4-EE0B-4D69-B1EF-88E418C38D8B}.Release|x86.Build.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {188076BF-8AB0-4B34-82D3-BCDA00EFE46F}
+ EndGlobalSection
+EndGlobal
diff --git a/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.vcxproj b/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.vcxproj
new file mode 100644
index 0000000000..293118a632
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.vcxproj
@@ -0,0 +1,192 @@
+
+
+
+
+ $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), LICENSE))\SharedContent
+
+
+ true
+ true
+ {A2D33437-5635-4832-AD71-08D653A37053}
+ OnDemandHotspot
+ SDKTemplate
+ en-US
+ 15.0
+ true
+ Windows Store
+ 10.0
+ 10.0.22621.0
+ $(WindowsTargetPlatformVersion)
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ Application
+ Unicode
+
+
+ true
+ true
+
+
+ false
+ true
+ false
+
+
+
+
+
+
+
+ $(VC_IncludePath);$(UniversalCRT_IncludePath);$(WindowsSDK_IncludePath);$(SharedContentDir)\cppwinrt
+ true
+
+
+
+ Use
+ pch.h
+ $(IntDir)pch.pch
+ Level4
+ %(AdditionalOptions) /bigobj /std:c++17
+ 4453;28204
+
+
+
+
+ _DEBUG;%(PreprocessorDefinitions)
+
+
+
+
+ NDEBUG;%(PreprocessorDefinitions)
+
+
+
+
+ $(SharedContentDir)\xaml\App.xaml
+
+
+ $(SharedContentDir)\xaml\MainPage.xaml
+
+
+
+ ..\shared\Scenario1_ManageHotspot.xaml
+
+
+
+
+
+ Designer
+
+
+ Designer
+
+
+
+ Styles\Styles.xaml
+
+
+
+
+ $(SharedContentDir)\xaml\App.xaml
+
+
+ $(SharedContentDir)\xaml\MainPage.xaml
+
+
+ SampleConfiguration.h
+
+
+ ..\shared\Scenario1_ManageHotspot.xaml
+
+
+ Create
+ pch.h
+
+
+ Project.idl
+
+
+
+
+ $(SharedContentDir)\xaml\MainPage.xaml
+
+
+
+
+
+ Designer
+
+
+
+
+ Assets\microsoft-sdk.png
+
+
+ Assets\smallTile-sdk.png
+
+
+ Assets\splash-sdk.png
+
+
+ Assets\squareTile-sdk.png
+
+
+ Assets\storeLogo-sdk.png
+
+
+ Assets\tile-sdk.png
+
+
+ Assets\windows-sdk.png
+
+
+
+
+ true
+
+
+
+
+
+ {8b2d51d4-ee0b-4d69-b1ef-88e418c38d8b}
+
+
+
+
+
+
+
+
+ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.vcxproj.filters b/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.vcxproj.filters
new file mode 100644
index 0000000000..7f18653391
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/OnDemandHotspot.vcxproj.filters
@@ -0,0 +1,60 @@
+
+
+
+
+ 4416d50a-7676-4d0a-9b2c-91ff70c6047f
+ bmp;fbx;gif;jpg;jpeg;tga;tiff;tif;png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/Package.appxmanifest b/Samples/OnDemandHotspot/cppwinrt/Package.appxmanifest
new file mode 100644
index 0000000000..4cce2d2340
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/Package.appxmanifest
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+ OnDemandHotspot C++/WinRT Sample
+ Microsoft Corporation
+ Assets\storelogo-sdk.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/OnDemandHotspot/cppwinrt/Project.idl b/Samples/OnDemandHotspot/cppwinrt/Project.idl
new file mode 100644
index 0000000000..db189a6ffe
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/Project.idl
@@ -0,0 +1,40 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+namespace SDKTemplate
+{
+ [default_interface]
+ runtimeclass Scenario1_ManageHotspot : Windows.UI.Xaml.Controls.Page
+ {
+ Scenario1_ManageHotspot();
+
+ Windows.UI.Xaml.Controls.ToggleSwitch CellularBarsToggle{ get; };
+ Windows.UI.Xaml.Controls.ToggleSwitch BatteryPercentageToggle{ get; };
+ }
+
+ [Windows.UI.Xaml.Data.Bindable]
+ runtimeclass ODHModel : Windows.UI.Xaml.Data.INotifyPropertyChanged
+ {
+ String Id { get; };
+ String DisplayName;
+ Boolean IsAvailable;
+ Boolean BarsVisible;
+ Int32 Bars;
+ Boolean BatteryVisible;
+ Int32 BatteryPercent;
+ String Ssid;
+ String Password;
+
+ Boolean SaveButtonEnabled { get; };
+ void Button_Click_Save();
+ void Button_Click_ApplyNow();
+ }
+}
diff --git a/Samples/OnDemandHotspot/cppwinrt/SampleConfiguration.cpp b/Samples/OnDemandHotspot/cppwinrt/SampleConfiguration.cpp
new file mode 100644
index 0000000000..fab16f2d2a
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/SampleConfiguration.cpp
@@ -0,0 +1,29 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include
+#include "MainPage.h"
+#include "SampleConfiguration.h"
+
+using namespace winrt;
+using namespace Windows::Foundation::Collections;
+using namespace SDKTemplate;
+
+hstring implementation::MainPage::FEATURE_NAME()
+{
+ return L"OnDemandHotspot C++/WinRT Sample";
+}
+
+IVector implementation::MainPage::scenariosInner = winrt::single_threaded_observable_vector(
+{
+ Scenario{ L"Manage Hotspot", xaml_typename() },
+});
diff --git a/Samples/OnDemandHotspot/cppwinrt/SampleConfiguration.h b/Samples/OnDemandHotspot/cppwinrt/SampleConfiguration.h
new file mode 100644
index 0000000000..81b51508df
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/SampleConfiguration.h
@@ -0,0 +1,38 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+#include "pch.h"
+
+namespace winrt::SDKTemplate
+{
+ namespace Constants
+ {
+ // This GUID can be any value. Use it to distinguish among different hotspots
+ // managed by the same app.
+ constexpr winrt::guid SampleHotspotGuid{L"4c6e8b20-b2de-472e-808b-bd423e168cd0"};
+
+ // Information about our task that updates the hotspot metadata.
+ // The EntryPoint must match the value declared in the application manifest.
+ inline constexpr wchar_t MetadataUpdateTaskName[] = L"UpdateMetadataTask";
+ inline constexpr wchar_t MetadataUpdateEntryPoint[] = L"BackgroundTask.UpdateMetadataTask";
+
+ // Information about our task that turns on the hotspot.
+ // The EntryPoint must match the value declared in the application manifest.
+ inline constexpr wchar_t ConnectTaskName[] = L"ConnectTask";
+ inline constexpr wchar_t ConnectEntryPoint[] = L"BackgroundTask.ConnectTask";
+
+ // Information about our task that monitors whether the hotspot is nearby.
+ // (We don't actually have a device watcher task, but if we did, its entry
+ // point must match the value declared in the application manifest.)
+ inline constexpr wchar_t DeviceWatcherTaskName[] = L"DeviceWatcherTask";
+ }
+}
diff --git a/Samples/OnDemandHotspot/cppwinrt/Scenario1_ManageHotspot.cpp b/Samples/OnDemandHotspot/cppwinrt/Scenario1_ManageHotspot.cpp
new file mode 100644
index 0000000000..6f6f68752b
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/Scenario1_ManageHotspot.cpp
@@ -0,0 +1,185 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include "SampleConfiguration.h"
+#include "Scenario1_ManageHotspot.h"
+#include "Scenario1_ManageHotspot.g.cpp"
+
+using namespace winrt;
+using namespace winrt::Windows::ApplicationModel::Background;
+using namespace winrt::Windows::Devices::WiFi;
+using namespace winrt::Windows::Foundation;
+using namespace winrt::Windows::Foundation::Collections;
+using namespace winrt::Windows::Security::Credentials;
+using namespace winrt::Windows::Storage;
+using namespace winrt::Windows::UI::Xaml;
+using namespace winrt::Windows::UI::Xaml::Navigation;
+
+namespace winrt::SDKTemplate::implementation
+{
+ Scenario1_ManageHotspot::Scenario1_ManageHotspot()
+ {
+ InitializeComponent();
+ }
+
+ void Scenario1_ManageHotspot::OnNavigatedTo(NavigationEventArgs const&)
+ {
+ m_network = WiFiOnDemandHotspotNetwork::GetOrCreateById(Constants::SampleHotspotGuid);
+
+ // Copy the values from the network properties into our UI.
+ WiFiOnDemandHotspotNetworkProperties properties = m_network.GetProperties();
+ DisplayNameText().Text(properties.DisplayName());
+ AvailableToggle().IsOn(properties.Availability() == WiFiOnDemandHotspotAvailability::Available);
+ std::optional bars = properties.CellularBars();
+ CellularBarsToggle().IsOn(bars.has_value());
+ static_assert(0 == (int)WiFiOnDemandHotspotCellularBars::ZeroBars);
+ static_assert(1 == (int)WiFiOnDemandHotspotCellularBars::OneBar);
+ static_assert(2 == (int)WiFiOnDemandHotspotCellularBars::TwoBars);
+ static_assert(3 == (int)WiFiOnDemandHotspotCellularBars::ThreeBars);
+ static_assert(4 == (int)WiFiOnDemandHotspotCellularBars::FourBars);
+ static_assert(5 == (int)WiFiOnDemandHotspotCellularBars::FiveBars);
+ CellularBarsSlider().Value(static_cast(bars.value_or(WiFiOnDemandHotspotCellularBars::ZeroBars)));
+ std::optional batteryPercent = properties.RemainingBatteryPercent();
+ BatteryPercentageToggle().IsOn(batteryPercent.has_value());
+ BatteryPercentageSlider().Value(batteryPercent.value_or(0));
+ SsidText().Text(properties.Ssid());
+ PasswordCredential password = properties.Password();
+ PasswordText().Password(password ? password.Password() : L"");
+
+ // Determine whether the background tasks are registered.
+ bool isRegistered = false;
+ for (const auto& [guid, task] : BackgroundTaskRegistration::AllTasks())
+ {
+ hstring name = task.Name();
+ if (name == Constants::MetadataUpdateTaskName ||
+ name == Constants::DeviceWatcherTaskName ||
+ name == Constants::ConnectTaskName)
+ {
+ isRegistered = true;
+ break;
+ }
+ }
+
+ VisualStateManager::GoToState(*this, isRegistered ? L"Registered" : L"NotRegistered", false);
+ }
+
+ void Scenario1_ManageHotspot::RegisterTasks_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ // Register the background task which updates the hotspot metadata when the system
+ // shows a list of Wi-Fi networks.
+ WiFiOnDemandHotspotUpdateMetadataTrigger updateMetadataTrigger;
+ BackgroundTaskBuilder backgroundTaskBuilder;
+ backgroundTaskBuilder.Name(Constants::MetadataUpdateTaskName);
+ backgroundTaskBuilder.TaskEntryPoint(Constants::MetadataUpdateEntryPoint);
+ backgroundTaskBuilder.SetTrigger(updateMetadataTrigger);
+ BackgroundTaskRegistration updateMetadataRegistration = backgroundTaskBuilder.Register();
+
+ // Register the background task which turns on the on-demand hotspot when the user
+ // selects it.
+ WiFiOnDemandHotspotConnectTrigger connectTrigger;
+ backgroundTaskBuilder.Name(Constants::ConnectTaskName);
+ backgroundTaskBuilder.TaskEntryPoint(Constants::ConnectEntryPoint);
+ backgroundTaskBuilder.SetTrigger(connectTrigger);
+ BackgroundTaskRegistration connectRegistration = backgroundTaskBuilder.Register();
+
+ // In practice, you will monitor when an on-demand hotspot comes into range or goes
+ // of range so you can update the Availability. This sample does not have a physical
+ // hotspot device, but we leave the code here as a demonstration.
+#if 0
+ DeviceWatcher deviceWatcher = DeviceInformation::CreateWatcher(Contoso::Devices::OnDemandHotSpot::GetDeviceSelector());
+ DeviceWatcherTrigger watcherTrigger = deviceWatcher.GetBackgroundTrigger({ DeviceWatcherEventKind::Add, DeviceWatcherEventKind::Remove, DeviceWatcherEventKind::Update });
+ backgroundTaskBuilder.Name(Constants::DeviceWatcherTaskName);
+ backgroundTaskBuilder.TaskEntryPoint(Constants::DeviceWatcherEntryPoint);
+ backgroundTaskBuilder.SetTrigger(watcherTrigger);
+ BackgroundTaskRegistration deviceWatcherRegistration = backgroundTaskBuilder.Register();
+#endif
+
+ VisualStateManager::GoToState(*this, L"Registered", false);
+
+ }
+
+ void Scenario1_ManageHotspot::UnregisterTasks_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ for (const auto& [guid, task] : BackgroundTaskRegistration::AllTasks())
+ {
+ hstring name = task.Name();
+ if (name == Constants::MetadataUpdateTaskName ||
+ name == Constants::DeviceWatcherTaskName ||
+ name == Constants::ConnectTaskName)
+ {
+ task.Unregister(true);
+ }
+ }
+
+ VisualStateManager::GoToState(*this, L"NotRegistered", false);
+ }
+
+ bool Scenario1_ManageHotspot::SavePropertiesForBackgroundTask()
+ {
+ rootPage.NotifyUser(L"", NotifyType::StatusMessage);
+
+ if (AvailableToggle().IsOn() && DisplayNameText().Text().empty())
+ {
+ rootPage.NotifyUser(L"An Available network must have a name.", NotifyType::ErrorMessage);
+ return false;
+ }
+
+ if (SsidText().Text().empty())
+ {
+ rootPage.NotifyUser(L"You must provide an SSID for the Wi-Fi network.", NotifyType::ErrorMessage);
+ return false;
+ }
+
+ if (PasswordText().Password().empty())
+ {
+ rootPage.NotifyUser(L"You must provide a password for the Wi-Fi network.", NotifyType::ErrorMessage);
+ return false;
+ }
+
+ IPropertySet values = ApplicationData::Current().LocalSettings().Values();
+ values.Insert(L"availability", box_value(AvailableToggle().IsOn()));
+ values.Insert(L"displayName", box_value(DisplayNameText().Text()));
+ values.Insert(L"bars", CellularBarsToggle().IsOn() ? box_value(static_cast(CellularBarsSlider().Value())) : nullptr);
+ values.Insert(L"battery", BatteryPercentageToggle().IsOn() ? box_value(static_cast(BatteryPercentageSlider().Value())) : nullptr);
+ values.Insert(L"ssid", box_value(SsidText().Text()));
+ values.Insert(L"password", box_value(PasswordText().Password()));
+ values.Insert(L"hotspotGuid", box_value(Constants::SampleHotspotGuid));
+
+ return true;
+ }
+
+ void Scenario1_ManageHotspot::UpdateNowButton_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ if (SavePropertiesForBackgroundTask())
+ {
+ // Copy the properties from the UI into the system network properties
+ // to configure how the on-demand hotspot appears in the system Wi-Fi list.
+ WiFiOnDemandHotspotNetworkProperties properties = m_network.GetProperties();
+ properties.Availability(AvailableToggle().IsOn() ? WiFiOnDemandHotspotAvailability::Available : WiFiOnDemandHotspotAvailability::Unavailable);
+ properties.DisplayName(DisplayNameText().Text());
+ properties.CellularBars(CellularBarsToggle().IsOn() ? std::optional(static_cast(CellularBarsSlider().Value())) : std::nullopt);
+ properties.RemainingBatteryPercent(BatteryPercentageToggle().IsOn() ? std::optional(static_cast(BatteryPercentageSlider().Value())) : std::nullopt);
+ properties.Ssid(SsidText().Text());
+
+ PasswordCredential credential;
+ credential.Password(PasswordText().Password());
+ properties.Password(credential);
+
+ m_network.UpdateProperties(properties);
+ }
+ }
+
+ void Scenario1_ManageHotspot::UpdateOnDemandButton_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ SavePropertiesForBackgroundTask();
+ }
+}
diff --git a/Samples/OnDemandHotspot/cppwinrt/Scenario1_ManageHotspot.h b/Samples/OnDemandHotspot/cppwinrt/Scenario1_ManageHotspot.h
new file mode 100644
index 0000000000..86bde566ef
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/Scenario1_ManageHotspot.h
@@ -0,0 +1,42 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+
+#include "Scenario1_ManageHotspot.g.h"
+#include "MainPage.h"
+
+namespace winrt::SDKTemplate::implementation
+{
+ struct Scenario1_ManageHotspot : Scenario1_ManageHotspotT
+ {
+ Scenario1_ManageHotspot();
+
+ void OnNavigatedTo(Windows::UI::Xaml::Navigation::NavigationEventArgs const&);
+ void RegisterTasks_Click(IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ void UnregisterTasks_Click(IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ void UpdateNowButton_Click(IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ void UpdateOnDemandButton_Click(IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+
+ private:
+ SDKTemplate::MainPage rootPage{ SDKTemplate::implementation::MainPage::Current() };
+ winrt::Windows::Devices::WiFi::WiFiOnDemandHotspotNetwork m_network{ nullptr };
+
+ bool SavePropertiesForBackgroundTask();
+ };
+}
+
+namespace winrt::SDKTemplate::factory_implementation
+{
+ struct Scenario1_ManageHotspot : Scenario1_ManageHotspotT
+ {
+ };
+}
diff --git a/Samples/OnDemandHotspot/cppwinrt/packages.config b/Samples/OnDemandHotspot/cppwinrt/packages.config
new file mode 100644
index 0000000000..614e5993ee
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cppwinrt/pch.cpp b/Samples/OnDemandHotspot/cppwinrt/pch.cpp
new file mode 100644
index 0000000000..01484ff5aa
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/pch.cpp
@@ -0,0 +1,6 @@
+//
+// pch.cpp
+// Include the standard header and generate the precompiled header.
+//
+
+#include "pch.h"
diff --git a/Samples/OnDemandHotspot/cppwinrt/pch.h b/Samples/OnDemandHotspot/cppwinrt/pch.h
new file mode 100644
index 0000000000..a4e4ff9684
--- /dev/null
+++ b/Samples/OnDemandHotspot/cppwinrt/pch.h
@@ -0,0 +1,23 @@
+#pragma once
+
+#include
+#include "winrt/Windows.Foundation.h"
+#include "winrt/Windows.Foundation.Collections.h"
+#include "winrt/Windows.ApplicationModel.Activation.h"
+#include "winrt/Windows.ApplicationModel.Background.h"
+#include "winrt/Windows.Devices.Enumeration.h"
+#include "winrt/Windows.Devices.Sensors.h"
+#include "winrt/Windows.Devices.WiFi.h"
+#include "winrt/Windows.Security.Credentials.h"
+#include "winrt/Windows.Storage.h"
+#include "winrt/Windows.System.h"
+#include "winrt/Windows.UI.Core.h"
+#include "winrt/Windows.UI.Xaml.h"
+#include "winrt/Windows.UI.Xaml.Automation.Peers.h"
+#include "winrt/Windows.UI.Xaml.Controls.h"
+#include "winrt/Windows.UI.Xaml.Controls.Primitives.h"
+#include "winrt/Windows.UI.Xaml.Documents.h"
+#include "winrt/Windows.UI.Xaml.Interop.h"
+#include "winrt/Windows.UI.Xaml.Markup.h"
+#include "winrt/Windows.UI.Xaml.Media.h"
+#include "winrt/Windows.UI.Xaml.Navigation.h"
diff --git a/Samples/OnDemandHotspot/cs/BackgroundTask/BackgroundTask.csproj b/Samples/OnDemandHotspot/cs/BackgroundTask/BackgroundTask.csproj
new file mode 100644
index 0000000000..ce4ad898de
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/BackgroundTask/BackgroundTask.csproj
@@ -0,0 +1,143 @@
+
+
+
+
+ Debug
+ AnyCPU
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}
+ winmdobj
+ Properties
+ BackgroundTask
+ BackgroundTask
+ en-US
+ UAP
+ 10.0.22621.0
+ 10.0.22621.0
+ 14
+ 512
+ {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+ false
+
+
+ AnyCPU
+ true
+ full
+ false
+ bin\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ prompt
+ 4
+
+
+ AnyCPU
+ pdbonly
+ true
+ bin\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ prompt
+ 4
+
+
+ x86
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ x86
+ bin\x86\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ ARM
+ true
+ bin\ARM\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ ARM
+ bin\ARM\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ ARM64
+ true
+ bin\ARM64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ ARM64
+ bin\ARM64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ x64
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP
+ ;2008
+ full
+ false
+ prompt
+
+
+ x64
+ bin\x64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UWP
+ true
+ ;2008
+ pdbonly
+ false
+ prompt
+
+
+ PackageReference
+
+
+
+
+
+
+
+ 6.2.14
+
+
+
+ 14.0
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cs/BackgroundTask/Properties/AssemblyInfo.cs b/Samples/OnDemandHotspot/cs/BackgroundTask/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000000..2582f0a9c1
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/BackgroundTask/Properties/AssemblyInfo.cs
@@ -0,0 +1,29 @@
+using System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("BackgroundTask")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("BackgroundTask")]
+[assembly: AssemblyCopyright("Copyright © 2021")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+
+// Version information for an assembly consists of the following four values:
+//
+// Major Version
+// Minor Version
+// Build Number
+// Revision
+//
+// You can specify all the values or you can default the Build and Revision Numbers
+// by using the '*' as shown below:
+// [assembly: AssemblyVersion("1.0.*")]
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
+[assembly: ComVisible(false)]
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cs/BackgroundTask/Tasks.cs b/Samples/OnDemandHotspot/cs/BackgroundTask/Tasks.cs
new file mode 100644
index 0000000000..ef694a567c
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/BackgroundTask/Tasks.cs
@@ -0,0 +1,125 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using Windows.ApplicationModel.Background;
+using Windows.Data.Xml.Dom;
+using Windows.Devices.WiFi;
+using Windows.Foundation.Collections;
+using Windows.Security.Credentials;
+using Windows.Storage;
+using Windows.UI.Notifications;
+
+namespace BackgroundTask
+{
+ // This task is triggered when the system wants us to refresh our hotspot metadata.
+ // This typically happens when the system is about to show a list of available Wi-Fi networks.
+ public sealed class UpdateMetadataTask : IBackgroundTask
+ {
+ public void Run(IBackgroundTaskInstance taskInstance)
+ {
+ // A real on-demand hotspot task would contact each hotspot device to
+ // obtain this information. This sample doesn't have a real hotspot device,
+ // so it just repeats the information set by the UI portion of the app.
+ IPropertySet values = ApplicationData.Current.LocalSettings.Values;
+ if (!values.TryGetValue("hotspotGuid", out object boxedHotspotGuid))
+ {
+ // Nothing configured.
+ return;
+ }
+
+ Guid hotspotGuid = (Guid)boxedHotspotGuid;
+ WiFiOnDemandHotspotNetwork network = WiFiOnDemandHotspotNetwork.GetOrCreateById(hotspotGuid);
+ WiFiOnDemandHotspotNetworkProperties properties = network.GetProperties();
+ properties.Availability = (bool)values["availability"] ? WiFiOnDemandHotspotAvailability.Available : WiFiOnDemandHotspotAvailability.Unavailable;
+ properties.DisplayName = (string)values["displayName"];
+ properties.CellularBars = (WiFiOnDemandHotspotCellularBars?)(int?)values["bars"];
+ properties.RemainingBatteryPercent = (uint?)values["battery"];
+ properties.Ssid = (string)values["ssid"];
+ properties.Password = new PasswordCredential { Password = (string)values["password"] };
+ network.UpdateProperties(properties);
+ }
+ }
+
+ // This task is triggered when the user selects our hotspot in the list of available Wi-Fi networks.
+ // The task should turn on the Wi-Fi hotspot so that the system can connect to it.
+
+ public sealed class ConnectTask : IBackgroundTask
+ {
+ public void Run(IBackgroundTaskInstance taskInstance)
+ {
+ var triggerDetails = (WiFiOnDemandHotspotConnectTriggerDetails)taskInstance.TriggerDetails;
+
+ // A real on-demand hotspot task would contact the hotspot device and tell it
+ // to start advertising the SSID.
+ //
+ // This sample doesn't have a real hotspot device, so it will simulate the action
+ // by displaying a toast to instruct the user to turn on the mobile hotspot manually.
+ //
+ // To demonstrate how to report errors turning on the hotspot, we will report an error
+ // if the hotspot is configured without an SSID or without a password.
+
+ WiFiOnDemandHotspotNetwork network = triggerDetails.RequestedNetwork;
+
+ // Is this the network we know how to turn on?
+ IPropertySet values = ApplicationData.Current.LocalSettings.Values;
+ if (!values.TryGetValue("hotspotGuid", out object boxedHotspotGuid) || (Guid)boxedHotspotGuid != network.Id)
+ {
+ triggerDetails.ReportError(WiFiOnDemandHotspotConnectStatus.UnspecifiedFailure);
+ return;
+ }
+
+ // To demonstrate how to report errors turning on the hotspot, we will report an error
+ // if the hotspot is configured with an SSID named "error".
+ WiFiOnDemandHotspotNetworkProperties properties = network.GetProperties();
+ if (properties.Ssid == "error")
+ {
+ // Simulate an error turning on the hotspot. You can report any error code from the
+ // WiFiOnDemandHotspotConnectStatus enumeration.
+ triggerDetails.ReportError(WiFiOnDemandHotspotConnectStatus.NetworkNotAvailable);
+ }
+ else
+ {
+ DisplayToast(properties.Ssid);
+ System.Threading.Thread.Sleep(5000);
+
+ WiFiOnDemandHotspotConnectionResult result = triggerDetails.Connect();
+ values["connectResult"] = (int)result.Status;
+ }
+ }
+
+ private void DisplayToast(string ssid)
+ {
+ ToastNotifier ToastNotifier = ToastNotificationManager.CreateToastNotifier();
+
+ // Create a two line toast and add audio reminder
+
+ // Here the xml that will be passed to the
+ // ToastNotification for the toast is retrieved
+ XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastText02);
+
+ string message = $"SSID: '{ssid}'. Connecting in five seconds.";
+
+ // Set both lines of text
+ XmlNodeList toastNodeList = toastXml.GetElementsByTagName("text");
+ toastNodeList.Item(0).AppendChild(toastXml.CreateTextNode("Please turn on your hotspot now!"));
+ toastNodeList.Item(1).AppendChild(toastXml.CreateTextNode(message));
+
+ // now create a xml node for the audio source
+ IXmlNode toastNode = toastXml.SelectSingleNode("/toast");
+ XmlElement audio = toastXml.CreateElement("audio");
+ audio.SetAttribute("src", "ms-winsoundevent:Notification.SMS");
+
+ ToastNotification toast = new ToastNotification(toastXml);
+ ToastNotifier.Show(toast);
+ }
+ }
+}
diff --git a/Samples/OnDemandHotspot/cs/OnDemandHotspot.csproj b/Samples/OnDemandHotspot/cs/OnDemandHotspot.csproj
new file mode 100644
index 0000000000..64c2a735ac
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/OnDemandHotspot.csproj
@@ -0,0 +1,186 @@
+
+
+
+
+ $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), LICENSE))\SharedContent
+
+
+ Debug
+ x86
+ {3801D410-A89D-5519-882E-E97B830400DC}
+ AppContainerExe
+ Properties
+ OnDemandHotspot
+ OnDemandHotspot
+ en-US
+ UAP
+ 10.0.22621.0
+ 10.0.22621.0
+ 14
+ true
+ 512
+ {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+
+
+ true
+ bin\ARM\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP
+ ;2008
+ full
+ ARM
+ false
+ prompt
+ true
+
+
+ bin\ARM\Release\
+ TRACE;NETFX_CORE;WINDOWS_UAP
+ true
+ ;2008
+ pdbonly
+ ARM
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP
+ ;2008
+ full
+ x64
+ false
+ prompt
+ true
+
+
+ bin\x64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UAP
+ true
+ ;2008
+ pdbonly
+ x64
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP
+ ;2008
+ full
+ x86
+ false
+ prompt
+ true
+
+
+ bin\x86\Release\
+ TRACE;NETFX_CORE;WINDOWS_UAP
+ true
+ ;2008
+ pdbonly
+ x86
+ false
+ prompt
+ true
+ true
+
+
+
+ App.xaml.cs
+ App.xaml
+
+
+ MainPage.xaml.cs
+ MainPage.xaml
+
+
+ Properties\AssemblyInfo.cs
+
+
+
+
+
+
+ Designer
+
+
+ Always
+
+
+
+
+ App.xaml
+ MSBuild:Compile
+ Designer
+
+
+ MainPage.xaml
+ MSBuild:Compile
+ Designer
+
+
+ Scenario1_ManageHotspot.xaml
+ MSBuild:Compile
+ Designer
+
+
+ Styles\Styles.xaml
+ MSBuild:Compile
+ Designer
+
+
+
+
+ Properties\Default.rd.xml
+
+
+ Assets\microsoft-sdk.png
+
+
+ Assets\smallTile-sdk.png
+
+
+ Assets\splash-sdk.png
+
+
+ Assets\squareTile-sdk.png
+
+
+ Assets\storeLogo-sdk.png
+
+
+ Assets\tile-sdk.png
+
+
+ Assets\windows-sdk.png
+
+
+
+
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}
+ BackgroundTask
+
+
+
+
+ 6.2.14
+
+
+
+ 14.0
+
+
+
+
\ No newline at end of file
diff --git a/Samples/OnDemandHotspot/cs/OnDemandHotspot.sln b/Samples/OnDemandHotspot/cs/OnDemandHotspot.sln
new file mode 100644
index 0000000000..118a543888
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/OnDemandHotspot.sln
@@ -0,0 +1,81 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 17
+VisualStudioVersion = 17.0.31903.59
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OnDemandHotspot", "OnDemandHotspot.csproj", "{3801D410-A89D-5519-882E-E97B830400DC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BackgroundTask", "BackgroundTask\BackgroundTask.csproj", "{5A7286FE-69B3-4835-9848-75B88781F2CE}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Debug|ARM = Debug|ARM
+ Debug|ARM64 = Debug|ARM64
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|Any CPU = Release|Any CPU
+ Release|ARM = Release|ARM
+ Release|ARM64 = Release|ARM64
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|Any CPU.ActiveCfg = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|Any CPU.Build.0 = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|Any CPU.Deploy.0 = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|ARM.ActiveCfg = Debug|ARM
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|ARM.Build.0 = Debug|ARM
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|ARM.Deploy.0 = Debug|ARM
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|ARM64.ActiveCfg = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|ARM64.Build.0 = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|ARM64.Deploy.0 = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|x64.ActiveCfg = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|x64.Build.0 = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|x64.Deploy.0 = Debug|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|x86.ActiveCfg = Debug|x86
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|x86.Build.0 = Debug|x86
+ {3801D410-A89D-5519-882E-E97B830400DC}.Debug|x86.Deploy.0 = Debug|x86
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|Any CPU.ActiveCfg = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|Any CPU.Build.0 = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|Any CPU.Deploy.0 = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|ARM.ActiveCfg = Release|ARM
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|ARM.Build.0 = Release|ARM
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|ARM.Deploy.0 = Release|ARM
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|ARM64.ActiveCfg = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|ARM64.Build.0 = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|ARM64.Deploy.0 = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|x64.ActiveCfg = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|x64.Build.0 = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|x64.Deploy.0 = Release|x64
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|x86.ActiveCfg = Release|x86
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|x86.Build.0 = Release|x86
+ {3801D410-A89D-5519-882E-E97B830400DC}.Release|x86.Deploy.0 = Release|x86
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|ARM.ActiveCfg = Debug|ARM
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|ARM.Build.0 = Debug|ARM
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|ARM64.ActiveCfg = Debug|ARM64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|ARM64.Build.0 = Debug|ARM64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|x64.ActiveCfg = Debug|x64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|x64.Build.0 = Debug|x64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|x86.ActiveCfg = Debug|x86
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Debug|x86.Build.0 = Debug|x86
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|ARM.ActiveCfg = Release|ARM
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|ARM.Build.0 = Release|ARM
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|ARM64.ActiveCfg = Release|ARM64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|ARM64.Build.0 = Release|ARM64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|x64.ActiveCfg = Release|x64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|x64.Build.0 = Release|x64
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|x86.ActiveCfg = Release|x86
+ {5A7286FE-69B3-4835-9848-75B88781F2CE}.Release|x86.Build.0 = Release|x86
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {18BEEAB9-98B7-4D3C-8E8C-69BA6C727693}
+ EndGlobalSection
+EndGlobal
diff --git a/Samples/OnDemandHotspot/cs/Package.appxmanifest b/Samples/OnDemandHotspot/cs/Package.appxmanifest
new file mode 100644
index 0000000000..3b7f120a71
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/Package.appxmanifest
@@ -0,0 +1,56 @@
+
+
+
+
+
+
+ OnDemandHotspot C# Sample
+ Microsoft Corporation
+ Assets\storelogo-sdk.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/OnDemandHotspot/cs/SampleConfiguration.cs b/Samples/OnDemandHotspot/cs/SampleConfiguration.cs
new file mode 100644
index 0000000000..cc0025af1f
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/SampleConfiguration.cs
@@ -0,0 +1,55 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using System.Collections.Generic;
+using Windows.UI.Xaml.Controls;
+
+namespace SDKTemplate
+{
+ public partial class MainPage : Page
+ {
+ public const string FEATURE_NAME = "OnDemandHotspot C# Sample";
+
+ List scenarios = new List
+ {
+ new Scenario() { Title="Manage Hotspot", ClassType=typeof(Scenario1_ManageHotspot)},
+ };
+ }
+
+ public class Scenario
+ {
+ public string Title { get; set; }
+ public Type ClassType { get; set; }
+ }
+
+ internal sealed class Constants
+ {
+ // This GUID can be any value. Use it to distinguish among different hotspots
+ // managed by the same app.
+ public static readonly Guid SampleHotspotGuid = new Guid("4c6e8b20-b2de-472e-808b-bd423e168cd0");
+
+ // Information about our task that updates the hotspot metadata.
+ // The EntryPoint must match the value declared in the application manifest.
+ public static readonly string MetadataUpdateTaskName = "UpdateMetadataTask";
+ public static readonly string MetadataUpdateEntryPoint = "BackgroundTask.UpdateMetadataTask";
+
+ // Information about our task that turns on the hotspot.
+ // The EntryPoint must match the value declared in the application manifest.
+ public static readonly string ConnectTaskName = "ConnectTask";
+ public static readonly string ConnectEntryPoint = "BackgroundTask.ConnectTask";
+
+ // Information about our task that monitors whether the hotspot is nearby.
+ // (We don't actually have a device watcher task, but if we did, its entry
+ // point must match the value declared in the application manifest.)
+ public static readonly string DeviceWatcherTaskName = "DeviceWatcherTask";
+ }
+}
diff --git a/Samples/OnDemandHotspot/cs/Scenario1_ManageHotspot.xaml.cs b/Samples/OnDemandHotspot/cs/Scenario1_ManageHotspot.xaml.cs
new file mode 100644
index 0000000000..b34bd1603e
--- /dev/null
+++ b/Samples/OnDemandHotspot/cs/Scenario1_ManageHotspot.xaml.cs
@@ -0,0 +1,185 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using System.Diagnostics;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Navigation;
+using Windows.ApplicationModel.Background;
+using Windows.Foundation.Collections;
+using Windows.Devices.WiFi;
+using Windows.Security.Credentials;
+using Windows.Storage;
+
+namespace SDKTemplate
+{
+ public sealed partial class Scenario1_ManageHotspot : Page
+ {
+ WiFiOnDemandHotspotNetwork m_network;
+ MainPage rootPage = MainPage.Current;
+
+ public Scenario1_ManageHotspot()
+ {
+ this.InitializeComponent();
+ }
+
+ static bool IsBackgroundTaskName(string name)
+ {
+ return name == Constants.MetadataUpdateTaskName ||
+ name == Constants.DeviceWatcherTaskName ||
+ name == Constants.ConnectTaskName;
+ }
+
+ protected override void OnNavigatedTo(NavigationEventArgs e)
+ {
+ m_network = WiFiOnDemandHotspotNetwork.GetOrCreateById(Constants.SampleHotspotGuid);
+
+ // Copy the values from the network properties into our UI.
+ WiFiOnDemandHotspotNetworkProperties properties = m_network.GetProperties();
+ DisplayNameText.Text = properties.DisplayName;
+ AvailableToggle.IsOn = properties.Availability == WiFiOnDemandHotspotAvailability.Available;
+ WiFiOnDemandHotspotCellularBars? bars = properties.CellularBars;
+ CellularBarsToggle.IsOn = bars.HasValue;
+ Debug.Assert(0 == (int)WiFiOnDemandHotspotCellularBars.ZeroBars);
+ Debug.Assert(1 == (int)WiFiOnDemandHotspotCellularBars.OneBar);
+ Debug.Assert(2 == (int)WiFiOnDemandHotspotCellularBars.TwoBars);
+ Debug.Assert(3 == (int)WiFiOnDemandHotspotCellularBars.ThreeBars);
+ Debug.Assert(4 == (int)WiFiOnDemandHotspotCellularBars.FourBars);
+ Debug.Assert(5 == (int)WiFiOnDemandHotspotCellularBars.FiveBars);
+ CellularBarsSlider.Value = (int)(bars ?? WiFiOnDemandHotspotCellularBars.ZeroBars);
+ uint? batteryPercent = properties.RemainingBatteryPercent;
+ BatteryPercentageToggle.IsOn = batteryPercent.HasValue;
+ BatteryPercentageSlider.Value = (int)(batteryPercent ?? 0);
+ SsidText.Text = properties.Ssid;
+ PasswordText.Password = properties.Password?.Password ?? String.Empty;
+
+ // Determine whether the background tasks are registered.
+ bool isRegistered = false;
+ foreach (var cur in BackgroundTaskRegistration.AllTasks)
+ {
+ if (IsBackgroundTaskName(cur.Value.Name))
+ {
+ isRegistered = true;
+ break;
+ }
+ }
+
+ VisualStateManager.GoToState(this, isRegistered ? "Registered" : "NotRegistered", false);
+ }
+
+ private void RegisterTasks_Click(object sender, RoutedEventArgs e)
+ {
+ // Register the background task which updates the hotspot metadata when the system
+ // shows a list of Wi-Fi networks.
+ var updateMetadataTrigger = new WiFiOnDemandHotspotUpdateMetadataTrigger();
+ var backgroundTaskBuilder = new BackgroundTaskBuilder();
+ backgroundTaskBuilder.Name = Constants.MetadataUpdateTaskName;
+ backgroundTaskBuilder.TaskEntryPoint = Constants.MetadataUpdateEntryPoint;
+ backgroundTaskBuilder.SetTrigger(updateMetadataTrigger);
+ BackgroundTaskRegistration updateMetadataRegistration = backgroundTaskBuilder.Register();
+
+ // Register the background task which turns on the on-demand hotspot when the user
+ // selects it.
+ var connectTrigger = new WiFiOnDemandHotspotConnectTrigger();
+ backgroundTaskBuilder.Name = Constants.ConnectTaskName;
+ backgroundTaskBuilder.TaskEntryPoint = Constants.ConnectEntryPoint;
+ backgroundTaskBuilder.SetTrigger(connectTrigger);
+ BackgroundTaskRegistration connectRegistration = backgroundTaskBuilder.Register();
+
+ // In practice, you will monitor when an on-demand hotspot comes into range or goes
+ // of range so you can update the Availability. This sample does not have a physical
+ // hotspot device, but we leave the code here as a demonstration.
+#if false
+ DeviceWatcher deviceWatcher = DeviceInformation.CreateWatcher(Contoso.Devices.OnDemandHotSpot.GetDeviceSelector());
+ var triggerEventKinds = new List { DeviceWatcherEventKind.Add, DeviceWatcherEventKind.Remove, DeviceWatcherEventKind.Update };
+ DeviceWatcherTrigger watcherTrigger = deviceWatcher.GetBackgroundTrigger(triggerEventKinds);
+ backgroundTaskBuilder.Name = Constants.DeviceWatcherTaskName;
+ backgroundTaskBuilder.TaskEntryPoint = Constants.DeviceWatcherEntryPoint;
+ backgroundTaskBuilder.SetTrigger(watcherTrigger);
+ BackgroundTaskRegistration deviceWatcherRegistration = backgroundTaskBuilder.Register();
+#endif
+
+ VisualStateManager.GoToState(this, "Registered", false);
+ }
+
+ private void UnregisterTasks_Click(object sender, RoutedEventArgs e)
+ {
+ foreach (var cur in BackgroundTaskRegistration.AllTasks)
+ {
+ if (IsBackgroundTaskName(cur.Value.Name))
+ {
+ cur.Value.Unregister(true);
+ }
+ }
+
+ VisualStateManager.GoToState(this, "NotRegistered", false);
+ }
+
+ private bool SavePropertiesForBackgroundTask()
+ {
+ rootPage.NotifyUser("", NotifyType.StatusMessage);
+
+ if (AvailableToggle.IsOn && String.IsNullOrEmpty(DisplayNameText.Text))
+ {
+ rootPage.NotifyUser("An Available network must have a name.", NotifyType.ErrorMessage);
+ return false;
+ }
+
+ if (String.IsNullOrEmpty(SsidText.Text))
+ {
+ rootPage.NotifyUser("You must provide an SSID for the Wi-Fi network.", NotifyType.ErrorMessage);
+ return false;
+ }
+
+ if (String.IsNullOrEmpty(PasswordText.Password))
+ {
+ rootPage.NotifyUser("You must provide a password for the Wi-Fi network.", NotifyType.ErrorMessage);
+ return false;
+ }
+
+
+ IPropertySet values = ApplicationData.Current.LocalSettings.Values;
+ values["availability"] = AvailableToggle.IsOn;
+ values["displayName"] = DisplayNameText.Text;
+ values["bars"] = CellularBarsToggle.IsOn ? (int?)CellularBarsSlider.Value : null;
+ values["battery"] = BatteryPercentageToggle.IsOn ? (uint?)BatteryPercentageSlider.Value : null;
+ values["ssid"] = SsidText.Text;
+ values["password"] = PasswordText.Password;
+ values["hotspotGuid"] = Constants.SampleHotspotGuid;
+
+ return true;
+ }
+
+ private void UpdateNowButton_Click(object sender, RoutedEventArgs e)
+ {
+ if (SavePropertiesForBackgroundTask())
+ {
+ // Copy the properties from the UI into the system network properties
+ // to configure how the on-demand hotspot appears in the system Wi-Fi list.
+ WiFiOnDemandHotspotNetworkProperties properties = m_network.GetProperties();
+ properties.Availability = AvailableToggle.IsOn ? WiFiOnDemandHotspotAvailability.Available : WiFiOnDemandHotspotAvailability.Unavailable;
+ properties.DisplayName = DisplayNameText.Text;
+ properties.CellularBars = CellularBarsToggle.IsOn ? (WiFiOnDemandHotspotCellularBars?)(int?)CellularBarsSlider.Value : null;
+ properties.RemainingBatteryPercent = BatteryPercentageToggle.IsOn ? (uint?)BatteryPercentageSlider.Value : null;
+ properties.Ssid = SsidText.Text;
+ properties.Password = new PasswordCredential { Password = PasswordText.Password };
+ m_network.UpdateProperties(properties);
+ }
+ }
+
+ private void UpdateOnDemandButton_Click(object sender, RoutedEventArgs e)
+ {
+ SavePropertiesForBackgroundTask();
+ }
+ }
+}
+
diff --git a/Samples/OnDemandHotspot/shared/CustomCapability.SCCD b/Samples/OnDemandHotspot/shared/CustomCapability.SCCD
new file mode 100644
index 0000000000..0fb52e602a
--- /dev/null
+++ b/Samples/OnDemandHotspot/shared/CustomCapability.SCCD
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
+
+
+ xxxx
+
diff --git a/Samples/OnDemandHotspot/shared/Scenario1_ManageHotspot.xaml b/Samples/OnDemandHotspot/shared/Scenario1_ManageHotspot.xaml
new file mode 100644
index 0000000000..b6fe7bc406
--- /dev/null
+++ b/Samples/OnDemandHotspot/shared/Scenario1_ManageHotspot.xaml
@@ -0,0 +1,117 @@
+
+
+
+
+
+
+
+ To create an on-demand hotspot, register a background task to provide
+ information about the hotspot when the system shows a list of Wi-Fi networks,
+ and another to turn on the hotspot when the user selects it. You probably also
+ want to register a background task to detect when the hotspot is in range
+ so you can update its availability and other properties.
+
+
+ This sample does not control a physical hotspot device,
+ so we will simulate it by displaying a toast message instructing you
+ to turn on your mobile phone's hotspot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Enter the SSID and password of your mobile phone hotspot (or any other Wi-Fi network).
+ In a real program, you would use the SSID and password of the on-demand hotspot.
+ Set the SSID to "error" to simulate an error turning on the hotspot.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/OrientationSensor/cpp/OrientationSensor.vcxproj b/Samples/OrientationSensor/cpp/OrientationSensor.vcxproj
index 68eaf56e1d..5a42a65699 100644
--- a/Samples/OrientationSensor/cpp/OrientationSensor.vcxproj
+++ b/Samples/OrientationSensor/cpp/OrientationSensor.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/OrientationSensor/cpp/Package.appxmanifest b/Samples/OrientationSensor/cpp/Package.appxmanifest
index 40bd5caf04..28f7b6da33 100644
--- a/Samples/OrientationSensor/cpp/Package.appxmanifest
+++ b/Samples/OrientationSensor/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/OrientationSensor/cs/OrientationSensor.csproj b/Samples/OrientationSensor/cs/OrientationSensor.csproj
index de8696d912..45e3c29e54 100644
--- a/Samples/OrientationSensor/cs/OrientationSensor.csproj
+++ b/Samples/OrientationSensor/cs/OrientationSensor.csproj
@@ -14,8 +14,8 @@
OrientationCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/OrientationSensor/cs/Package.appxmanifest b/Samples/OrientationSensor/cs/Package.appxmanifest
index 0f8f08b2a0..6891cb80a7 100644
--- a/Samples/OrientationSensor/cs/Package.appxmanifest
+++ b/Samples/OrientationSensor/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Package/cpp/Package.appxmanifest b/Samples/Package/cpp/Package.appxmanifest
index 8517295535..f6fd867444 100644
--- a/Samples/Package/cpp/Package.appxmanifest
+++ b/Samples/Package/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Package/cpp/PackageSample.vcxproj b/Samples/Package/cpp/PackageSample.vcxproj
index 4c991295bb..c1c7e18e5f 100644
--- a/Samples/Package/cpp/PackageSample.vcxproj
+++ b/Samples/Package/cpp/PackageSample.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Package/cs/Package.appxmanifest b/Samples/Package/cs/Package.appxmanifest
index 8b96c3e4e9..e3e38305d5 100644
--- a/Samples/Package/cs/Package.appxmanifest
+++ b/Samples/Package/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/Package/cs/PackageSample.csproj b/Samples/Package/cs/PackageSample.csproj
index 44cdd450f7..8fe8c9c2ef 100644
--- a/Samples/Package/cs/PackageSample.csproj
+++ b/Samples/Package/cs/PackageSample.csproj
@@ -13,8 +13,8 @@
PackageSample
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/PasswordVault/cpp/Package.appxmanifest b/Samples/PasswordVault/cpp/Package.appxmanifest
index 6680c5bfc2..0260eea30d 100644
--- a/Samples/PasswordVault/cpp/Package.appxmanifest
+++ b/Samples/PasswordVault/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/PasswordVault/cpp/PasswordVault.vcxproj b/Samples/PasswordVault/cpp/PasswordVault.vcxproj
index e2a5f12634..8c3a06e688 100644
--- a/Samples/PasswordVault/cpp/PasswordVault.vcxproj
+++ b/Samples/PasswordVault/cpp/PasswordVault.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
PasswordVault
diff --git a/Samples/PasswordVault/cppwinrt/Package.appxmanifest b/Samples/PasswordVault/cppwinrt/Package.appxmanifest
index 439cc4b70a..c81a803c4c 100644
--- a/Samples/PasswordVault/cppwinrt/Package.appxmanifest
+++ b/Samples/PasswordVault/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/PasswordVault/cppwinrt/PasswordVault.vcxproj b/Samples/PasswordVault/cppwinrt/PasswordVault.vcxproj
index b6915f8409..c99c2366f9 100644
--- a/Samples/PasswordVault/cppwinrt/PasswordVault.vcxproj
+++ b/Samples/PasswordVault/cppwinrt/PasswordVault.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/PasswordVault/cs/Package.appxmanifest b/Samples/PasswordVault/cs/Package.appxmanifest
index 3882cda31a..323cb3cf46 100644
--- a/Samples/PasswordVault/cs/Package.appxmanifest
+++ b/Samples/PasswordVault/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/PasswordVault/cs/PasswordVault.csproj b/Samples/PasswordVault/cs/PasswordVault.csproj
index c60f5a39fe..e0057fad33 100644
--- a/Samples/PasswordVault/cs/PasswordVault.csproj
+++ b/Samples/PasswordVault/cs/PasswordVault.csproj
@@ -14,8 +14,8 @@
PasswordVault
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/PdfDocument/cpp/Package.appxmanifest b/Samples/PdfDocument/cpp/Package.appxmanifest
index fabf6a431d..a90357994b 100644
--- a/Samples/PdfDocument/cpp/Package.appxmanifest
+++ b/Samples/PdfDocument/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/PdfDocument/cpp/PdfDocument.vcxproj b/Samples/PdfDocument/cpp/PdfDocument.vcxproj
index b2f4742ec7..7323a0a944 100644
--- a/Samples/PdfDocument/cpp/PdfDocument.vcxproj
+++ b/Samples/PdfDocument/cpp/PdfDocument.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/PdfDocument/cppwinrt/Package.appxmanifest b/Samples/PdfDocument/cppwinrt/Package.appxmanifest
index 734d990759..1789fb8463 100644
--- a/Samples/PdfDocument/cppwinrt/Package.appxmanifest
+++ b/Samples/PdfDocument/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/PdfDocument/cppwinrt/PdfDocument.vcxproj b/Samples/PdfDocument/cppwinrt/PdfDocument.vcxproj
index ee0e5ae478..d453269158 100644
--- a/Samples/PdfDocument/cppwinrt/PdfDocument.vcxproj
+++ b/Samples/PdfDocument/cppwinrt/PdfDocument.vcxproj
@@ -14,8 +14,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/PdfDocument/cs/Package.appxmanifest b/Samples/PdfDocument/cs/Package.appxmanifest
index 1d74d241d5..979b02f59d 100644
--- a/Samples/PdfDocument/cs/Package.appxmanifest
+++ b/Samples/PdfDocument/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/PdfDocument/cs/PdfDocument.csproj b/Samples/PdfDocument/cs/PdfDocument.csproj
index 9936c84855..1174d66339 100644
--- a/Samples/PdfDocument/cs/PdfDocument.csproj
+++ b/Samples/PdfDocument/cs/PdfDocument.csproj
@@ -13,8 +13,8 @@
PdfDocument
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Pedometer/cpp/Package.appxmanifest b/Samples/Pedometer/cpp/Package.appxmanifest
index 4a722b9aa5..f7c7c802c1 100644
--- a/Samples/Pedometer/cpp/Package.appxmanifest
+++ b/Samples/Pedometer/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Pedometer/cpp/Pedometer.vcxproj b/Samples/Pedometer/cpp/Pedometer.vcxproj
index 7b5fec8737..e46783ad20 100644
--- a/Samples/Pedometer/cpp/Pedometer.vcxproj
+++ b/Samples/Pedometer/cpp/Pedometer.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Pedometer/cpp/Tasks/Tasks.vcxproj b/Samples/Pedometer/cpp/Tasks/Tasks.vcxproj
index d31f51f076..e5164f7827 100644
--- a/Samples/Pedometer/cpp/Tasks/Tasks.vcxproj
+++ b/Samples/Pedometer/cpp/Tasks/Tasks.vcxproj
@@ -38,8 +38,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
diff --git a/Samples/Pedometer/cs/Package.appxmanifest b/Samples/Pedometer/cs/Package.appxmanifest
index 25d13e04f9..c748cd1747 100644
--- a/Samples/Pedometer/cs/Package.appxmanifest
+++ b/Samples/Pedometer/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Pedometer/cs/Pedometer.csproj b/Samples/Pedometer/cs/Pedometer.csproj
index ac687aa080..f186dfc3c0 100644
--- a/Samples/Pedometer/cs/Pedometer.csproj
+++ b/Samples/Pedometer/cs/Pedometer.csproj
@@ -14,8 +14,8 @@
PedometerCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Pedometer/cs/Tasks/Tasks.csproj b/Samples/Pedometer/cs/Tasks/Tasks.csproj
index f75644e2d5..0525972d22 100644
--- a/Samples/Pedometer/cs/Tasks/Tasks.csproj
+++ b/Samples/Pedometer/cs/Tasks/Tasks.csproj
@@ -14,8 +14,8 @@
Tasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/PenHaptics/cppwinrt/Package.appxmanifest b/Samples/PenHaptics/cppwinrt/Package.appxmanifest
index 3040ae5255..5400286902 100644
--- a/Samples/PenHaptics/cppwinrt/Package.appxmanifest
+++ b/Samples/PenHaptics/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/PenHaptics/cppwinrt/PenHaptics.vcxproj b/Samples/PenHaptics/cppwinrt/PenHaptics.vcxproj
index d8c7f7c9e8..d201e0e7c1 100644
--- a/Samples/PenHaptics/cppwinrt/PenHaptics.vcxproj
+++ b/Samples/PenHaptics/cppwinrt/PenHaptics.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/PenHaptics/cs/Package.appxmanifest b/Samples/PenHaptics/cs/Package.appxmanifest
index dc95ecafe5..2a2e070e94 100644
--- a/Samples/PenHaptics/cs/Package.appxmanifest
+++ b/Samples/PenHaptics/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/PenHaptics/cs/PenHaptics.csproj b/Samples/PenHaptics/cs/PenHaptics.csproj
index fe46ae10ae..0b4168aa81 100644
--- a/Samples/PenHaptics/cs/PenHaptics.csproj
+++ b/Samples/PenHaptics/cs/PenHaptics.csproj
@@ -11,7 +11,7 @@
PenHaptics
en-US
UAP
- 10.0.22000.0
+ 10.0.22621.0
$(TargetPlatformVersion)
15
true
diff --git a/Samples/Personalization/cpp/Package.appxmanifest b/Samples/Personalization/cpp/Package.appxmanifest
index 9da428322f..1222669e7e 100644
--- a/Samples/Personalization/cpp/Package.appxmanifest
+++ b/Samples/Personalization/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Personalization/cpp/Personalization.vcxproj b/Samples/Personalization/cpp/Personalization.vcxproj
index b7588edccc..8ffaa65974 100644
--- a/Samples/Personalization/cpp/Personalization.vcxproj
+++ b/Samples/Personalization/cpp/Personalization.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Personalization/cs/Package.appxmanifest b/Samples/Personalization/cs/Package.appxmanifest
index 48cc887dd6..4617ef970f 100644
--- a/Samples/Personalization/cs/Package.appxmanifest
+++ b/Samples/Personalization/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Personalization/cs/Personalization.csproj b/Samples/Personalization/cs/Personalization.csproj
index 31ddce9388..b16d6283c1 100644
--- a/Samples/Personalization/cs/Personalization.csproj
+++ b/Samples/Personalization/cs/Personalization.csproj
@@ -14,8 +14,8 @@
Personalization
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/PlayReady/cs/Package.appxmanifest b/Samples/PlayReady/cs/Package.appxmanifest
index 72c18398d5..f146a192fb 100644
--- a/Samples/PlayReady/cs/Package.appxmanifest
+++ b/Samples/PlayReady/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/PlayReady/cs/PlayReady.csproj b/Samples/PlayReady/cs/PlayReady.csproj
index 1df8072522..45e44d3265 100644
--- a/Samples/PlayReady/cs/PlayReady.csproj
+++ b/Samples/PlayReady/cs/PlayReady.csproj
@@ -14,8 +14,8 @@
PlayReady
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Playlists/cpp/Package.appxmanifest b/Samples/Playlists/cpp/Package.appxmanifest
index 1fe7ae7613..b0c157041a 100644
--- a/Samples/Playlists/cpp/Package.appxmanifest
+++ b/Samples/Playlists/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Playlists/cpp/Playlists.vcxproj b/Samples/Playlists/cpp/Playlists.vcxproj
index db573ac957..3bbf9d4673 100644
--- a/Samples/Playlists/cpp/Playlists.vcxproj
+++ b/Samples/Playlists/cpp/Playlists.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Playlists/cs/Package.appxmanifest b/Samples/Playlists/cs/Package.appxmanifest
index 3fa5a6ed69..5aa52ce28a 100644
--- a/Samples/Playlists/cs/Package.appxmanifest
+++ b/Samples/Playlists/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/Playlists/cs/Playlists.csproj b/Samples/Playlists/cs/Playlists.csproj
index 29e3f3a0fc..c12c1fe29e 100644
--- a/Samples/Playlists/cs/Playlists.csproj
+++ b/Samples/Playlists/cs/Playlists.csproj
@@ -14,8 +14,8 @@
Playlists
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/PosPrinter/cpp/Package.appxmanifest b/Samples/PosPrinter/cpp/Package.appxmanifest
index aa5bc16e09..478eefe83c 100644
--- a/Samples/PosPrinter/cpp/Package.appxmanifest
+++ b/Samples/PosPrinter/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/PosPrinter/cpp/PosPrinter.vcxproj b/Samples/PosPrinter/cpp/PosPrinter.vcxproj
index 8594439aa2..055f7ebde5 100644
--- a/Samples/PosPrinter/cpp/PosPrinter.vcxproj
+++ b/Samples/PosPrinter/cpp/PosPrinter.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/PosPrinter/cs/Package.appxmanifest b/Samples/PosPrinter/cs/Package.appxmanifest
index 91f1475414..45e1e8ca99 100644
--- a/Samples/PosPrinter/cs/Package.appxmanifest
+++ b/Samples/PosPrinter/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/PosPrinter/cs/PosPrinter.csproj b/Samples/PosPrinter/cs/PosPrinter.csproj
index 0bc738eb7d..f4262cd387 100644
--- a/Samples/PosPrinter/cs/PosPrinter.csproj
+++ b/Samples/PosPrinter/cs/PosPrinter.csproj
@@ -14,8 +14,8 @@
PosPrinter
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/PresenceSensor/README.md b/Samples/PresenceSensor/README.md
new file mode 100644
index 0000000000..f864f38924
--- /dev/null
+++ b/Samples/PresenceSensor/README.md
@@ -0,0 +1,101 @@
+---
+page_type: sample
+languages:
+- csharp
+- cpp
+- cppwinrt
+products:
+- windows
+- windows-uwp
+urlFragment: PresenceSensor
+extendedZipContent:
+- path: SharedContent
+ target: SharedContent
+- path: LICENSE
+ target: LICENSE
+description: "Shows how to use the Windows.Devices.Sensors.HumanPresenceSensor API."
+---
+
+
+
+# Presence sensor sample
+
+Shows how to use the [Windows.Devices.Sensors.HumanPresenceSensor](https://docs.microsoft.com/en-us/uwp/api/windows.devices.sensors.humanpresencesensor) API.
+
+> **Note:** This sample is part of a large collection of UWP feature samples.
+> You can download this sample as a standalone ZIP file
+> [from docs.microsoft.com](https://docs.microsoft.com/samples/microsoft/windows-universal-samples/presencesensor/),
+> or you can download the entire collection as a single
+> [ZIP file](https://github.com/Microsoft/Windows-universal-samples/archive/master.zip), but be
+> sure to unzip everything to access shared dependencies. For more info on working with the ZIP file,
+> the samples collection, and GitHub, see [Get the UWP samples from GitHub](https://aka.ms/ovu2uq).
+> For more samples, see the [Samples portal](https://aka.ms/winsamples) on the Windows Dev Center.
+
+This sample locates presence sensors and reads data from them.
+It includes the following scenarios:
+
+- Obtaining the default presence sensor
+- Choosing a presence sensor from among the available sensors
+- Letting the user choose a presence sensor
+- Detecting the arrival and removal of presence sensors
+- Presence sensor data events
+- Polling presence sensor readings
+
+**Presence Sensor Data Events**
+
+When you click the "Get default sensor" button,
+the app will display data from the default presence sensor,
+updating it in real time.
+
+**Polling Presence Sensor Readings**
+
+When you choose the "Get a sensor" button,
+the app will find all presence sensors and
+choose one to use.
+It will then read and display the current reading from that sensor.
+
+***Choosing a Presence Sensor***
+
+When you choose the "Use picker" button,
+the app will use a DevicePicker to let the user
+choose a presence sensor.
+When one is chosen, the app displays the current reading from that sensor.
+
+When you choose the "Start watcher" button,
+the app will use a DeviceWatcher to identify all the
+presence sensors and monitor their arrival and removal
+in real time.
+If you select a sensor from the list and click "Read selected sensor",
+the app will read and display the current reading from that sensor.
+
+## Related topics
+
+### Related samples
+
+* [ProximitySensor sample](/ProximitySensor)
+* [DeviceEnumerationAndPairing sample](/DeviceEnumerationAndPairing) shows othe operations with devices
+
+## System requirements
+
+* Windows 11 build 22624 or higher
+
+## Build the sample
+
+1. If you download the samples ZIP, be sure to unzip the entire archive, not just the folder with the sample you want to build.
+2. Start Microsoft Visual Studio and select **File** \> **Open** \> **Project/Solution**.
+3. Starting in the folder where you unzipped the samples, go to the Samples subfolder, then the subfolder for this specific sample, then the subfolder for your preferred language (C++, C#, or JavaScript). Double-click the Visual Studio Solution (.sln) file.
+4. Press Ctrl+Shift+B, or select **Build** \> **Build Solution**.
+
+## Run the sample
+
+The next steps depend on whether you just want to deploy the sample or you want to both deploy and run it.
+
+### Deploying the sample
+
+- Select Build > Deploy Solution.
+
+### Deploying and running the sample
+
+- To debug the sample and then run it, press F5 or select Debug > Start Debugging. To run the sample without debugging, press Ctrl+F5 or selectDebug > Start Without Debugging.
diff --git a/Samples/PresenceSensor/cppwinrt/Package.appxmanifest b/Samples/PresenceSensor/cppwinrt/Package.appxmanifest
new file mode 100644
index 0000000000..e199836191
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Package.appxmanifest
@@ -0,0 +1,42 @@
+
+
+
+
+
+ Presence Sensor C++/WinRT Sample
+ Microsoft Corporation
+ Assets\storelogo-sdk.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/PresenceSensor/cppwinrt/PresenceSensor.sln b/Samples/PresenceSensor/cppwinrt/PresenceSensor.sln
new file mode 100644
index 0000000000..ee05a8a585
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/PresenceSensor.sln
@@ -0,0 +1,40 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio 15
+VisualStudioVersion = 15.0.27004.2006
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "PresenceSensor", "PresenceSensor.vcxproj", "{8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Debug|ARM = Debug|ARM
+ Release|ARM = Release|ARM
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|ARM.ActiveCfg = Debug|ARM
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|ARM.Build.0 = Debug|ARM
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|ARM.Deploy.0 = Debug|ARM
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|x64.ActiveCfg = Debug|x64
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|x64.Build.0 = Debug|x64
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|x64.Deploy.0 = Debug|x64
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|x86.ActiveCfg = Debug|Win32
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|x86.Build.0 = Debug|Win32
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Debug|x86.Deploy.0 = Debug|Win32
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|ARM.ActiveCfg = Release|ARM
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|ARM.Build.0 = Release|ARM
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|ARM.Deploy.0 = Release|ARM
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|x64.ActiveCfg = Release|x64
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|x64.Build.0 = Release|x64
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|x64.Deploy.0 = Release|x64
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|x86.ActiveCfg = Release|Win32
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|x86.Build.0 = Release|Win32
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}.Release|x86.Deploy.0 = Release|Win32
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+EndGlobal
diff --git a/Samples/PresenceSensor/cppwinrt/PresenceSensor.vcxproj b/Samples/PresenceSensor/cppwinrt/PresenceSensor.vcxproj
new file mode 100644
index 0000000000..0b26ff7a67
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/PresenceSensor.vcxproj
@@ -0,0 +1,194 @@
+
+
+
+
+ $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), LICENSE))\SharedContent
+
+
+ true
+ {8853D2C0-78DF-4E04-8793-CB4FAC6B4B13}
+ PresenceSensor
+ SDKTemplate
+ en-US
+ 15.0
+ true
+ Windows Store
+ 10.0
+ 10.0.22621.0
+ $(WindowsTargetPlatformVersion)
+
+
+
+
+ Debug
+ ARM
+
+
+ Debug
+ Win32
+
+
+ Debug
+ x64
+
+
+ Release
+ ARM
+
+
+ Release
+ Win32
+
+
+ Release
+ x64
+
+
+
+ Application
+ Unicode
+
+
+ true
+ true
+
+
+ false
+ true
+ false
+
+
+
+
+
+
+
+ $(VC_IncludePath);$(UniversalCRT_IncludePath);$(WindowsSDK_IncludePath);$(SharedContentDir)\cppwinrt
+ true
+
+
+
+ Use
+ pch.h
+ $(IntDir)pch.pch
+ Level4
+ %(AdditionalOptions) /bigobj
+ 4453;28204
+
+
+
+
+ _DEBUG;%(PreprocessorDefinitions)
+
+
+
+
+ NDEBUG;%(PreprocessorDefinitions)
+
+
+
+
+ $(SharedContentDir)\xaml\App.xaml
+
+
+ $(SharedContentDir)\xaml\MainPage.xaml
+
+
+
+ ..\shared\Scenario1_DataEvents.xaml
+
+
+ ..\shared\Scenario2_Polling.xaml
+
+
+ ..\shared\Scenario3_Choosing.xaml
+
+
+
+
+
+ Designer
+
+
+ Designer
+
+
+
+
+
+ Styles\Styles.xaml
+
+
+
+
+ $(SharedContentDir)\xaml\App.xaml
+
+
+ $(SharedContentDir)\xaml\MainPage.xaml
+
+
+
+ ..\shared\Scenario1_DataEvents.xaml
+
+
+ ..\shared\Scenario2_Polling.xaml
+
+
+ ..\shared\Scenario3_Choosing.xaml
+
+
+ Create
+
+
+ Project.idl
+
+
+
+
+ $(SharedContentDir)\xaml\MainPage.xaml
+
+
+
+
+
+ Designer
+
+
+
+
+ Assets\microsoft-sdk.png
+
+
+ Assets\smallTile-sdk.png
+
+
+ Assets\splash-sdk.png
+
+
+ Assets\squareTile-sdk.png
+
+
+ Assets\storeLogo-sdk.png
+
+
+ Assets\tile-sdk.png
+
+
+ Assets\windows-sdk.png
+
+
+
+
+
+
+
+
+
+
+
+ This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/PresenceSensor/cppwinrt/PresenceSensor.vcxproj.filters b/Samples/PresenceSensor/cppwinrt/PresenceSensor.vcxproj.filters
new file mode 100644
index 0000000000..41a6a418c5
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/PresenceSensor.vcxproj.filters
@@ -0,0 +1,71 @@
+
+
+
+
+ 4416d50a-7676-4d0a-9b2c-91ff70c6047f
+ bmp;fbx;gif;jpg;jpeg;tga;tiff;tif;png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+ Assets
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Samples/PresenceSensor/cppwinrt/Project.idl b/Samples/PresenceSensor/cppwinrt/Project.idl
new file mode 100644
index 0000000000..59c3bbafdb
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Project.idl
@@ -0,0 +1,31 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+namespace SDKTemplate
+{
+ [default_interface]
+ runtimeclass Scenario1_DataEvents : Windows.UI.Xaml.Controls.Page
+ {
+ Scenario1_DataEvents();
+ }
+
+ [default_interface]
+ runtimeclass Scenario2_Polling : Windows.UI.Xaml.Controls.Page
+ {
+ Scenario2_Polling();
+ }
+
+ [default_interface]
+ runtimeclass Scenario3_Choosing : Windows.UI.Xaml.Controls.Page
+ {
+ Scenario3_Choosing();
+ }
+}
diff --git a/Samples/PresenceSensor/cppwinrt/SampleConfiguration.cpp b/Samples/PresenceSensor/cppwinrt/SampleConfiguration.cpp
new file mode 100644
index 0000000000..d517067304
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/SampleConfiguration.cpp
@@ -0,0 +1,60 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include
+#include "MainPage.h"
+#include "SampleConfiguration.h"
+
+using namespace winrt;
+using namespace Windows::Devices::Sensors;
+using namespace Windows::Foundation::Collections;
+using namespace SDKTemplate;
+
+hstring implementation::MainPage::FEATURE_NAME()
+{
+ return L"Presence Sensor";
+}
+
+IVector implementation::MainPage::scenariosInner = winrt::single_threaded_observable_vector(
+{
+ Scenario{ L"Data Events", xaml_typename() },
+ Scenario{ L"Polling", xaml_typename() },
+ Scenario{ L"Choosing", xaml_typename() },
+});
+
+hstring winrt::to_hstring(HumanPresence value)
+{
+ switch (value)
+ {
+ case HumanPresence::Unknown:
+ return L"Unknown";
+ case HumanPresence::Present:
+ return L"Present";
+ case HumanPresence::NotPresent:
+ return L"NotPresent";
+ }
+ return to_hstring(static_cast(value));
+}
+
+hstring winrt::to_hstring(HumanEngagement value)
+{
+ switch (value)
+ {
+ case HumanEngagement::Unknown:
+ return L"Unknown";
+ case HumanEngagement::Engaged:
+ return L"Engaged";
+ case HumanEngagement::Unengaged:
+ return L"Unengaged";
+ }
+ return to_hstring(static_cast(value));
+}
diff --git a/Samples/PresenceSensor/cppwinrt/SampleConfiguration.h b/Samples/PresenceSensor/cppwinrt/SampleConfiguration.h
new file mode 100644
index 0000000000..75e5e0dd18
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/SampleConfiguration.h
@@ -0,0 +1,19 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+#include "pch.h"
+
+namespace winrt
+{
+ hstring to_hstring(Windows::Devices::Sensors::HumanPresence value);
+ hstring to_hstring(Windows::Devices::Sensors::HumanEngagement value);
+}
diff --git a/Samples/PresenceSensor/cppwinrt/Scenario1_DataEvents.cpp b/Samples/PresenceSensor/cppwinrt/Scenario1_DataEvents.cpp
new file mode 100644
index 0000000000..662118ef94
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Scenario1_DataEvents.cpp
@@ -0,0 +1,110 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include "SampleConfiguration.h"
+#include "Scenario1_DataEvents.h"
+#include "Scenario1_DataEvents.g.cpp"
+
+using namespace winrt;
+using namespace Windows::Devices::Enumeration;
+using namespace Windows::Devices::Sensors;
+using namespace Windows::Foundation;
+using namespace Windows::Globalization::DateTimeFormatting;
+using namespace Windows::UI::Xaml;
+using namespace Windows::UI::Xaml::Navigation;
+
+namespace winrt::SDKTemplate::implementation
+{
+ Scenario1_DataEvents::Scenario1_DataEvents()
+ {
+ InitializeComponent();
+ }
+
+ void Scenario1_DataEvents::OnNavigatedFrom(NavigationEventArgs const&)
+ {
+ if (sensor != nullptr)
+ {
+ sensor.ReadingChanged(sensorReadingChangedToken);
+ sensor = nullptr;
+ }
+ }
+
+ fire_and_forget Scenario1_DataEvents::ScenarioGetSensor_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ // Disable the button so the user can't click it again while we are already working.
+ GetSensorButton().IsEnabled(false);
+
+ // Clear any previous message.
+ rootPage.NotifyUser(L"", NotifyType::StatusMessage);
+
+ // Try to get the default presence sensor.
+ try
+ {
+ sensor = co_await HumanPresenceSensor::GetDefaultAsync();
+ }
+ catch (hresult_access_denied const&)
+ {
+ // The user denied this app presence sensor access.
+ sensor = nullptr;
+ }
+ GetSensorButton().IsEnabled(true);
+
+ if (sensor != nullptr)
+ {
+ VisualStateManager::GoToState(*this, L"Ready", true);
+
+ // Begin listening for data reports.
+ sensorReadingChangedToken = sensor.ReadingChanged({ get_weak(), &Scenario1_DataEvents::ReadingChanged });
+ }
+ else
+ {
+ rootPage.NotifyUser(L"No presence sensor found", NotifyType::ErrorMessage);
+ }
+
+ }
+
+ fire_and_forget Scenario1_DataEvents::ReadingChanged(HumanPresenceSensor const&, HumanPresenceSensorReadingChangedEventArgs e)
+ {
+ auto lifetime = get_strong();
+ co_await resume_foreground(Dispatcher());
+
+ HumanPresenceSensorReading reading = e.Reading();
+ if (reading != nullptr)
+ {
+ if (sensor.IsEngagementSupported())
+ {
+ EngagementStateTextBlock().Text(to_hstring(reading.Engagement()));
+ }
+ else
+ {
+ EngagementStateTextBlock().Text(L"Not Supported");
+ }
+
+ if (sensor.IsPresenceSupported())
+ {
+ DetectionStateTextBlock().Text(to_hstring(reading.Presence()));
+ }
+ else
+ {
+ DetectionStateTextBlock().Text(L"Not Supported");
+
+ }
+
+ // Show the detection distance, if available
+ IReference distance = reading.DistanceInMillimeters();
+ DetectionDistanceTextBlock().Text(distance == nullptr ? L"Unavailable" : to_hstring(distance.Value()));
+
+ TimestampTextBlock().Text(DateTimeFormatter(L"shortdate longtime").Format(reading.Timestamp()));
+
+ }
+ }
+}
diff --git a/Samples/PresenceSensor/cppwinrt/Scenario1_DataEvents.h b/Samples/PresenceSensor/cppwinrt/Scenario1_DataEvents.h
new file mode 100644
index 0000000000..46cf6f831f
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Scenario1_DataEvents.h
@@ -0,0 +1,42 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+
+#include "Scenario1_DataEvents.g.h"
+#include "MainPage.h"
+
+namespace winrt::SDKTemplate::implementation
+{
+ struct Scenario1_DataEvents : Scenario1_DataEventsT
+ {
+ Scenario1_DataEvents();
+
+ void OnNavigatedFrom(Windows::UI::Xaml::Navigation::NavigationEventArgs const& e);
+
+ // These methods are public so they can be called by binding.
+ fire_and_forget ScenarioGetSensor_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+
+ private:
+ SDKTemplate::MainPage rootPage{ MainPage::Current() };
+ Windows::Devices::Sensors::HumanPresenceSensor sensor{ nullptr };
+ event_token sensorReadingChangedToken{};
+
+ fire_and_forget ReadingChanged(Windows::Devices::Sensors::HumanPresenceSensor const&, Windows::Devices::Sensors::HumanPresenceSensorReadingChangedEventArgs e);
+ };
+}
+
+namespace winrt::SDKTemplate::factory_implementation
+{
+ struct Scenario1_DataEvents : Scenario1_DataEventsT
+ {
+ };
+}
diff --git a/Samples/PresenceSensor/cppwinrt/Scenario2_Polling.cpp b/Samples/PresenceSensor/cppwinrt/Scenario2_Polling.cpp
new file mode 100644
index 0000000000..b4100d3959
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Scenario2_Polling.cpp
@@ -0,0 +1,151 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include "SampleConfiguration.h"
+#include "Scenario2_Polling.h"
+#include "Scenario2_Polling.g.cpp"
+
+using namespace winrt;
+using namespace Windows::Devices::Enumeration;
+using namespace Windows::Devices::Sensors;
+using namespace Windows::Foundation;
+using namespace Windows::Foundation::Collections;
+using namespace Windows::Globalization::DateTimeFormatting;
+using namespace Windows::UI::Xaml;
+using namespace Windows::UI::Xaml::Navigation;
+
+namespace winrt::SDKTemplate::implementation
+{
+ Scenario2_Polling::Scenario2_Polling()
+ {
+ InitializeComponent();
+ }
+
+ fire_and_forget Scenario2_Polling::ScenarioGetSensor_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ // This scenario uses DeviceInformation::FindAllAsync to find all
+ // HumanPresenceSensor devices. This allows the app to choose a sensor
+ // which best fits its requirements.
+ //
+ // Scenario 1 shows how to get the default HumanPresenceSensor device.
+
+ // Disable the button so the user can't click it again while we are already working.
+ GetSensorButton().IsEnabled(false);
+
+ // Clear any previous message.
+ rootPage.NotifyUser(L"", NotifyType::StatusMessage);
+
+ hstring selector = HumanPresenceSensor::GetDeviceSelector();
+ DeviceInformationCollection deviceInfos = co_await DeviceInformation::FindAllAsync(selector);
+ for (DeviceInformation deviceInfo : deviceInfos)
+ {
+ HumanPresenceSensor foundSensor{ nullptr };
+ try
+ {
+ foundSensor = co_await HumanPresenceSensor::FromIdAsync(deviceInfo.Id());
+ }
+ catch (hresult_access_denied const&)
+ {
+ // The user denied this app presence sensor access.
+ foundSensor = nullptr;
+ }
+
+ if (foundSensor != nullptr)
+ {
+ IReference maxDetectableDistanceInMillimeters = foundSensor.MaxDetectableDistanceInMillimeters();
+ IReference minDetectableDistanceInMillimeters = foundSensor.MinDetectableDistanceInMillimeters();
+ if (maxDetectableDistanceInMillimeters != nullptr)
+ {
+ // Check if this is the sensor that matches our ranges.
+ // TODO: Customize these values to your application's needs.
+ constexpr uint32_t distanceInMillimetersLValue = 200; // 0.2m
+ constexpr uint32_t distanceInMillimetersRValue = 1200; // 1.2m
+ if (minDetectableDistanceInMillimeters.Value() <= distanceInMillimetersLValue &&
+ maxDetectableDistanceInMillimeters.Value() >= distanceInMillimetersRValue)
+ {
+ rootPage.NotifyUser(L"Found a presence sensor that meets the detection range", NotifyType::StatusMessage);
+ sensor = foundSensor;
+ }
+ else
+ {
+ rootPage.NotifyUser(L"Presence sensor does not meet the detection range, using it anyway", NotifyType::StatusMessage);
+ // We'll use the sensor anyway, to demonstrate how events work.
+ // Your app may decide not to use this sensor and keep looking for another.
+ sensor = foundSensor;
+ }
+ }
+ else
+ {
+ rootPage.NotifyUser(L"Presence sensor does not report detection ranges, using it anyway", NotifyType::StatusMessage);
+ sensor = foundSensor;
+ }
+ }
+
+ if (sensor != nullptr)
+ {
+ // We found a sensor we like. We can stop looking now.
+ break;
+ }
+ }
+
+ GetSensorButton().IsEnabled(true);
+
+ if (sensor != nullptr)
+ {
+ VisualStateManager::GoToState(*this, L"Ready", true);
+ }
+ else
+ {
+ rootPage.NotifyUser(L"No presence sensor found", NotifyType::ErrorMessage);
+ }
+ }
+
+ void Scenario2_Polling::ScenarioGetData_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ HumanPresenceSensorReading reading{ nullptr };
+ try
+ {
+ reading = sensor.GetCurrentReading();
+ }
+ catch (hresult_access_denied const&)
+ {
+ reading = nullptr;
+ }
+
+ if (reading != nullptr)
+ {
+ if (sensor.IsEngagementSupported())
+ {
+ EngagementStateTextBlock().Text(to_hstring(reading.Engagement()));
+ }
+ else
+ {
+ EngagementStateTextBlock().Text(L"Not Supported");
+ }
+
+ if (sensor.IsPresenceSupported())
+ {
+ DetectionStateTextBlock().Text(to_hstring(reading.Presence()));
+ }
+ else
+ {
+ DetectionStateTextBlock().Text(L"Not Supported");
+ }
+
+ // Show the detection distance, if available
+ IReference distance = reading.DistanceInMillimeters();
+ DetectionDistanceTextBlock().Text(distance == nullptr ? L"Unavailable" : to_hstring(distance.Value()));
+
+ TimestampTextBlock().Text(DateTimeFormatter(L"shortdate longtime").Format(reading.Timestamp()));
+ }
+ }
+}
diff --git a/Samples/PresenceSensor/cppwinrt/Scenario2_Polling.h b/Samples/PresenceSensor/cppwinrt/Scenario2_Polling.h
new file mode 100644
index 0000000000..79f7c396fe
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Scenario2_Polling.h
@@ -0,0 +1,38 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+
+#include "Scenario2_Polling.g.h"
+#include "MainPage.h"
+
+namespace winrt::SDKTemplate::implementation
+{
+ struct Scenario2_Polling : Scenario2_PollingT
+ {
+ Scenario2_Polling();
+
+ // These methods are public so they can be called by binding.
+ fire_and_forget ScenarioGetSensor_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ void ScenarioGetData_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+
+ private:
+ SDKTemplate::MainPage rootPage{ MainPage::Current() };
+ Windows::Devices::Sensors::HumanPresenceSensor sensor{ nullptr };
+ };
+}
+
+namespace winrt::SDKTemplate::factory_implementation
+{
+ struct Scenario2_Polling : Scenario2_PollingT
+ {
+ };
+}
diff --git a/Samples/PresenceSensor/cppwinrt/Scenario3_Choosing.cpp b/Samples/PresenceSensor/cppwinrt/Scenario3_Choosing.cpp
new file mode 100644
index 0000000000..450f4e9c24
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Scenario3_Choosing.cpp
@@ -0,0 +1,250 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#include "pch.h"
+#include "SampleConfiguration.h"
+#include "Scenario3_Choosing.h"
+#include "Scenario3_Choosing.g.cpp"
+
+using namespace winrt;
+using namespace Windows::Devices::Enumeration;
+using namespace Windows::Devices::Sensors;
+using namespace Windows::Foundation;
+using namespace Windows::Foundation::Collections;
+using namespace Windows::Globalization::DateTimeFormatting;
+using namespace Windows::UI::Xaml;
+using namespace Windows::UI::Xaml::Controls;
+using namespace Windows::UI::Xaml::Media;
+using namespace Windows::UI::Xaml::Navigation;
+
+namespace winrt::SDKTemplate::implementation
+{
+ Scenario3_Choosing::Scenario3_Choosing()
+ {
+ InitializeComponent();
+ }
+
+ void Scenario3_Choosing::OnNavigatedFrom(NavigationEventArgs const&)
+ {
+ if (watcher != nullptr)
+ {
+ watcher.Stop();
+ }
+ }
+
+ fire_and_forget Scenario3_Choosing::ScenarioPick_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ DevicePicker picker;
+ picker.Appearance().Title(L"Select a presence sensor from which to read data");
+ picker.Filter().SupportedDeviceSelectors().Append(HumanPresenceSensor::GetDeviceSelector());
+
+ // Calculate the position of the button next to which we will place the picker.
+ GeneralTransform transform = ScenarioPickButton().TransformToVisual(nullptr);
+ Rect rect = transform.TransformBounds({ 0.0, 0.0, static_cast(ScenarioPickButton().ActualWidth()), static_cast(ScenarioPickButton().ActualHeight()) });
+
+ DeviceInformation deviceInfo = co_await picker.PickSingleDeviceAsync(rect);
+ if (deviceInfo != nullptr)
+ {
+ co_await ReadOneReadingFromSensorAsync(deviceInfo);
+ }
+ }
+
+ ///
+ /// Invoked when the device watcher finds a presence sensor
+ ///
+ /// The device watcher
+ /// Device information for the presence sensor that was found
+ fire_and_forget Scenario3_Choosing::OnHumanPresenceSensorAdded(DeviceWatcher const&, DeviceInformation deviceInfo)
+ {
+ auto lifetime = get_strong();
+ co_await resume_foreground(Dispatcher());
+
+ // The app can optionally ignore sensors which do not satisfy desired criteria.
+ // This sample does not apply any filter. See the DeviceEnumerationAndPairing sample
+ // for more advanced ways of presenting a list of devices.
+
+ ListBoxItem item;
+ item.Content(box_value(deviceInfo.Name()));
+ item.Tag(deviceInfo);
+ SensorsList().Items().Append(item);
+ }
+
+ ///
+ /// Invoked when a presence sensor is removed from the system
+ ///
+ /// The device watcher
+ /// Device information for the presence sensor that was removed
+ fire_and_forget Scenario3_Choosing::OnHumanPresenceSensorRemoved(DeviceWatcher const&, DeviceInformationUpdate update)
+ {
+ auto lifetime = get_strong();
+ co_await resume_foreground(Dispatcher());
+
+ // Look for the sensor that was removed from the system and erase it from the ListBox.
+ hstring removedId = update.Id();
+
+ ItemCollection items = SensorsList().Items();
+ uint32_t itemCount = items.Size();
+ for (uint32_t index = 0; index < itemCount; index++)
+ {
+ ListBoxItem item = items.GetAt(index).as();
+ DeviceInformation itemDeviceInfo = item.Tag().as();
+ if (itemDeviceInfo.Id() == removedId)
+ {
+ items.RemoveAt(index);
+ break;
+ }
+ }
+ }
+
+ ///
+ /// Invoked when a presence sensor's properties change
+ ///
+ /// The device watcher
+ /// Device information for the presence sensor that changed
+ fire_and_forget Scenario3_Choosing::OnHumanPresenceSensorUpdated(DeviceWatcher const&, DeviceInformationUpdate update)
+ {
+ auto lifetime = get_strong();
+ co_await resume_foreground(Dispatcher());
+
+ // Look for the sensor that was updated.
+ hstring updatedId = update.Id();
+ for (IInspectable itemInspectable : SensorsList().Items())
+ {
+ ListBoxItem item = itemInspectable.as();
+ DeviceInformation itemDeviceInfo = item.Tag().as();
+ if (itemDeviceInfo.Id() == updatedId)
+ {
+ // Update the DeviceInformation for the sensor that updated.
+ itemDeviceInfo.Update(update);
+ // Refresh the device name, in case it changed.
+ item.Content(box_value(itemDeviceInfo.Name()));
+ break;
+ }
+ }
+ }
+
+ fire_and_forget Scenario3_Choosing::OnHumanPresenceSensorEnumerationCompleted(DeviceWatcher const&, IInspectable const&)
+ {
+ auto lifetime = get_strong();
+ co_await resume_foreground(Dispatcher());
+
+ rootPage.NotifyUser(L"All sensors found. Monitoring for changes...", NotifyType::StatusMessage);
+ }
+
+ void Scenario3_Choosing::ScenarioStart_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ SensorsList().Items().Clear();
+
+ watcher = DeviceInformation::CreateWatcher(HumanPresenceSensor::GetDeviceSelector());
+ watcher.Added({ get_weak(), &Scenario3_Choosing::OnHumanPresenceSensorAdded });
+ watcher.Removed({ get_weak(), &Scenario3_Choosing::OnHumanPresenceSensorRemoved });
+ watcher.Updated({ get_weak(), &Scenario3_Choosing::OnHumanPresenceSensorUpdated });
+ watcher.EnumerationCompleted({ get_weak(), &Scenario3_Choosing::OnHumanPresenceSensorEnumerationCompleted });
+ watcher.Start();
+
+ rootPage.NotifyUser(L"Looking for sensors...", NotifyType::StatusMessage);
+
+ ScenarioStartButton().IsEnabled(false);
+ ScenarioStopButton().IsEnabled(true);
+ }
+
+ void Scenario3_Choosing::ScenarioStop_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ watcher.Stop();
+ watcher = nullptr;
+
+ rootPage.NotifyUser(L"", NotifyType::StatusMessage);
+
+ ScenarioStartButton().IsEnabled(true);
+ ScenarioStopButton().IsEnabled(false);
+ }
+
+ fire_and_forget Scenario3_Choosing::ScenarioReadSelected_Click(IInspectable const&, RoutedEventArgs const&)
+ {
+ rootPage.NotifyUser(L"", NotifyType::StatusMessage);
+
+ ListBoxItem item = SensorsList().SelectedItem().as();
+ if (item == nullptr)
+ {
+ rootPage.NotifyUser(L"No sensor is selected.", NotifyType::ErrorMessage);
+ co_return;
+ }
+
+ DeviceInformation selectedInfo = item.Tag().as();
+ co_await ReadOneReadingFromSensorAsync(selectedInfo);
+ }
+
+ // Obtains a sensor described by the DeviceInformation and reads one reading from it.
+ IAsyncAction Scenario3_Choosing::ReadOneReadingFromSensorAsync(DeviceInformation deviceInfo)
+ {
+ HumanPresenceSensor sensor{ nullptr };
+ try
+ {
+ sensor = co_await HumanPresenceSensor::FromIdAsync(deviceInfo.Id());
+ }
+ catch (hresult_access_denied const&)
+ {
+ // The user denied this app presence sensor access.
+ sensor = nullptr;
+ }
+
+ EngagementStateTextBlock().Text(L"No data");
+ DetectionStateTextBlock().Text(L"No data");
+ TimestampTextBlock().Text(L"No data");
+ DetectionDistanceTextBlock().Text(L"No data");
+
+
+ if (sensor != nullptr)
+ {
+ HumanPresenceSensorReading reading{ nullptr };
+ try
+ {
+ reading = sensor.GetCurrentReading();
+ }
+ catch (hresult_access_denied const&)
+ {
+ // The user denied this app presence sensor access.
+ reading = nullptr;
+ }
+
+ if (reading != nullptr)
+ {
+ if (sensor.IsEngagementSupported())
+ {
+ EngagementStateTextBlock().Text(to_hstring(reading.Engagement()));
+ }
+ else
+ {
+ EngagementStateTextBlock().Text(L"Not Supported");
+ }
+
+ if (sensor.IsPresenceSupported())
+ {
+ DetectionStateTextBlock().Text(to_hstring(reading.Presence()));
+ }
+ else
+ {
+ DetectionStateTextBlock().Text(L"Not Supported");
+ }
+
+ // Show the detection distance, if available
+ IReference distance = reading.DistanceInMillimeters();
+ DetectionDistanceTextBlock().Text(distance == nullptr ? L"Unavailable" : to_hstring(distance.Value()));
+
+ TimestampTextBlock().Text(DateTimeFormatter(L"shortdate longtime").Format(reading.Timestamp()));
+ }
+ }
+ else
+ {
+ rootPage.NotifyUser(L"Could not access sensor " +deviceInfo.Name(), NotifyType::ErrorMessage);
+ }
+ }
+}
diff --git a/Samples/PresenceSensor/cppwinrt/Scenario3_Choosing.h b/Samples/PresenceSensor/cppwinrt/Scenario3_Choosing.h
new file mode 100644
index 0000000000..52b26a53c6
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/Scenario3_Choosing.h
@@ -0,0 +1,48 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+#pragma once
+
+#include "Scenario3_Choosing.g.h"
+
+namespace winrt::SDKTemplate::implementation
+{
+ struct Scenario3_Choosing : Scenario3_ChoosingT
+ {
+ Scenario3_Choosing();
+
+ void OnNavigatedFrom(Windows::UI::Xaml::Navigation::NavigationEventArgs const& e);
+
+ // These methods are public so they can be called by binding.
+ fire_and_forget ScenarioPick_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ void ScenarioStart_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ void ScenarioStop_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+ fire_and_forget ScenarioReadSelected_Click(Windows::Foundation::IInspectable const& sender, Windows::UI::Xaml::RoutedEventArgs const& e);
+
+ private:
+ SDKTemplate::MainPage rootPage{ MainPage::Current() };
+ Windows::Devices::Enumeration::DeviceWatcher watcher{ nullptr };
+
+ fire_and_forget OnHumanPresenceSensorAdded(Windows::Devices::Enumeration::DeviceWatcher const& sender, Windows::Devices::Enumeration::DeviceInformation deviceInfo);
+ fire_and_forget OnHumanPresenceSensorRemoved(Windows::Devices::Enumeration::DeviceWatcher const& sender, Windows::Devices::Enumeration::DeviceInformationUpdate update);
+ fire_and_forget OnHumanPresenceSensorUpdated(Windows::Devices::Enumeration::DeviceWatcher const& sender, Windows::Devices::Enumeration::DeviceInformationUpdate update);
+ fire_and_forget OnHumanPresenceSensorEnumerationCompleted(Windows::Devices::Enumeration::DeviceWatcher const& sender, Windows::Foundation::IInspectable const& e);
+
+ Windows::Foundation::IAsyncAction ReadOneReadingFromSensorAsync(Windows::Devices::Enumeration::DeviceInformation deviceInfo);
+ };
+}
+
+namespace winrt::SDKTemplate::factory_implementation
+{
+ struct Scenario3_Choosing : Scenario3_ChoosingT
+ {
+ };
+}
diff --git a/Samples/PresenceSensor/cppwinrt/packages.config b/Samples/PresenceSensor/cppwinrt/packages.config
new file mode 100644
index 0000000000..9b6b3fe95a
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/packages.config
@@ -0,0 +1,4 @@
+
+
+
+
\ No newline at end of file
diff --git a/Samples/PresenceSensor/cppwinrt/pch.cpp b/Samples/PresenceSensor/cppwinrt/pch.cpp
new file mode 100644
index 0000000000..01484ff5aa
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/pch.cpp
@@ -0,0 +1,6 @@
+//
+// pch.cpp
+// Include the standard header and generate the precompiled header.
+//
+
+#include "pch.h"
diff --git a/Samples/PresenceSensor/cppwinrt/pch.h b/Samples/PresenceSensor/cppwinrt/pch.h
new file mode 100644
index 0000000000..c174916009
--- /dev/null
+++ b/Samples/PresenceSensor/cppwinrt/pch.h
@@ -0,0 +1,20 @@
+#pragma once
+
+#include
+#include "winrt/Windows.Foundation.h"
+#include "winrt/Windows.Foundation.Collections.h"
+#include "winrt/Windows.ApplicationModel.Activation.h"
+#include "winrt/Windows.Devices.Enumeration.h"
+#include "winrt/Windows.Devices.Sensors.h"
+#include "winrt/Windows.Globalization.DateTimeFormatting.h"
+#include "winrt/Windows.System.h"
+#include "winrt/Windows.UI.Core.h"
+#include "winrt/Windows.UI.Xaml.h"
+#include "winrt/Windows.UI.Xaml.Automation.Peers.h"
+#include "winrt/Windows.UI.Xaml.Controls.h"
+#include "winrt/Windows.UI.Xaml.Controls.Primitives.h"
+#include "winrt/Windows.UI.Xaml.Documents.h"
+#include "winrt/Windows.UI.Xaml.Interop.h"
+#include "winrt/Windows.UI.Xaml.Markup.h"
+#include "winrt/Windows.UI.Xaml.Media.h"
+#include "winrt/Windows.UI.Xaml.Navigation.h"
diff --git a/Samples/PresenceSensor/cs/Package.appxmanifest b/Samples/PresenceSensor/cs/Package.appxmanifest
new file mode 100644
index 0000000000..2b7a7feea4
--- /dev/null
+++ b/Samples/PresenceSensor/cs/Package.appxmanifest
@@ -0,0 +1,38 @@
+
+
+
+
+
+ Presence Sensor C# Sample
+ Microsoft Corporation
+ Assets\StoreLogo-sdk.png
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/PresenceSensor/cs/PresenceSensor.csproj b/Samples/PresenceSensor/cs/PresenceSensor.csproj
new file mode 100644
index 0000000000..a77db26c46
--- /dev/null
+++ b/Samples/PresenceSensor/cs/PresenceSensor.csproj
@@ -0,0 +1,189 @@
+
+
+
+
+ $([MSBuild]::GetDirectoryNameOfFileAbove($(MSBuildThisFileDirectory), LICENSE))\SharedContent
+
+
+ Debug
+ x86
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}
+ AppContainerExe
+ Properties
+ SDKTemplate
+ Presence
+ en-US
+ UAP
+ 10.0.22621.0
+ $(TargetPlatformVersion)
+ 14
+ true
+ 512
+ {A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
+
+
+ true
+ bin\ARM\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP
+ ;2008
+ full
+ ARM
+ false
+ prompt
+ true
+
+
+ bin\ARM\Release\
+ TRACE;NETFX_CORE;WINDOWS_UAP
+ true
+ ;2008
+ pdbonly
+ ARM
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\x64\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP
+ ;2008
+ full
+ x64
+ false
+ prompt
+ true
+
+
+ bin\x64\Release\
+ TRACE;NETFX_CORE;WINDOWS_UAP
+ true
+ ;2008
+ pdbonly
+ x64
+ false
+ prompt
+ true
+ true
+
+
+ true
+ bin\x86\Debug\
+ DEBUG;TRACE;NETFX_CORE;WINDOWS_UAP
+ ;2008
+ full
+ x86
+ false
+ prompt
+ true
+
+
+ bin\x86\Release\
+ TRACE;NETFX_CORE;WINDOWS_UAP
+ true
+ ;2008
+ pdbonly
+ x86
+ false
+ prompt
+ true
+ true
+
+
+
+ App.xaml.cs
+ App.xaml
+
+
+ MainPage.xaml.cs
+ MainPage.xaml
+
+
+ Properties\AssemblyInfo.cs
+
+
+
+
+
+
+
+
+ Designer
+
+
+
+
+ App.xaml
+ MSBuild:Compile
+ Designer
+
+
+ MainPage.xaml
+ MSBuild:Compile
+ Designer
+
+
+ Scenario1_DataEvents.xaml
+ MSBuild:Compile
+ Designer
+
+
+ Scenario2_Polling.xaml
+ MSBuild:Compile
+ Designer
+
+
+ Scenario3_Choosing.xaml
+ MSBuild:Compile
+ Designer
+
+
+ Styles\Styles.xaml
+ MSBuild:Compile
+ Designer
+
+
+
+
+ Properties\Default.rd.xml
+
+
+ Assets\microsoft-sdk.png
+
+
+ Assets\smallTile-sdk.png
+
+
+ Assets\splash-sdk.png
+
+
+ Assets\squareTile-sdk.png
+
+
+ Assets\storeLogo-sdk.png
+
+
+ Assets\tile-sdk.png
+
+
+ Assets\windows-sdk.png
+
+
+
+
+ 5.0.0
+
+
+
+ 14.0
+
+
+
+
\ No newline at end of file
diff --git a/Samples/PresenceSensor/cs/PresenceSensor.sln b/Samples/PresenceSensor/cs/PresenceSensor.sln
new file mode 100644
index 0000000000..c761974d86
--- /dev/null
+++ b/Samples/PresenceSensor/cs/PresenceSensor.sln
@@ -0,0 +1,43 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.32428.217
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PresenceSensor", "PresenceSensor.csproj", "{DE10560F-8C1F-5C72-A954-301AE68ED596}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|ARM = Debug|ARM
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
+ Release|ARM = Release|ARM
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|ARM.ActiveCfg = Debug|ARM
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|ARM.Build.0 = Debug|ARM
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|ARM.Deploy.0 = Debug|ARM
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|x64.ActiveCfg = Debug|x64
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|x64.Build.0 = Debug|x64
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|x64.Deploy.0 = Debug|x64
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|x86.ActiveCfg = Debug|x86
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|x86.Build.0 = Debug|x86
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Debug|x86.Deploy.0 = Debug|x86
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|ARM.ActiveCfg = Release|ARM
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|ARM.Build.0 = Release|ARM
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|ARM.Deploy.0 = Release|ARM
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|x64.ActiveCfg = Release|x64
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|x64.Build.0 = Release|x64
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|x64.Deploy.0 = Release|x64
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|x86.ActiveCfg = Release|x86
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|x86.Build.0 = Release|x86
+ {DE10560F-8C1F-5C72-A954-301AE68ED596}.Release|x86.Deploy.0 = Release|x86
+ EndGlobalSection
+ GlobalSection(SolutionProperties) = preSolution
+ HideSolutionNode = FALSE
+ EndGlobalSection
+ GlobalSection(ExtensibilityGlobals) = postSolution
+ SolutionGuid = {8273496C-A1FD-433E-AC3A-81AB82EFF166}
+ EndGlobalSection
+EndGlobal
diff --git a/Samples/PresenceSensor/cs/SampleConfiguration.cs b/Samples/PresenceSensor/cs/SampleConfiguration.cs
new file mode 100644
index 0000000000..fbbfcbc5b3
--- /dev/null
+++ b/Samples/PresenceSensor/cs/SampleConfiguration.cs
@@ -0,0 +1,35 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using System.Collections.Generic;
+using Windows.UI.Xaml.Controls;
+
+namespace SDKTemplate
+{
+ public partial class MainPage : Page
+ {
+ public const string FEATURE_NAME = "Presence Sensor";
+
+ List scenarios = new List
+ {
+ new Scenario() { Title = "Data Events", ClassType = typeof(Scenario1_DataEvents) },
+ new Scenario() { Title = "Polling", ClassType = typeof(Scenario2_Polling) },
+ new Scenario() { Title = "Choosing", ClassType = typeof(Scenario3_Choosing) },
+ };
+ }
+
+ public class Scenario
+ {
+ public string Title { get; set; }
+ public Type ClassType { get; set; }
+ }
+}
diff --git a/Samples/PresenceSensor/cs/Scenario1_DataEvents.xaml.cs b/Samples/PresenceSensor/cs/Scenario1_DataEvents.xaml.cs
new file mode 100644
index 0000000000..dc081a61db
--- /dev/null
+++ b/Samples/PresenceSensor/cs/Scenario1_DataEvents.xaml.cs
@@ -0,0 +1,111 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using Windows.Devices.Sensors;
+using Windows.UI.Core;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Navigation;
+
+namespace SDKTemplate
+{
+ public sealed partial class Scenario1_DataEvents : Page
+ {
+ // A pointer back to the main page. This is needed if you want to call methods in MainPage such
+ // as NotifyUser()
+ MainPage rootPage = MainPage.Current;
+
+ private HumanPresenceSensor sensor;
+
+ public Scenario1_DataEvents()
+ {
+ InitializeComponent();
+ }
+
+ protected override void OnNavigatedFrom(NavigationEventArgs e)
+ {
+ if (sensor != null)
+ {
+ sensor.ReadingChanged -= ReadingChanged;
+ sensor = null;
+ }
+ }
+
+ private async void ScenarioGetSensor_Click(object sender, RoutedEventArgs e)
+ {
+ // Disable the button so the user can't click it again while we are already working.
+ GetSensorButton.IsEnabled = false;
+
+ // Clear any previous message.
+ rootPage.NotifyUser("", NotifyType.StatusMessage);
+
+ // Try to get the default presence sensor.
+ try
+ {
+ sensor = await HumanPresenceSensor.GetDefaultAsync();
+ }
+ catch (UnauthorizedAccessException)
+ {
+ // The user denied this app presence sensor access.
+ sensor = null;
+ }
+ GetSensorButton.IsEnabled = true;
+
+
+ if (sensor != null)
+ {
+ VisualStateManager.GoToState(this, "Ready", true);
+
+ // Begin listening for data reports.
+ sensor.ReadingChanged += ReadingChanged;
+ }
+ else
+ {
+ rootPage.NotifyUser("No presence sensor found", NotifyType.ErrorMessage);
+ }
+ }
+
+ async private void ReadingChanged(HumanPresenceSensor sender, HumanPresenceSensorReadingChangedEventArgs e)
+ {
+ await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
+ {
+ HumanPresenceSensorReading reading = e.Reading;
+ if (null != reading)
+ {
+ if (sensor.IsEngagementSupported)
+ {
+ EngagementStateTextBlock.Text = reading.Engagement.ToString();
+ }
+ else
+ {
+ EngagementStateTextBlock.Text = "Not Supported";
+ }
+
+ if (sensor.IsPresenceSupported)
+ {
+ DetectionStateTextBlock.Text = reading.Presence.ToString();
+ }
+ else
+ {
+ DetectionStateTextBlock.Text = "Not Supported";
+ }
+
+ // Show the detection distance, if available
+ DetectionDistanceTextBlock.Text = reading.DistanceInMillimeters == null ? "Unavailable" : reading.DistanceInMillimeters.ToString();
+
+ TimestampTextBlock.Text = reading.Timestamp.ToString("u");
+ }
+ });
+ }
+ }
+}
diff --git a/Samples/PresenceSensor/cs/Scenario2_Polling.xaml.cs b/Samples/PresenceSensor/cs/Scenario2_Polling.xaml.cs
new file mode 100644
index 0000000000..2b1711e92d
--- /dev/null
+++ b/Samples/PresenceSensor/cs/Scenario2_Polling.xaml.cs
@@ -0,0 +1,150 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using Windows.Devices.Enumeration;
+using Windows.Devices.Sensors;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Navigation;
+
+namespace SDKTemplate
+{
+ public sealed partial class Scenario2_Polling : Page
+ {
+ MainPage rootPage = MainPage.Current;
+
+ private HumanPresenceSensor sensor;
+
+ public Scenario2_Polling()
+ {
+ InitializeComponent();
+ }
+
+ private async void ScenarioGetSensor_Click(object sender, RoutedEventArgs e)
+ {
+ // This scenario uses DeviceInformation.FindAllAsync to find all
+ // HumanPresenceSensor devices. This allows the app to choose a sensor
+ // which best fits its requirements.
+ //
+ // Scenario 1 shows how to get the default HumanPresenceSensor device.
+
+ // Disable the button so the user can't click it again while we are already working.
+ GetSensorButton.IsEnabled = false;
+
+ // Clear any previous message.
+ rootPage.NotifyUser("", NotifyType.StatusMessage);
+
+ string selector = HumanPresenceSensor.GetDeviceSelector();
+ DeviceInformationCollection deviceInfos = await DeviceInformation.FindAllAsync(selector);
+ foreach (DeviceInformation deviceInfo in deviceInfos)
+ {
+ HumanPresenceSensor foundSensor = null;
+ try
+ {
+ foundSensor = await HumanPresenceSensor.FromIdAsync(deviceInfo.Id);
+ }
+ catch (UnauthorizedAccessException)
+ {
+ // The user denied this app presence sensor access.
+ foundSensor = null;
+ }
+
+ if (foundSensor != null)
+ {
+ if (null != foundSensor.MaxDetectableDistanceInMillimeters)
+ {
+ // Check if this is the sensor that matches our ranges.
+ // TODO: Customize these values to your application's needs.
+ const uint distanceInMillimetersLValue = 200; // 0.2m
+ const uint distanceInMillimetersRValue = 1200; // 1.2m
+ if (foundSensor.MinDetectableDistanceInMillimeters <= distanceInMillimetersLValue &&
+ foundSensor.MaxDetectableDistanceInMillimeters >= distanceInMillimetersRValue)
+ {
+ rootPage.NotifyUser("Found a presence sensor that meets the detection range", NotifyType.StatusMessage);
+ sensor = foundSensor;
+ }
+ else
+ {
+ rootPage.NotifyUser("Presence sensor does not meet the detection range, using it anyway", NotifyType.StatusMessage);
+ // We'll use the sensor anyway, to demonstrate how events work.
+ // Your app may decide not to use this sensor and keep looking for another.
+ sensor = foundSensor;
+ }
+ }
+ else
+ {
+ rootPage.NotifyUser("Presence sensor does not report detection ranges, using it anyway", NotifyType.StatusMessage);
+ sensor = foundSensor;
+ }
+ }
+
+ if (sensor != null)
+ {
+ // We found a sensor we like. We can stop looking now.
+ break;
+ }
+ }
+
+ GetSensorButton.IsEnabled = true;
+
+ if (sensor != null)
+ {
+ VisualStateManager.GoToState(this, "Ready", true);
+ }
+ else
+ {
+ rootPage.NotifyUser("No presence sensor found", NotifyType.ErrorMessage);
+ }
+ }
+
+ private void ScenarioGetData_Click(object sender, RoutedEventArgs e)
+ {
+ HumanPresenceSensorReading reading;
+ try
+ {
+ reading = sensor.GetCurrentReading();
+ }
+ catch (UnauthorizedAccessException)
+ {
+ // The user denied this app presence sensor access.
+ reading = null;
+ }
+
+ if (reading != null)
+ {
+ if (sensor.IsEngagementSupported)
+ {
+ EngagementStateTextBlock.Text = reading.Engagement.ToString();
+ }
+ else
+ {
+ EngagementStateTextBlock.Text = "Not Supported";
+ }
+
+ if (sensor.IsPresenceSupported)
+ {
+ DetectionStateTextBlock.Text = reading.Presence.ToString();
+ }
+ else
+ {
+ DetectionStateTextBlock.Text = "Not Supported";
+ }
+
+ // Show the detection distance, if available
+ DetectionDistanceTextBlock.Text = reading.DistanceInMillimeters == null ? "Unavailable" : reading.DistanceInMillimeters.ToString();
+
+ TimestampTextBlock.Text = reading.Timestamp.ToString("u");
+ }
+ }
+ }
+}
+
diff --git a/Samples/PresenceSensor/cs/Scenario3_Choosing.xaml.cs b/Samples/PresenceSensor/cs/Scenario3_Choosing.xaml.cs
new file mode 100644
index 0000000000..c0e39df9cb
--- /dev/null
+++ b/Samples/PresenceSensor/cs/Scenario3_Choosing.xaml.cs
@@ -0,0 +1,248 @@
+//*********************************************************
+//
+// Copyright (c) Microsoft. All rights reserved.
+// This code is licensed under the MIT License (MIT).
+// THIS CODE IS PROVIDED *AS IS* WITHOUT WARRANTY OF
+// ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING ANY
+// IMPLIED WARRANTIES OF FITNESS FOR A PARTICULAR
+// PURPOSE, MERCHANTABILITY, OR NON-INFRINGEMENT.
+//
+//*********************************************************
+
+using System;
+using System.Threading.Tasks;
+using Windows.Devices.Enumeration;
+using Windows.Devices.Sensors;
+using Windows.Foundation;
+using Windows.UI.Core;
+using Windows.UI.Xaml;
+using Windows.UI.Xaml.Controls;
+using Windows.UI.Xaml.Input;
+using Windows.UI.Xaml.Media;
+using Windows.UI.Xaml.Navigation;
+
+namespace SDKTemplate
+{
+ public sealed partial class Scenario3_Choosing : Page
+ {
+ // A pointer back to the main page. This is needed if you want to call methods in MainPage such
+ // as NotifyUser()
+ MainPage rootPage = MainPage.Current;
+
+ private DeviceWatcher watcher = null;
+
+ public Scenario3_Choosing()
+ {
+ InitializeComponent();
+ }
+
+ protected override void OnNavigatedFrom(NavigationEventArgs e)
+ {
+ if (watcher != null)
+ {
+ watcher.Stop();
+ }
+ }
+
+ private async void ScenarioPick_Click(object sender, RoutedEventArgs e)
+ {
+ DevicePicker picker = new DevicePicker();
+ picker.Appearance.Title = "Select a presence sensor from which to read data";
+ picker.Filter.SupportedDeviceSelectors.Add(HumanPresenceSensor.GetDeviceSelector());
+
+ // Calculate the position of the button next to which we will place the picker.
+ GeneralTransform transform = ScenarioPickButton.TransformToVisual(null);
+ Rect rect = transform.TransformBounds(new Rect(0.0, 0.0, ScenarioPickButton.ActualWidth, ScenarioPickButton.ActualHeight));
+
+ DeviceInformation deviceInfo = await picker.PickSingleDeviceAsync(rect);
+ if (deviceInfo != null)
+ {
+ await ReadOneReadingFromSensorAsync(deviceInfo);
+ }
+ }
+
+ ///
+ /// Invoked when the device watcher finds a presence sensor
+ ///
+ /// The device watcher
+ /// Device information for the presence sensor that was found
+ private async void OnHumanPresenceSensorAdded(DeviceWatcher sender, DeviceInformation deviceInfo)
+ {
+ await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
+ {
+ // The app can optionally ignore sensors which do not satisfy desired criteria.
+ // This sample does not apply any filter. See the DeviceEnumerationAndPairing sample
+ // for more advanced ways of presenting a list of devices.
+
+ ListBoxItem item = new ListBoxItem() { Content = deviceInfo.Name, Tag = deviceInfo };
+ SensorsList.Items.Add(item);
+ });
+ }
+
+ ///
+ /// Invoked when a presence sensor is removed from the system
+ ///
+ /// The device watcher
+ /// Device information for the presence sensor that was removed
+ private async void OnHumanPresenceSensorRemoved(DeviceWatcher sender, DeviceInformationUpdate update)
+ {
+ await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
+ {
+ // Look for the sensor that was removed from the system and erase it from the ListBox.
+ string removedId = update.Id;
+
+ foreach (ListBoxItem item in SensorsList.Items)
+ {
+ DeviceInformation itemDeviceInfo = (DeviceInformation)item.Tag;
+ if (itemDeviceInfo.Id == removedId)
+ {
+ SensorsList.Items.Remove(item);
+ break;
+ }
+ }
+ });
+ }
+
+ ///
+ /// Invoked when a presence sensor's properties change
+ ///
+ /// The device watcher
+ /// Device information for the presence sensor that changed
+ private async void OnHumanPresenceSensorUpdated(DeviceWatcher sender, DeviceInformationUpdate update)
+ {
+ await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
+ {
+ // Look for the sensor that was updated.
+ string updatedId = update.Id;
+
+ foreach (ListBoxItem item in SensorsList.Items)
+ {
+ DeviceInformation itemDeviceInfo = (DeviceInformation)item.Tag;
+ if (itemDeviceInfo.Id == updatedId)
+ {
+ // Update the DeviceInformation for the sensor that updated.
+ itemDeviceInfo.Update(update);
+ // Refresh the device name, in case it changed.
+ item.Content = itemDeviceInfo.Name;
+ break;
+ }
+ }
+ });
+ }
+
+ private async void OnHumanPresenceSensorEnumerationCompleted(DeviceWatcher sender, object e)
+ {
+ await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
+ {
+ rootPage.NotifyUser("All sensors found. Monitoring for changes...", NotifyType.StatusMessage);
+ });
+ }
+
+ private void ScenarioStart_Click(object sender, RoutedEventArgs e)
+ {
+ SensorsList.Items.Clear();
+
+ watcher = DeviceInformation.CreateWatcher(HumanPresenceSensor.GetDeviceSelector());
+ watcher.Added += OnHumanPresenceSensorAdded;
+ watcher.Removed += OnHumanPresenceSensorRemoved;
+ watcher.Updated += OnHumanPresenceSensorUpdated;
+ watcher.EnumerationCompleted += OnHumanPresenceSensorEnumerationCompleted;
+ watcher.Start();
+
+ rootPage.NotifyUser("Looking for sensors...", NotifyType.StatusMessage);
+
+ ScenarioStartButton.IsEnabled = false;
+ ScenarioStopButton.IsEnabled = true;
+ }
+
+ private void ScenarioStop_Click(object sender, RoutedEventArgs e)
+ {
+ watcher.Stop();
+ watcher = null;
+
+ rootPage.NotifyUser("", NotifyType.StatusMessage);
+
+ ScenarioStartButton.IsEnabled = true;
+ ScenarioStopButton.IsEnabled = false;
+ }
+
+ private async void ScenarioReadSelected_Click(object sender, RoutedEventArgs e)
+ {
+ rootPage.NotifyUser("", NotifyType.StatusMessage);
+
+ ListBoxItem item = (ListBoxItem)SensorsList.SelectedItem;
+ if (item == null)
+ {
+ rootPage.NotifyUser("No sensor is selected.", NotifyType.ErrorMessage);
+ return;
+ }
+
+ DeviceInformation selectedInfo = (DeviceInformation)item.Tag;
+ await ReadOneReadingFromSensorAsync(selectedInfo);
+ }
+
+ // Obtains a sensor described by the DeviceInformation and reads one reading from it.
+ private async Task ReadOneReadingFromSensorAsync(DeviceInformation deviceInfo)
+ {
+ HumanPresenceSensor sensor;
+ try
+ {
+ sensor = await HumanPresenceSensor.FromIdAsync(deviceInfo.Id);
+ }
+ catch (UnauthorizedAccessException)
+ {
+ // The user denied this app presence sensor access.
+ sensor = null;
+ }
+
+ EngagementStateTextBlock.Text = "No data";
+ DetectionStateTextBlock.Text = "No data";
+ TimestampTextBlock.Text = "No data";
+ DetectionDistanceTextBlock.Text = "No data";
+
+ if (sensor != null)
+ {
+ HumanPresenceSensorReading reading;
+ try
+ {
+ reading = sensor.GetCurrentReading();
+ }
+ catch (UnauthorizedAccessException)
+ {
+ // The user denied this app presence sensor access.
+ reading = null;
+ }
+
+ if (reading != null)
+ {
+ if (sensor.IsEngagementSupported)
+ {
+ EngagementStateTextBlock.Text = reading.Engagement.ToString();
+ }
+ else
+ {
+ EngagementStateTextBlock.Text = "Not Supported";
+ }
+
+ if (sensor.IsPresenceSupported)
+ {
+ DetectionStateTextBlock.Text = reading.Presence.ToString();
+ }
+ else
+ {
+ DetectionStateTextBlock.Text = "Not Supported";
+ }
+
+ // Show the detection distance, if available
+ DetectionDistanceTextBlock.Text = reading.DistanceInMillimeters == null ? "Unavailable" : reading.DistanceInMillimeters.ToString();
+
+ TimestampTextBlock.Text = reading.Timestamp.ToString("u");
+ }
+ }
+ else
+ {
+ rootPage.NotifyUser($"Could not access sensor {deviceInfo.Name}", NotifyType.ErrorMessage);
+ }
+ }
+ }
+}
diff --git a/Samples/PresenceSensor/shared/Scenario1_DataEvents.xaml b/Samples/PresenceSensor/shared/Scenario1_DataEvents.xaml
new file mode 100644
index 0000000000..d894aae10e
--- /dev/null
+++ b/Samples/PresenceSensor/shared/Scenario1_DataEvents.xaml
@@ -0,0 +1,62 @@
+
+
+
+
+
+ Reads data from the default presence sensor and displays the values as they are reported.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/PresenceSensor/shared/Scenario2_Polling.xaml b/Samples/PresenceSensor/shared/Scenario2_Polling.xaml
new file mode 100644
index 0000000000..259abc5bca
--- /dev/null
+++ b/Samples/PresenceSensor/shared/Scenario2_Polling.xaml
@@ -0,0 +1,66 @@
+
+
+
+
+
+ Polls for presence sensor data and displays the reading.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/PresenceSensor/shared/Scenario3_Choosing.xaml b/Samples/PresenceSensor/shared/Scenario3_Choosing.xaml
new file mode 100644
index 0000000000..8e6b928880
--- /dev/null
+++ b/Samples/PresenceSensor/shared/Scenario3_Choosing.xaml
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
+ Lets the user choose among the available presence sensors.
+
+
+
+ Use a standard system picker dialog.
+
+
+
+
+ Use a custom picker UI which updates dynamically as sensors are added or removed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/Samples/Printing/cpp/Package.appxmanifest b/Samples/Printing/cpp/Package.appxmanifest
index d3a9623e97..af0dbbe16a 100644
--- a/Samples/Printing/cpp/Package.appxmanifest
+++ b/Samples/Printing/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Printing/cpp/Printing.vcxproj b/Samples/Printing/cpp/Printing.vcxproj
index dcb37f298e..0e8c4e1022 100644
--- a/Samples/Printing/cpp/Printing.vcxproj
+++ b/Samples/Printing/cpp/Printing.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Printing/cs/Package.appxmanifest b/Samples/Printing/cs/Package.appxmanifest
index 0a5597de74..f4129d2c93 100644
--- a/Samples/Printing/cs/Package.appxmanifest
+++ b/Samples/Printing/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Printing/cs/Printing.csproj b/Samples/Printing/cs/Printing.csproj
index 50ac1dc19e..bdad5f9f0c 100644
--- a/Samples/Printing/cs/Printing.csproj
+++ b/Samples/Printing/cs/Printing.csproj
@@ -14,8 +14,8 @@
PrintSample
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Projection/cpp/Package.appxmanifest b/Samples/Projection/cpp/Package.appxmanifest
index 38411e1810..1bc010c12c 100644
--- a/Samples/Projection/cpp/Package.appxmanifest
+++ b/Samples/Projection/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Projection/cpp/Projection.vcxproj b/Samples/Projection/cpp/Projection.vcxproj
index 8e3782cb32..963063ae54 100644
--- a/Samples/Projection/cpp/Projection.vcxproj
+++ b/Samples/Projection/cpp/Projection.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/Projection/cs/Package.appxmanifest b/Samples/Projection/cs/Package.appxmanifest
index bbb6d005b4..1081d3b8ff 100644
--- a/Samples/Projection/cs/Package.appxmanifest
+++ b/Samples/Projection/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/Projection/cs/Projection.csproj b/Samples/Projection/cs/Projection.csproj
index e861cce7b9..0956961a0f 100644
--- a/Samples/Projection/cs/Projection.csproj
+++ b/Samples/Projection/cs/Projection.csproj
@@ -13,8 +13,8 @@
Projection
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ProximitySensor/cpp/Package.appxmanifest b/Samples/ProximitySensor/cpp/Package.appxmanifest
index 6698f05c0f..015a09fd16 100644
--- a/Samples/ProximitySensor/cpp/Package.appxmanifest
+++ b/Samples/ProximitySensor/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ProximitySensor/cpp/ProximitySensor.vcxproj b/Samples/ProximitySensor/cpp/ProximitySensor.vcxproj
index 9ca65d6dbc..7d06ab6a2c 100644
--- a/Samples/ProximitySensor/cpp/ProximitySensor.vcxproj
+++ b/Samples/ProximitySensor/cpp/ProximitySensor.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ProximitySensor/cpp/Tasks/Tasks.vcxproj b/Samples/ProximitySensor/cpp/Tasks/Tasks.vcxproj
index e7da7fb3cc..edd6035a08 100644
--- a/Samples/ProximitySensor/cpp/Tasks/Tasks.vcxproj
+++ b/Samples/ProximitySensor/cpp/Tasks/Tasks.vcxproj
@@ -38,8 +38,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
10.0
diff --git a/Samples/ProximitySensor/cs/Package.appxmanifest b/Samples/ProximitySensor/cs/Package.appxmanifest
index 4011b382b1..7e555b5ced 100644
--- a/Samples/ProximitySensor/cs/Package.appxmanifest
+++ b/Samples/ProximitySensor/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ProximitySensor/cs/ProximitySensor.csproj b/Samples/ProximitySensor/cs/ProximitySensor.csproj
index 6583fb74b6..365b43650b 100644
--- a/Samples/ProximitySensor/cs/ProximitySensor.csproj
+++ b/Samples/ProximitySensor/cs/ProximitySensor.csproj
@@ -14,8 +14,8 @@
ProximityCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ProximitySensor/cs/Tasks/Tasks.csproj b/Samples/ProximitySensor/cs/Tasks/Tasks.csproj
index cdb0b319e7..2be025d356 100644
--- a/Samples/ProximitySensor/cs/Tasks/Tasks.csproj
+++ b/Samples/ProximitySensor/cs/Tasks/Tasks.csproj
@@ -14,8 +14,8 @@
Tasks
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
512
{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponentsPS.vcxproj b/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponentsPS.vcxproj
index b9ddac35c2..c472100611 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponentsPS.vcxproj
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponentsPS.vcxproj
@@ -37,8 +37,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
en-US
Microsoft.SDKSamples.Kitchen.Proxies
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponents_server.vcxproj b/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponents_server.vcxproj
index 5bf7dc2ee5..33263eca3c 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponents_server.vcxproj
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/Server/ProxyStubsForWinRTComponents_server.vcxproj
@@ -39,8 +39,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/cpp/Package.appxmanifest b/Samples/ProxyStubsForWinRTComponents/cpp/cpp/Package.appxmanifest
index 1ee88e74eb..a79a86063f 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/cpp/Package.appxmanifest
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj b/Samples/ProxyStubsForWinRTComponents/cpp/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj
index 031cb123ba..b7e56cdc22 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/cs/Package.appxmanifest b/Samples/ProxyStubsForWinRTComponents/cpp/cs/Package.appxmanifest
index c3e6087e09..51ccbdedf6 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/cs/Package.appxmanifest
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/cs/ProxyStubsForWinRTComponents_client_cs.csproj b/Samples/ProxyStubsForWinRTComponents/cpp/cs/ProxyStubsForWinRTComponents_client_cs.csproj
index 114f3bcef2..1e4c1a6280 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/cs/ProxyStubsForWinRTComponents_client_cs.csproj
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/cs/ProxyStubsForWinRTComponents_client_cs.csproj
@@ -14,8 +14,8 @@
ProxyStubsForWinRTComponents_client_cs
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/js/Package.appxmanifest b/Samples/ProxyStubsForWinRTComponents/cpp/js/Package.appxmanifest
index 1f16d98199..45f4b3b017 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/js/Package.appxmanifest
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/js/Package.appxmanifest
@@ -19,7 +19,7 @@
-
+
diff --git a/Samples/ProxyStubsForWinRTComponents/cpp/js/ProxyStubsForWinRTComponents_client_js.jsproj b/Samples/ProxyStubsForWinRTComponents/cpp/js/ProxyStubsForWinRTComponents_client_js.jsproj
index 583335986f..d7977fa841 100644
--- a/Samples/ProxyStubsForWinRTComponents/cpp/js/ProxyStubsForWinRTComponents_client_js.jsproj
+++ b/Samples/ProxyStubsForWinRTComponents/cpp/js/ProxyStubsForWinRTComponents_client_js.jsproj
@@ -40,8 +40,8 @@
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
$(VersionNumberMajor).$(VersionNumberMinor)
en-US
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponentsPS.vcxproj b/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponentsPS.vcxproj
index d1bf9e2f7d..9d224b60c6 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponentsPS.vcxproj
+++ b/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponentsPS.vcxproj
@@ -37,8 +37,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
en-US
Microsoft.SDKSamples.Kitchen.Proxies
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponents_server.csproj b/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponents_server.csproj
index d206289c89..15146118d0 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponents_server.csproj
+++ b/Samples/ProxyStubsForWinRTComponents/cs/Server/ProxyStubsForWinRTComponents_server.csproj
@@ -14,8 +14,8 @@
Microsoft.SDKSamples.Kitchen
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/cpp/Package.appxmanifest b/Samples/ProxyStubsForWinRTComponents/cs/cpp/Package.appxmanifest
index ce105576f7..ceece3b876 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/cpp/Package.appxmanifest
+++ b/Samples/ProxyStubsForWinRTComponents/cs/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj b/Samples/ProxyStubsForWinRTComponents/cs/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj
index 75786e0c6c..e6cfa25517 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj
+++ b/Samples/ProxyStubsForWinRTComponents/cs/cpp/ProxyStubsForWinRTComponents_client_cpp.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/cs/Package.appxmanifest b/Samples/ProxyStubsForWinRTComponents/cs/cs/Package.appxmanifest
index ca4bca5f4e..9f4e6ebe76 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/cs/Package.appxmanifest
+++ b/Samples/ProxyStubsForWinRTComponents/cs/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/cs/ProxyStubsForWinRTComponents_client_cs.csproj b/Samples/ProxyStubsForWinRTComponents/cs/cs/ProxyStubsForWinRTComponents_client_cs.csproj
index 377caecff5..acfe23da21 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/cs/ProxyStubsForWinRTComponents_client_cs.csproj
+++ b/Samples/ProxyStubsForWinRTComponents/cs/cs/ProxyStubsForWinRTComponents_client_cs.csproj
@@ -14,8 +14,8 @@
ProxyStubsForWinRTComponents
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/js/Package.appxmanifest b/Samples/ProxyStubsForWinRTComponents/cs/js/Package.appxmanifest
index 5097c6876a..c30d703ca2 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/js/Package.appxmanifest
+++ b/Samples/ProxyStubsForWinRTComponents/cs/js/Package.appxmanifest
@@ -19,7 +19,7 @@
-
+
diff --git a/Samples/ProxyStubsForWinRTComponents/cs/js/ProxyStubsForWinRTComponents_client_js.jsproj b/Samples/ProxyStubsForWinRTComponents/cs/js/ProxyStubsForWinRTComponents_client_js.jsproj
index 54d1bf91ca..3897d7c926 100644
--- a/Samples/ProxyStubsForWinRTComponents/cs/js/ProxyStubsForWinRTComponents_client_js.jsproj
+++ b/Samples/ProxyStubsForWinRTComponents/cs/js/ProxyStubsForWinRTComponents_client_js.jsproj
@@ -40,8 +40,8 @@
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
$(VersionNumberMajor).$(VersionNumberMinor)
en-US
diff --git a/Samples/RadialController/cpp/Package.appxmanifest b/Samples/RadialController/cpp/Package.appxmanifest
index 0304fd3b7a..b162924779 100644
--- a/Samples/RadialController/cpp/Package.appxmanifest
+++ b/Samples/RadialController/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/RadialController/cpp/RadialController.vcxproj b/Samples/RadialController/cpp/RadialController.vcxproj
index b09a5537fb..442bd9254f 100644
--- a/Samples/RadialController/cpp/RadialController.vcxproj
+++ b/Samples/RadialController/cpp/RadialController.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/RadialController/cs/Package.appxmanifest b/Samples/RadialController/cs/Package.appxmanifest
index 96cddb3277..beacadfc16 100644
--- a/Samples/RadialController/cs/Package.appxmanifest
+++ b/Samples/RadialController/cs/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/RadialController/cs/RadialController.csproj b/Samples/RadialController/cs/RadialController.csproj
index 213bb48f06..4d8736953e 100644
--- a/Samples/RadialController/cs/RadialController.csproj
+++ b/Samples/RadialController/cs/RadialController.csproj
@@ -14,8 +14,8 @@
RadialController
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/RadioManager/cppwinrt/Package.appxmanifest b/Samples/RadioManager/cppwinrt/Package.appxmanifest
index 3918640dbe..7795371ab7 100644
--- a/Samples/RadioManager/cppwinrt/Package.appxmanifest
+++ b/Samples/RadioManager/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/RadioManager/cppwinrt/RadioManager.vcxproj b/Samples/RadioManager/cppwinrt/RadioManager.vcxproj
index 94ed417df4..d80645f563 100644
--- a/Samples/RadioManager/cppwinrt/RadioManager.vcxproj
+++ b/Samples/RadioManager/cppwinrt/RadioManager.vcxproj
@@ -15,7 +15,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/RadioManager/cs/Package.appxmanifest b/Samples/RadioManager/cs/Package.appxmanifest
index bdc94bf41c..c8cc7dab93 100644
--- a/Samples/RadioManager/cs/Package.appxmanifest
+++ b/Samples/RadioManager/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/RadioManager/cs/RadioManager.csproj b/Samples/RadioManager/cs/RadioManager.csproj
index 7c9e35efac..3f002ae7e4 100644
--- a/Samples/RadioManager/cs/RadioManager.csproj
+++ b/Samples/RadioManager/cs/RadioManager.csproj
@@ -14,8 +14,8 @@
RadioManagerSample
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/RelativeInclinometer/cpp/Package.appxmanifest b/Samples/RelativeInclinometer/cpp/Package.appxmanifest
index e1a5826f8f..23f34a7779 100644
--- a/Samples/RelativeInclinometer/cpp/Package.appxmanifest
+++ b/Samples/RelativeInclinometer/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/RelativeInclinometer/cpp/RelativeInclinometer.vcxproj b/Samples/RelativeInclinometer/cpp/RelativeInclinometer.vcxproj
index eaad69e640..e772c54de5 100644
--- a/Samples/RelativeInclinometer/cpp/RelativeInclinometer.vcxproj
+++ b/Samples/RelativeInclinometer/cpp/RelativeInclinometer.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/RelativeInclinometer/cs/Package.appxmanifest b/Samples/RelativeInclinometer/cs/Package.appxmanifest
index e173c5b34d..aaf16097bb 100644
--- a/Samples/RelativeInclinometer/cs/Package.appxmanifest
+++ b/Samples/RelativeInclinometer/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/RelativeInclinometer/cs/RelativeInclinometer.csproj b/Samples/RelativeInclinometer/cs/RelativeInclinometer.csproj
index fc9d7644fb..1dcfed4d85 100644
--- a/Samples/RelativeInclinometer/cs/RelativeInclinometer.csproj
+++ b/Samples/RelativeInclinometer/cs/RelativeInclinometer.csproj
@@ -14,8 +14,8 @@
RelativeInclinometerCS
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/RemoteSystems/cs/Package.appxmanifest b/Samples/RemoteSystems/cs/Package.appxmanifest
index ea89d6c53e..0e1bd71678 100644
--- a/Samples/RemoteSystems/cs/Package.appxmanifest
+++ b/Samples/RemoteSystems/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/RemoteSystems/cs/RemoteSystems.csproj b/Samples/RemoteSystems/cs/RemoteSystems.csproj
index 84be8d7efa..8f0dfe2cff 100644
--- a/Samples/RemoteSystems/cs/RemoteSystems.csproj
+++ b/Samples/RemoteSystems/cs/RemoteSystems.csproj
@@ -14,8 +14,8 @@
RemoteSystems
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ResizeAppView/cpp/Package.appxmanifest b/Samples/ResizeAppView/cpp/Package.appxmanifest
index a79ae49b23..235d66ecc5 100644
--- a/Samples/ResizeAppView/cpp/Package.appxmanifest
+++ b/Samples/ResizeAppView/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ResizeAppView/cpp/ResizeAppView.vcxproj b/Samples/ResizeAppView/cpp/ResizeAppView.vcxproj
index d22b3fd384..9a3ae454b3 100644
--- a/Samples/ResizeAppView/cpp/ResizeAppView.vcxproj
+++ b/Samples/ResizeAppView/cpp/ResizeAppView.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ResizeAppView/cppwinrt/Package.appxmanifest b/Samples/ResizeAppView/cppwinrt/Package.appxmanifest
index d110c49744..18f8cd37ac 100644
--- a/Samples/ResizeAppView/cppwinrt/Package.appxmanifest
+++ b/Samples/ResizeAppView/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/ResizeAppView/cppwinrt/ResizeAppView.vcxproj b/Samples/ResizeAppView/cppwinrt/ResizeAppView.vcxproj
index 0303912127..0e15b957e5 100644
--- a/Samples/ResizeAppView/cppwinrt/ResizeAppView.vcxproj
+++ b/Samples/ResizeAppView/cppwinrt/ResizeAppView.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/ResizeAppView/cs/Package.appxmanifest b/Samples/ResizeAppView/cs/Package.appxmanifest
index 190d3b69cf..482d54ae39 100644
--- a/Samples/ResizeAppView/cs/Package.appxmanifest
+++ b/Samples/ResizeAppView/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/ResizeAppView/cs/ResizeAppView.csproj b/Samples/ResizeAppView/cs/ResizeAppView.csproj
index 65c8b41495..daa1e637e4 100644
--- a/Samples/ResizeAppView/cs/ResizeAppView.csproj
+++ b/Samples/ResizeAppView/cs/ResizeAppView.csproj
@@ -13,8 +13,8 @@
ResizeView
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/SecondaryTiles/cppwinrt/Package.appxmanifest b/Samples/SecondaryTiles/cppwinrt/Package.appxmanifest
index 011bb6b52b..c5918e405f 100644
--- a/Samples/SecondaryTiles/cppwinrt/Package.appxmanifest
+++ b/Samples/SecondaryTiles/cppwinrt/Package.appxmanifest
@@ -13,7 +13,7 @@
Assets\storelogo-sdk.png
-
+
diff --git a/Samples/SecondaryTiles/cppwinrt/SecondaryTiles.vcxproj b/Samples/SecondaryTiles/cppwinrt/SecondaryTiles.vcxproj
index 60f869a1bc..760b43c2a1 100644
--- a/Samples/SecondaryTiles/cppwinrt/SecondaryTiles.vcxproj
+++ b/Samples/SecondaryTiles/cppwinrt/SecondaryTiles.vcxproj
@@ -14,7 +14,7 @@
true
Windows Store
10.0
- 10.0.22000.0
+ 10.0.22621.0
$(WindowsTargetPlatformVersion)
diff --git a/Samples/SecondaryTiles/cs/Package.appxmanifest b/Samples/SecondaryTiles/cs/Package.appxmanifest
index 669276a48a..9b7332fc3a 100644
--- a/Samples/SecondaryTiles/cs/Package.appxmanifest
+++ b/Samples/SecondaryTiles/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/SecondaryTiles/cs/SecondaryTiles.csproj b/Samples/SecondaryTiles/cs/SecondaryTiles.csproj
index 053063c979..c30a710213 100644
--- a/Samples/SecondaryTiles/cs/SecondaryTiles.csproj
+++ b/Samples/SecondaryTiles/cs/SecondaryTiles.csproj
@@ -13,8 +13,8 @@
SecondaryTiles
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/SemanticTextQuery/cpp/Package.appxmanifest b/Samples/SemanticTextQuery/cpp/Package.appxmanifest
index e9298c5cc6..6bdc05828e 100644
--- a/Samples/SemanticTextQuery/cpp/Package.appxmanifest
+++ b/Samples/SemanticTextQuery/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/SemanticTextQuery/cpp/SemanticTextQuery.vcxproj b/Samples/SemanticTextQuery/cpp/SemanticTextQuery.vcxproj
index f7e23ec4e2..dea25e401d 100644
--- a/Samples/SemanticTextQuery/cpp/SemanticTextQuery.vcxproj
+++ b/Samples/SemanticTextQuery/cpp/SemanticTextQuery.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/SemanticTextQuery/cs/Package.appxmanifest b/Samples/SemanticTextQuery/cs/Package.appxmanifest
index aad39f1da1..414caa5a66 100644
--- a/Samples/SemanticTextQuery/cs/Package.appxmanifest
+++ b/Samples/SemanticTextQuery/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/SemanticTextQuery/cs/SemanticTextQuery.csproj b/Samples/SemanticTextQuery/cs/SemanticTextQuery.csproj
index 3f00d5bd78..0f1c0fe548 100644
--- a/Samples/SemanticTextQuery/cs/SemanticTextQuery.csproj
+++ b/Samples/SemanticTextQuery/cs/SemanticTextQuery.csproj
@@ -14,8 +14,8 @@
SemanticTextQuery
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/SerialArduino/cs/Package.appxmanifest b/Samples/SerialArduino/cs/Package.appxmanifest
index 27435469f9..fb02c619c1 100644
--- a/Samples/SerialArduino/cs/Package.appxmanifest
+++ b/Samples/SerialArduino/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/SerialArduino/cs/SerialArduino.csproj b/Samples/SerialArduino/cs/SerialArduino.csproj
index 4da0517856..197821c2e8 100644
--- a/Samples/SerialArduino/cs/SerialArduino.csproj
+++ b/Samples/SerialArduino/cs/SerialArduino.csproj
@@ -14,8 +14,8 @@
SerialArduino
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ShareSource/cpp/Package.appxmanifest b/Samples/ShareSource/cpp/Package.appxmanifest
index eab57a100f..41acd366a3 100644
--- a/Samples/ShareSource/cpp/Package.appxmanifest
+++ b/Samples/ShareSource/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/ShareSource/cpp/ShareSource.vcxproj b/Samples/ShareSource/cpp/ShareSource.vcxproj
index ada07ca920..a58975411d 100644
--- a/Samples/ShareSource/cpp/ShareSource.vcxproj
+++ b/Samples/ShareSource/cpp/ShareSource.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
diff --git a/Samples/ShareSource/cs/Package.appxmanifest b/Samples/ShareSource/cs/Package.appxmanifest
index a09abedcbc..c276e9b69e 100644
--- a/Samples/ShareSource/cs/Package.appxmanifest
+++ b/Samples/ShareSource/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/ShareSource/cs/ShareSource.csproj b/Samples/ShareSource/cs/ShareSource.csproj
index b59c58bc5f..ed4c3407d3 100644
--- a/Samples/ShareSource/cs/ShareSource.csproj
+++ b/Samples/ShareSource/cs/ShareSource.csproj
@@ -14,8 +14,8 @@
ShareSource
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/ShareTarget/cs/Package.appxmanifest b/Samples/ShareTarget/cs/Package.appxmanifest
index a0b75b14f8..6438f4d993 100644
--- a/Samples/ShareTarget/cs/Package.appxmanifest
+++ b/Samples/ShareTarget/cs/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-
+
diff --git a/Samples/ShareTarget/cs/ShareTarget.csproj b/Samples/ShareTarget/cs/ShareTarget.csproj
index f98d68ec5d..cbdbdb9ee0 100644
--- a/Samples/ShareTarget/cs/ShareTarget.csproj
+++ b/Samples/ShareTarget/cs/ShareTarget.csproj
@@ -13,8 +13,8 @@
ShareTarget
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/Simple3DGameDX/cpp/Package.AppxManifest b/Samples/Simple3DGameDX/cpp/Package.AppxManifest
index eb85a0111e..6b57a566b0 100644
--- a/Samples/Simple3DGameDX/cpp/Package.AppxManifest
+++ b/Samples/Simple3DGameDX/cpp/Package.AppxManifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Simple3DGameDX/cpp/Simple3DGameDX.vcxproj b/Samples/Simple3DGameDX/cpp/Simple3DGameDX.vcxproj
index e3f1d43f18..29b64592ca 100644
--- a/Samples/Simple3DGameDX/cpp/Simple3DGameDX.vcxproj
+++ b/Samples/Simple3DGameDX/cpp/Simple3DGameDX.vcxproj
@@ -36,8 +36,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
10.0
true
diff --git a/Samples/Simple3DGameDX/cppwinrt/Package.appxmanifest b/Samples/Simple3DGameDX/cppwinrt/Package.appxmanifest
index c42f877f10..b3a2e8635e 100644
--- a/Samples/Simple3DGameDX/cppwinrt/Package.appxmanifest
+++ b/Samples/Simple3DGameDX/cppwinrt/Package.appxmanifest
@@ -11,7 +11,7 @@
Assets\storeLogo-sdk.png
-
+
diff --git a/Samples/Simple3DGameDX/cppwinrt/Simple3DGameDX.vcxproj b/Samples/Simple3DGameDX/cppwinrt/Simple3DGameDX.vcxproj
index 05aea0c751..c86ff22f51 100644
--- a/Samples/Simple3DGameDX/cppwinrt/Simple3DGameDX.vcxproj
+++ b/Samples/Simple3DGameDX/cppwinrt/Simple3DGameDX.vcxproj
@@ -13,8 +13,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
diff --git a/Samples/Simple3DGameXaml/cpp/Package.AppxManifest b/Samples/Simple3DGameXaml/cpp/Package.AppxManifest
index ff88e27129..369b77f42a 100644
--- a/Samples/Simple3DGameXaml/cpp/Package.AppxManifest
+++ b/Samples/Simple3DGameXaml/cpp/Package.AppxManifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/Simple3DGameXaml/cpp/Simple3DGameXaml.vcxproj b/Samples/Simple3DGameXaml/cpp/Simple3DGameXaml.vcxproj
index af2bf7bfb6..c224df4fec 100644
--- a/Samples/Simple3DGameXaml/cpp/Simple3DGameXaml.vcxproj
+++ b/Samples/Simple3DGameXaml/cpp/Simple3DGameXaml.vcxproj
@@ -36,8 +36,8 @@
14.0
true
Windows Store
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
10.0
true
diff --git a/Samples/SimpleCommunication/common/MediaExtensions/Microsoft.Samples.SimpleCommunication/Microsoft.Samples.SimpleCommunication.vcxproj b/Samples/SimpleCommunication/common/MediaExtensions/Microsoft.Samples.SimpleCommunication/Microsoft.Samples.SimpleCommunication.vcxproj
index 870a5084f4..96318a16f4 100644
--- a/Samples/SimpleCommunication/common/MediaExtensions/Microsoft.Samples.SimpleCommunication/Microsoft.Samples.SimpleCommunication.vcxproj
+++ b/Samples/SimpleCommunication/common/MediaExtensions/Microsoft.Samples.SimpleCommunication/Microsoft.Samples.SimpleCommunication.vcxproj
@@ -39,8 +39,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
true
100
diff --git a/Samples/SimpleCommunication/cpp/Package.appxmanifest b/Samples/SimpleCommunication/cpp/Package.appxmanifest
index 8808771d19..beeec6a65c 100644
--- a/Samples/SimpleCommunication/cpp/Package.appxmanifest
+++ b/Samples/SimpleCommunication/cpp/Package.appxmanifest
@@ -20,7 +20,7 @@
-
+
diff --git a/Samples/SimpleCommunication/cpp/SimpleCommunication.vcxproj b/Samples/SimpleCommunication/cpp/SimpleCommunication.vcxproj
index aaf9af5da4..6c8ec50523 100644
--- a/Samples/SimpleCommunication/cpp/SimpleCommunication.vcxproj
+++ b/Samples/SimpleCommunication/cpp/SimpleCommunication.vcxproj
@@ -11,8 +11,8 @@
true
Windows Store
10.0
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
true
true
100
diff --git a/Samples/SimpleCommunication/cs/Package.appxmanifest b/Samples/SimpleCommunication/cs/Package.appxmanifest
index 22b76b9356..0dad37080d 100644
--- a/Samples/SimpleCommunication/cs/Package.appxmanifest
+++ b/Samples/SimpleCommunication/cs/Package.appxmanifest
@@ -21,7 +21,7 @@
-
+
diff --git a/Samples/SimpleCommunication/cs/SimpleCommunication.csproj b/Samples/SimpleCommunication/cs/SimpleCommunication.csproj
index 0568a9be7e..cd92072f16 100644
--- a/Samples/SimpleCommunication/cs/SimpleCommunication.csproj
+++ b/Samples/SimpleCommunication/cs/SimpleCommunication.csproj
@@ -13,8 +13,8 @@
SimpleCommunication
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/SimpleImaging/cs/Package.appxmanifest b/Samples/SimpleImaging/cs/Package.appxmanifest
index f33edbca03..7852992879 100644
--- a/Samples/SimpleImaging/cs/Package.appxmanifest
+++ b/Samples/SimpleImaging/cs/Package.appxmanifest
@@ -19,7 +19,7 @@
-
+
diff --git a/Samples/SimpleImaging/cs/SimpleImaging.csproj b/Samples/SimpleImaging/cs/SimpleImaging.csproj
index 5c8aeb2dd3..cc4b98825b 100644
--- a/Samples/SimpleImaging/cs/SimpleImaging.csproj
+++ b/Samples/SimpleImaging/cs/SimpleImaging.csproj
@@ -14,8 +14,8 @@
SimpleImaging
en-US
UAP
- 10.0.22000.0
- 10.0.22000.0
+ 10.0.22621.0
+ 10.0.22621.0
14
true
512
diff --git a/Samples/SimpleInk/cpp/Package.appxmanifest b/Samples/SimpleInk/cpp/Package.appxmanifest
index 22284d591d..43d4872417 100644
--- a/Samples/SimpleInk/cpp/Package.appxmanifest
+++ b/Samples/SimpleInk/cpp/Package.appxmanifest
@@ -8,7 +8,7 @@
Assets\StoreLogo-sdk.png
-