├── .gitattributes
├── .gitignore
├── AccelMobileClient
├── AccelMobileClient.sln
├── AccelMobileClient
│ ├── AccelMobileClient.Android
│ │ ├── AccelMobileClient.Android.csproj
│ │ ├── Assets
│ │ │ └── AboutAssets.txt
│ │ ├── MainActivity.cs
│ │ ├── Properties
│ │ │ ├── AndroidManifest.xml
│ │ │ └── AssemblyInfo.cs
│ │ ├── Resources
│ │ │ ├── AboutResources.txt
│ │ │ ├── Resource.Designer.cs
│ │ │ ├── drawable-hdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-xhdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable
│ │ │ │ └── icon.png
│ │ │ ├── layout
│ │ │ │ ├── Tabbar.axml
│ │ │ │ └── Toolbar.axml
│ │ │ └── values
│ │ │ │ └── styles.xml
│ │ ├── app.config
│ │ └── packages.config
│ ├── AccelMobileClient.UWP
│ │ ├── AccelMobileClient.UWP.csproj
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ │ ├── LockScreenLogo.scale-100.png
│ │ │ ├── LockScreenLogo.scale-125.png
│ │ │ ├── LockScreenLogo.scale-150.png
│ │ │ ├── LockScreenLogo.scale-200.png
│ │ │ ├── LockScreenLogo.scale-400.png
│ │ │ ├── SplashScreen.scale-100.png
│ │ │ ├── SplashScreen.scale-125.png
│ │ │ ├── SplashScreen.scale-150.png
│ │ │ ├── SplashScreen.scale-200.png
│ │ │ ├── SplashScreen.scale-400.png
│ │ │ ├── Square150x150Logo.scale-100.png
│ │ │ ├── Square150x150Logo.scale-125.png
│ │ │ ├── Square150x150Logo.scale-150.png
│ │ │ ├── Square150x150Logo.scale-200.png
│ │ │ ├── Square150x150Logo.scale-400.png
│ │ │ ├── Square44x44Logo.scale-100.png
│ │ │ ├── Square44x44Logo.scale-125.png
│ │ │ ├── Square44x44Logo.scale-150.png
│ │ │ ├── Square44x44Logo.scale-200.png
│ │ │ ├── Square44x44Logo.scale-400.png
│ │ │ ├── Square44x44Logo.targetsize-16_altform-unplated.png
│ │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ │ ├── Square44x44Logo.targetsize-256_altform-unplated.png
│ │ │ ├── Square44x44Logo.targetsize-32_altform-unplated.png
│ │ │ ├── Square44x44Logo.targetsize-48_altform-unplated.png
│ │ │ ├── StoreLogo.png
│ │ │ ├── Wide310x150Logo.scale-100.png
│ │ │ ├── Wide310x150Logo.scale-125.png
│ │ │ ├── Wide310x150Logo.scale-150.png
│ │ │ ├── Wide310x150Logo.scale-200.png
│ │ │ └── Wide310x150Logo.scale-400.png
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── Package.appxmanifest
│ │ ├── Properties
│ │ │ ├── AssemblyInfo.cs
│ │ │ └── Default.rd.xml
│ │ └── project.json
│ ├── AccelMobileClient.iOS
│ │ ├── AccelMobileClient.iOS.csproj
│ │ ├── AppDelegate.cs
│ │ ├── Entitlements.plist
│ │ ├── Info.plist
│ │ ├── Main.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Resources
│ │ │ ├── Default-568h@2x.png
│ │ │ ├── Default-Portrait.png
│ │ │ ├── Default-Portrait@2x.png
│ │ │ ├── Default.png
│ │ │ ├── Default@2x.png
│ │ │ ├── Icon-60@2x.png
│ │ │ ├── Icon-60@3x.png
│ │ │ ├── Icon-76.png
│ │ │ ├── Icon-76@2x.png
│ │ │ ├── Icon-Small-40.png
│ │ │ ├── Icon-Small-40@2x.png
│ │ │ ├── Icon-Small-40@3x.png
│ │ │ ├── Icon-Small.png
│ │ │ ├── Icon-Small@2x.png
│ │ │ ├── Icon-Small@3x.png
│ │ │ └── LaunchScreen.storyboard
│ │ ├── app.config
│ │ ├── iTunesArtwork
│ │ ├── iTunesArtwork@2x
│ │ └── packages.config
│ ├── AccelMobileClient
│ │ ├── AccelMobileClient.csproj
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── DeviceManager.cs
│ │ ├── Images
│ │ │ ├── Console.png
│ │ │ ├── Desktop.png
│ │ │ ├── IoT.png
│ │ │ └── Mobile.png
│ │ ├── Models
│ │ │ ├── DeviceData.cs
│ │ │ └── DeviceStatus.cs
│ │ ├── Pages
│ │ │ ├── DeviceDetail.xaml
│ │ │ ├── DeviceDetail.xaml.cs
│ │ │ ├── DeviceDetailMobile.xaml
│ │ │ ├── DeviceDetailMobile.xaml.cs
│ │ │ ├── DevicesMaster.xaml
│ │ │ ├── DevicesMaster.xaml.cs
│ │ │ ├── DevicesMasterDetail.xaml
│ │ │ ├── DevicesMasterDetail.xaml.cs
│ │ │ ├── RealTime.xaml
│ │ │ └── RealTime.xaml.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── SignalR
│ │ │ ├── AzureIoTHubConfig.cs
│ │ │ └── CommonSensorConfig.cs
│ │ ├── ViewModels
│ │ │ └── DeviceDetailViewModel.cs
│ │ ├── app.config
│ │ └── packages.config
│ └── AccelerationAndGyro
│ │ ├── AccelerationAndGyro.csproj
│ │ ├── AccelerationAndGyroModel.cs
│ │ ├── FakeSensor
│ │ ├── FakeAccelerometerAndGyro.cs
│ │ └── SampleData.txt
│ │ ├── HandleAccelAndGyroPushToAzure.cs
│ │ ├── IAccelerationAndGyroSensor.cs
│ │ ├── RotationAngles.cs
│ │ └── VirtualAccelerationAndGyroSensorFromAzure.cs
└── AccelerationAndGyroPortable
│ ├── AccelerationAndGyroModel.cs
│ ├── AccelerationAndGyroPortable.csproj
│ ├── FakeSensor
│ ├── FakeAccelerometerAndGyro.cs
│ └── SampleData.txt
│ ├── HandleAccelAndGyroPushToAzure.cs
│ ├── IAccelerationAndGyroSensor.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── RotationAngles.cs
│ ├── VirtualAccelerationAndGyroSensorFromAzure.cs
│ ├── app.config
│ └── packages.config
├── AndroidThings
└── BlinkThings
│ ├── BlinkThings.sln
│ └── BlinkThings
│ ├── Assets
│ └── AboutAssets.txt
│ ├── BlinkThings.csproj
│ ├── GettingStarted.Xamarin
│ ├── MainActivity.cs
│ ├── Properties
│ ├── AndroidManifest.xml
│ └── AssemblyInfo.cs
│ ├── Resources
│ ├── AboutResources.txt
│ ├── Resource.Designer.cs
│ ├── layout
│ │ └── Main.axml
│ └── values
│ │ └── Strings.xml
│ └── packages.config
├── IoTDevices
├── AndroidDevice
│ ├── AndroidDevice.csproj
│ ├── Assets
│ │ └── AboutAssets.txt
│ ├── GettingStarted.Xamarin
│ ├── MainActivity.cs
│ ├── Properties
│ │ ├── AndroidManifest.xml
│ │ └── AssemblyInfo.cs
│ ├── Resources
│ │ ├── AboutResources.txt
│ │ ├── Resource.Designer.cs
│ │ ├── drawable
│ │ │ └── Icon.png
│ │ ├── layout
│ │ │ └── Main.axml
│ │ └── values
│ │ │ └── Strings.xml
│ ├── app.config
│ └── packages.config
├── AndroidThingsDevice
│ ├── AndroidThingsDevice.csproj
│ ├── Assets
│ │ └── AboutAssets.txt
│ ├── GettingStarted.Xamarin
│ ├── MainActivity.cs
│ ├── Properties
│ │ ├── AndroidManifest.xml
│ │ └── AssemblyInfo.cs
│ ├── Resources
│ │ ├── AboutResources.txt
│ │ ├── Resource.Designer.cs
│ │ ├── drawable
│ │ │ └── Icon.png
│ │ ├── layout
│ │ │ └── Main.axml
│ │ └── values
│ │ │ └── Strings.xml
│ ├── app.config
│ └── packages.config
├── ConsoleDevice
│ ├── App.config
│ ├── ConsoleDevice.csproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── ConsoleMessageMonitor
│ ├── App.config
│ ├── ConsoleMessageMonitor.csproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── ConsoleMessageMonitorSimple
│ ├── App.config
│ ├── ConsoleMessageMonitorSimple.csproj
│ ├── Program.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ └── packages.config
├── IoTDevices.sln
├── IoTDevicesShared
│ ├── DeviceToCloud.cs
│ ├── IoTDevicesShared.projitems
│ ├── IoTDevicesShared.shproj
│ └── Models
│ │ └── SensorData.cs
├── UWPDevice
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── Assets
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ ├── StoreLogo.png
│ │ └── Wide310x150Logo.scale-200.png
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── Package.appxmanifest
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ └── Default.rd.xml
│ └── UWPDevice.csproj
└── UWPIoTDevice
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── Assets
│ ├── LockScreenLogo.scale-200.png
│ ├── SplashScreen.scale-200.png
│ ├── Square150x150Logo.scale-200.png
│ ├── Square44x44Logo.scale-200.png
│ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ ├── StoreLogo.png
│ └── Wide310x150Logo.scale-200.png
│ ├── MPU6050.cs
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── Package.appxmanifest
│ ├── Properties
│ ├── AssemblyInfo.cs
│ └── Default.rd.xml
│ └── UWPIoTDevice.csproj
├── LICENSE
├── README.md
├── Radio
├── .gitattributes
├── .gitignore
├── Radio.sln
├── Radio
│ ├── Radio.Droid
│ │ ├── Assets
│ │ │ └── AboutAssets.txt
│ │ ├── GradientEffectDroid.cs
│ │ ├── MainActivity.cs
│ │ ├── PlatformFileHelper.cs
│ │ ├── Properties
│ │ │ ├── AndroidManifest.xml
│ │ │ └── AssemblyInfo.cs
│ │ ├── Radio.Droid.csproj
│ │ ├── Resources
│ │ │ ├── AboutResources.txt
│ │ │ ├── Resource.Designer.cs
│ │ │ ├── drawable-hdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-xhdpi
│ │ │ │ └── icon.png
│ │ │ ├── drawable-xxhdpi
│ │ │ │ └── icon.png
│ │ │ └── drawable
│ │ │ │ └── icon.png
│ │ └── packages.config
│ ├── Radio.UWP
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ │ ├── LockScreenLogo.scale-200.png
│ │ │ ├── SplashScreen.scale-200.png
│ │ │ ├── Square150x150Logo.scale-200.png
│ │ │ ├── Square44x44Logo.scale-200.png
│ │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ │ ├── StoreLogo.png
│ │ │ └── Wide310x150Logo.scale-200.png
│ │ ├── GradientEffectWindows.cs
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── Package.appxmanifest
│ │ ├── PlatformFileHelper.cs
│ │ ├── Properties
│ │ │ ├── AssemblyInfo.cs
│ │ │ └── Default.rd.xml
│ │ ├── Radio.UWP.csproj
│ │ └── project.json
│ ├── Radio.iOS
│ │ ├── AppDelegate.cs
│ │ ├── Assets.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Icon-App-20x20@1x.png
│ │ │ │ ├── Icon-App-20x20@2x.png
│ │ │ │ ├── Icon-App-20x20@3x.png
│ │ │ │ ├── Icon-App-29x29@1x.png
│ │ │ │ ├── Icon-App-29x29@2x.png
│ │ │ │ ├── Icon-App-29x29@3x.png
│ │ │ │ ├── Icon-App-40x40@1x.png
│ │ │ │ ├── Icon-App-40x40@2x.png
│ │ │ │ ├── Icon-App-40x40@3x.png
│ │ │ │ ├── Icon-App-57x57@1x.png
│ │ │ │ ├── Icon-App-60x60@1x.png
│ │ │ │ ├── Icon-App-60x60@2x.png
│ │ │ │ ├── Icon-App-60x60@3x.png
│ │ │ │ ├── Icon-App-76x76@1x.png
│ │ │ │ ├── Icon-App-76x76@2x.png
│ │ │ │ ├── Icon-App-76x76@3x.png
│ │ │ │ └── Icon-App-83.5x83.5@2x.png
│ │ ├── DisabledOpacityEffectIOS.cs
│ │ ├── Entitlements.plist
│ │ ├── GradientEffectIOS.cs
│ │ ├── Info.plist
│ │ ├── Main.cs
│ │ ├── PlatformFileHelper.cs
│ │ ├── Properties
│ │ │ └── AssemblyInfo.cs
│ │ ├── Radio.iOS.csproj
│ │ ├── Resources
│ │ │ └── LaunchScreen.storyboard
│ │ ├── iTunesArtwork
│ │ ├── iTunesArtwork@2x
│ │ └── packages.config
│ ├── Radio.macOS
│ │ ├── AppDelegate.cs
│ │ ├── Assets.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── AppIcon-128.png
│ │ │ │ ├── AppIcon-128@2x.png
│ │ │ │ ├── AppIcon-16.png
│ │ │ │ ├── AppIcon-16@2x.png
│ │ │ │ ├── AppIcon-256.png
│ │ │ │ ├── AppIcon-256@2x.png
│ │ │ │ ├── AppIcon-32.png
│ │ │ │ ├── AppIcon-32@2x.png
│ │ │ │ ├── AppIcon-512.png
│ │ │ │ ├── AppIcon-512@2x.png
│ │ │ │ └── Contents.json
│ │ │ └── Contents.json
│ │ ├── Entitlements.plist
│ │ ├── GradientEffectMac.cs
│ │ ├── Info.plist
│ │ ├── Main.cs
│ │ ├── Radio.macOS.csproj
│ │ ├── ViewController.cs
│ │ ├── ViewController.designer.cs
│ │ └── packages.config
│ └── Radio
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Audio
│ │ └── click.mp3
│ │ ├── Data
│ │ ├── AdvancedQuestions.json
│ │ ├── BasicQuestions.json
│ │ ├── QuestionsAdvanced.txt
│ │ └── QuestionsBasic.txt
│ │ ├── DisabledOpacityEffect.cs
│ │ ├── Game
│ │ ├── Game.cs
│ │ ├── GameManager.cs
│ │ ├── HamQuestionParser.cs
│ │ └── QuizQuestion.cs
│ │ ├── GradientEffect.cs
│ │ ├── IFileHelper.cs
│ │ ├── Images
│ │ └── background.jpg
│ │ ├── NavigationService.cs
│ │ ├── Pages
│ │ ├── HomePage.cs
│ │ ├── LessonsPage.xaml
│ │ ├── LessonsPage.xaml.cs
│ │ ├── QuestionPage.xaml
│ │ ├── QuestionPage.xaml.cs
│ │ ├── ReviewPage.xaml
│ │ └── ReviewPage.xaml.cs
│ │ ├── Properties
│ │ └── AssemblyInfo.cs
│ │ ├── QuizQuestionXmlSerializer.cs
│ │ ├── Radio.csproj
│ │ ├── ViewModels
│ │ ├── LessonsPageViewModel.cs
│ │ ├── QuestionPageViewModel.cs
│ │ ├── QuizQuestionViewModel.cs
│ │ └── ReviewPageViewModel.cs
│ │ └── packages.config
└── background.jpg
├── SayHelloXF
├── SayHelloXF.sln
└── SayHelloXF
│ ├── SayHelloXF.Android
│ ├── Assets
│ │ └── AboutAssets.txt
│ ├── MainActivity.cs
│ ├── Properties
│ │ ├── AndroidManifest.xml
│ │ └── AssemblyInfo.cs
│ ├── Resources
│ │ ├── AboutResources.txt
│ │ ├── Resource.Designer.cs
│ │ ├── drawable-hdpi
│ │ │ └── icon.png
│ │ ├── drawable-xhdpi
│ │ │ └── icon.png
│ │ ├── drawable-xxhdpi
│ │ │ └── icon.png
│ │ ├── drawable
│ │ │ └── icon.png
│ │ ├── layout
│ │ │ ├── Tabbar.axml
│ │ │ └── Toolbar.axml
│ │ └── values
│ │ │ └── styles.xml
│ ├── SayHelloXF.Android.csproj
│ ├── TextToSpeechService.Android.cs
│ └── packages.config
│ ├── SayHelloXF.UWP
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── Assets
│ │ ├── LockScreenLogo.scale-100.png
│ │ ├── LockScreenLogo.scale-125.png
│ │ ├── LockScreenLogo.scale-150.png
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── LockScreenLogo.scale-400.png
│ │ ├── SplashScreen.scale-100.png
│ │ ├── SplashScreen.scale-125.png
│ │ ├── SplashScreen.scale-150.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── SplashScreen.scale-400.png
│ │ ├── Square150x150Logo.scale-100.png
│ │ ├── Square150x150Logo.scale-125.png
│ │ ├── Square150x150Logo.scale-150.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ ├── Square150x150Logo.scale-400.png
│ │ ├── Square44x44Logo.scale-100.png
│ │ ├── Square44x44Logo.scale-125.png
│ │ ├── Square44x44Logo.scale-150.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Square44x44Logo.scale-400.png
│ │ ├── Square44x44Logo.targetsize-16_altform-unplated.png
│ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ ├── Square44x44Logo.targetsize-256_altform-unplated.png
│ │ ├── Square44x44Logo.targetsize-32_altform-unplated.png
│ │ ├── Square44x44Logo.targetsize-48_altform-unplated.png
│ │ ├── StoreLogo.png
│ │ ├── Wide310x150Logo.scale-100.png
│ │ ├── Wide310x150Logo.scale-125.png
│ │ ├── Wide310x150Logo.scale-150.png
│ │ ├── Wide310x150Logo.scale-200.png
│ │ └── Wide310x150Logo.scale-400.png
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── Package.appxmanifest
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ └── Default.rd.xml
│ ├── SayHelloXF.UWP.csproj
│ ├── TextToSpeechService.Win.cs
│ └── project.json
│ ├── SayHelloXF.iOS
│ ├── AppDelegate.cs
│ ├── Entitlements.plist
│ ├── Info.plist
│ ├── Main.cs
│ ├── Properties
│ │ └── AssemblyInfo.cs
│ ├── Resources
│ │ ├── Default-568h@2x.png
│ │ ├── Default-Portrait.png
│ │ ├── Default-Portrait@2x.png
│ │ ├── Default.png
│ │ ├── Default@2x.png
│ │ ├── Icon-60@2x.png
│ │ ├── Icon-60@3x.png
│ │ ├── Icon-76.png
│ │ ├── Icon-76@2x.png
│ │ ├── Icon-Small-40.png
│ │ ├── Icon-Small-40@2x.png
│ │ ├── Icon-Small-40@3x.png
│ │ ├── Icon-Small.png
│ │ ├── Icon-Small@2x.png
│ │ ├── Icon-Small@3x.png
│ │ └── LaunchScreen.storyboard
│ ├── SayHelloXF.iOS.csproj
│ ├── TextToSpeechService.iOS.cs
│ ├── iTunesArtwork
│ ├── iTunesArtwork@2x
│ └── packages.config
│ └── SayHelloXF
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── ITextToSpeech.cs
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── SayHelloXF.csproj
│ ├── packages.config
│ └── sayhello.png
├── TheRightDrawerStuff
├── TheRightDrawerStuff.XF
│ ├── HistoricalPage.xaml
│ ├── HistoricalPage.xaml.cs
│ ├── RealTimePage.xaml
│ ├── RealTimePage.xaml.cs
│ └── TheRightDrawerStuff.XF.csproj
├── TheRightDrawerStuff.sln
└── TheRightDrawerStuff
│ ├── Assets
│ └── AboutAssets.txt
│ ├── MainActivity.cs
│ ├── Properties
│ ├── AndroidManifest.xml
│ └── AssemblyInfo.cs
│ ├── Resources
│ ├── AboutResources.txt
│ ├── Resource.designer.cs
│ ├── drawable-hdpi
│ │ ├── ic_timeline_white_24dp.png
│ │ └── ic_update_white_24dp.png
│ ├── drawable-mdpi
│ │ ├── ic_timeline_white_24dp.png
│ │ └── ic_update_white_24dp.png
│ ├── drawable-xhdpi
│ │ ├── ic_timeline_white_24dp.png
│ │ └── ic_update_white_24dp.png
│ ├── drawable-xxhdpi
│ │ ├── ic_timeline_white_24dp.png
│ │ └── ic_update_white_24dp.png
│ ├── drawable-xxxhdpi
│ │ ├── ic_timeline_white_24dp.png
│ │ └── ic_update_white_24dp.png
│ ├── layout
│ │ └── Main.axml
│ ├── menu
│ │ └── navigation_menu.xml
│ ├── mipmap-hdpi
│ │ └── Icon.png
│ ├── mipmap-mdpi
│ │ └── Icon.png
│ ├── mipmap-xhdpi
│ │ └── Icon.png
│ ├── mipmap-xxhdpi
│ │ └── Icon.png
│ ├── mipmap-xxxhdpi
│ │ └── Icon.png
│ └── values
│ │ └── Strings.xml
│ ├── TheRightDrawerStuff.csproj
│ ├── nuget_info.txt
│ └── packages.config
├── UWPIoT Samples
├── UWPIoTBlink
│ ├── BlinkTest
│ │ ├── App.xaml
│ │ ├── App.xaml.cs
│ │ ├── Assets
│ │ │ ├── LockScreenLogo.scale-200.png
│ │ │ ├── SplashScreen.scale-200.png
│ │ │ ├── Square150x150Logo.scale-200.png
│ │ │ ├── Square44x44Logo.scale-200.png
│ │ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ │ ├── StoreLogo.png
│ │ │ └── Wide310x150Logo.scale-200.png
│ │ ├── MainPage.xaml
│ │ ├── MainPage.xaml.cs
│ │ ├── Package.appxmanifest
│ │ ├── Properties
│ │ │ ├── AssemblyInfo.cs
│ │ │ └── Default.rd.xml
│ │ └── UWPIoT_BlinkTest.csproj
│ └── UWPBlinkTest.sln
└── UWPIoTMPU6050
│ ├── Accel.sln
│ └── Accel
│ ├── Accel.csproj
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── Assets
│ ├── LockScreenLogo.scale-200.png
│ ├── SplashScreen.scale-200.png
│ ├── Square150x150Logo.scale-200.png
│ ├── Square44x44Logo.scale-200.png
│ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ ├── StoreLogo.png
│ └── Wide310x150Logo.scale-200.png
│ ├── MPU6050.cs
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── Package.appxmanifest
│ ├── Properties
│ ├── AssemblyInfo.cs
│ └── Default.rd.xml
│ └── SensorValue.cs
├── XamDraw
├── XFDraw.sln
└── XFDraw
│ ├── XFDraw.Droid
│ ├── Assets
│ │ └── AboutAssets.txt
│ ├── HyperlinkLabelRenderer.Droid.cs
│ ├── MainActivity.cs
│ ├── PaintView.Droid.cs
│ ├── Properties
│ │ ├── AndroidManifest.xml
│ │ └── AssemblyInfo.cs
│ ├── Resources
│ │ ├── AboutResources.txt
│ │ ├── Resource.Designer.cs
│ │ ├── drawable-hdpi
│ │ │ └── icon.png
│ │ ├── drawable-xhdpi
│ │ │ └── icon.png
│ │ ├── drawable-xxhdpi
│ │ │ └── icon.png
│ │ ├── drawable
│ │ │ ├── icon.png
│ │ │ ├── pencil.png
│ │ │ └── trash.png
│ │ ├── layout
│ │ │ ├── Tabbar.axml
│ │ │ └── Toolbar.axml
│ │ └── values
│ │ │ └── styles.xml
│ ├── SketchViewRenderer.Droid.cs
│ ├── XFDraw.Droid.csproj
│ └── packages.config
│ ├── XFDraw.Shared
│ ├── App.cs
│ ├── HyperlinkLabel.cs
│ ├── ISketchController.cs
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── SharedUI.projitems
│ ├── SketchView.cs
│ ├── Views
│ │ ├── ColorButton.cs
│ │ ├── ColorPicker.cs
│ │ ├── ColorPickerMouseOld.cs
│ │ ├── ColorPickerMouseView.xaml
│ │ ├── ColorPickerMouseView.xaml.cs
│ │ ├── ColorPickerTouchView.xaml
│ │ └── ColorPickerTouchView.xaml.cs
│ └── XFDraw.shproj
│ ├── XFDraw.UWP
│ ├── App.xaml
│ ├── App.xaml.cs
│ ├── Assets
│ │ ├── LockScreenLogo.scale-200.png
│ │ ├── SplashScreen.scale-200.png
│ │ ├── Square150x150Logo.scale-200.png
│ │ ├── Square44x44Logo.scale-200.png
│ │ ├── Square44x44Logo.targetsize-24_altform-unplated.png
│ │ ├── StoreLogo.png
│ │ └── Wide310x150Logo.scale-200.png
│ ├── HyperlinkLabelRenderer.UWP.cs
│ ├── MainPage.xaml
│ ├── MainPage.xaml.cs
│ ├── Package.appxmanifest
│ ├── PaintView.UWP.cs
│ ├── Properties
│ │ ├── AssemblyInfo.cs
│ │ └── Default.rd.xml
│ ├── SketchViewRenderer.UWP.cs
│ ├── XFDraw.UWP.csproj
│ ├── pencil.png
│ ├── project.json
│ └── trash.png
│ └── XFDraw.iOS
│ ├── AppDelegate.cs
│ ├── Entitlements.plist
│ ├── HyperlinkLabelRenderer.iOS.cs
│ ├── Info.plist
│ ├── Main.cs
│ ├── PaintView.iOS.cs
│ ├── Properties
│ └── AssemblyInfo.cs
│ ├── Resources
│ ├── Default-568h@2x.png
│ ├── Default-Portrait.png
│ ├── Default-Portrait@2x.png
│ ├── Default.png
│ ├── Default@2x.png
│ ├── Icon-60@2x.png
│ ├── Icon-60@3x.png
│ ├── Icon-76.png
│ ├── Icon-76@2x.png
│ ├── Icon-Small-40.png
│ ├── Icon-Small-40@2x.png
│ ├── Icon-Small-40@3x.png
│ ├── Icon-Small.png
│ ├── Icon-Small@2x.png
│ ├── Icon-Small@3x.png
│ ├── LaunchScreen.storyboard
│ ├── pencil.png
│ └── trash.png
│ ├── SketchViewRenderer.iOS.cs
│ ├── XFDraw.iOS.csproj
│ ├── iTunesArtwork
│ ├── iTunesArtwork@2x
│ └── packages.config
└── clean.bat
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
20 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/MainActivity.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Android.App;
4 | using Android.Content.PM;
5 | using Android.Runtime;
6 | using Android.Views;
7 | using Android.Widget;
8 | using Android.OS;
9 |
10 | namespace AccelMobileClient.Droid
11 | {
12 | [Activity(Label = "AccelMobileClient", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
13 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
14 | {
15 | protected override void OnCreate(Bundle bundle)
16 | {
17 | TabLayoutResource = Resource.Layout.Tabbar;
18 | ToolbarResource = Resource.Layout.Toolbar;
19 |
20 | base.OnCreate(bundle);
21 |
22 | global::Xamarin.Forms.Forms.Init(this, bundle);
23 | LoadApplication(new App());
24 | }
25 | }
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable-hdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable-hdpi/icon.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable-xhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable-xhdpi/icon.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable-xxhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable-xxhdpi/icon.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/drawable/icon.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/layout/Tabbar.axml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/Resources/layout/Toolbar.axml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.Android/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-100.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-125.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-150.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/LockScreenLogo.scale-400.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-100.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-125.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-150.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/SplashScreen.scale-400.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-100.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-125.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-150.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square150x150Logo.scale-400.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-100.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-125.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-150.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.scale-400.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-100.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-125.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-150.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Assets/Wide310x150Logo.scale-400.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Runtime.InteropServices.WindowsRuntime;
6 | using Windows.Foundation;
7 | using Windows.Foundation.Collections;
8 | using Windows.UI.Xaml;
9 | using Windows.UI.Xaml.Controls;
10 | using Windows.UI.Xaml.Controls.Primitives;
11 | using Windows.UI.Xaml.Data;
12 | using Windows.UI.Xaml.Input;
13 | using Windows.UI.Xaml.Media;
14 | using Windows.UI.Xaml.Navigation;
15 |
16 | namespace AccelMobileClient.UWP
17 | {
18 | public sealed partial class MainPage
19 | {
20 | public MainPage()
21 | {
22 | this.InitializeComponent();
23 |
24 | LoadApplication(new AccelMobileClient.App());
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("AccelMobileClient.UWP")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("AccelMobileClient.UWP")]
13 | [assembly: AssemblyCopyright("Copyright © 2015")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.UWP/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.AspNet.SignalR.Client": "2.2.2",
4 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2",
5 | "Newtonsoft.Json": "10.0.3",
6 | "SkiaSharp.Views.Forms": "1.59.1.1",
7 | "System.ValueTuple": "4.4.0",
8 | "Xamarin.Forms": "2.4.0.275-pre3"
9 | },
10 | "frameworks": {
11 | "uap10.0.10586": {}
12 | },
13 | "runtimes": {
14 | "win10-arm": {},
15 | "win10-arm-aot": {},
16 | "win10-x86": {},
17 | "win10-x86-aot": {},
18 | "win10-x64": {},
19 | "win10-x64-aot": {}
20 | }
21 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using Foundation;
6 | using UIKit;
7 |
8 | namespace AccelMobileClient.iOS
9 | {
10 | public class Application
11 | {
12 | // This is the main entry point of the application.
13 | static void Main(string[] args)
14 | {
15 | // if you want to use a different Application Delegate class from "AppDelegate"
16 | // you can specify it here.
17 | UIApplication.Main(args, null, "AppDelegate");
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default-568h@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default-Portrait.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default-Portrait.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default-Portrait@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default-Portrait@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Default@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-60@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-60@3x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-76.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-76@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small-40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small-40.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small-40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small-40@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small-40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small-40@3x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small@2x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/Resources/Icon-Small@3x.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/iTunesArtwork:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/iTunesArtwork
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/iTunesArtwork@2x:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient.iOS/iTunesArtwork@2x
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/App.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/App.xaml.cs:
--------------------------------------------------------------------------------
1 | using AccelClient;
2 | using AccelerationAndGyro;
3 | using System;
4 | using Xamarin.Forms;
5 |
6 | namespace AccelMobileClient
7 | {
8 | public partial class App : Application
9 | {
10 | public static Func GetGyroSensor { get; set; } = CommonSensorConfig.GetFakeSensor;
11 |
12 | public App()
13 | {
14 | InitializeComponent();
15 |
16 | MainPage = new DevicesMasterDetail();
17 | }
18 |
19 | protected override void OnStart()
20 | {
21 | }
22 |
23 | protected override void OnSleep()
24 | {
25 | }
26 |
27 | protected override void OnResume()
28 | {
29 | }
30 | }
31 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/DeviceManager.cs:
--------------------------------------------------------------------------------
1 | using Newtonsoft.Json;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Net.Http;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | namespace AccelClient
9 | {
10 | public class DeviceManager
11 | {
12 | const string Url = "http://accelwebappaspnet.azurewebsites.net/";
13 |
14 | public DeviceManager()
15 | {
16 |
17 | }
18 |
19 | public async Task> GetDevices ()
20 | {
21 | var client = new HttpClient();
22 |
23 | var result = await client.GetStringAsync(Url + "/api/Devices");
24 |
25 | return JsonConvert.DeserializeObject>(result);
26 | }
27 |
28 | public async Task> GetData (string device)
29 | {
30 | var client = new HttpClient();
31 |
32 | var result = await client.GetStringAsync(Url + $"/api/Accel/{device}");
33 |
34 | return JsonConvert.DeserializeObject>(result);
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/Console.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/Console.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/Desktop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/Desktop.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/IoT.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/IoT.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/Mobile.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/AccelMobileClient/AccelMobileClient/AccelMobileClient/Images/Mobile.png
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Models/DeviceData.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace AccelClient
4 | {
5 | public class DeviceData
6 | {
7 | public double Acceleration { get; set; }
8 |
9 | public string Device { get; set; }
10 |
11 | public string PartitionKey { get; set; }
12 |
13 | public string RowKey { get; set; }
14 |
15 | public DateTime Timestamp { get; set; }
16 | }
17 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Models/DeviceStatus.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace AccelClient
4 | {
5 | public class DeviceStatus
6 | {
7 | public string Device { get; set; }
8 |
9 | public string PartitionKey { get; set; }
10 |
11 | public string RowKey { get; set; }
12 |
13 | public DateTime Timestamp { get; set; }
14 | }
15 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Pages/DevicesMaster.xaml.cs:
--------------------------------------------------------------------------------
1 | using System.Threading.Tasks;
2 | using Xamarin.Forms;
3 |
4 | namespace AccelClient
5 | {
6 | public partial class DevicesMaster : ContentPage
7 | {
8 | public ListView ListView;
9 |
10 | DeviceManager deviceManager = new DeviceManager();
11 |
12 | public DevicesMaster()
13 | {
14 | InitializeComponent();
15 |
16 | ListView = listDevices;
17 |
18 | UpdateDeviceList();
19 | }
20 |
21 | async Task UpdateDeviceList()
22 | {
23 | var devices = await deviceManager.GetDevices();
24 |
25 | this.BindingContext = devices;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Pages/DevicesMasterDetail.xaml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/Pages/RealTime.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/SignalR/AzureIoTHubConfig.cs:
--------------------------------------------------------------------------------
1 | namespace AccelMobileClient
2 | {
3 | static class AzureIoTHubConfig
4 | {
5 | public const string DeviceId = "{add device ID}";
6 | public const string DeviceKey = "{add device key from Azure}";
7 | public const string IotHubUri = "{IoT Hub Uri}";
8 | }
9 |
10 | static class AzureSignalRConfig
11 | {
12 | public const string EndPoint = "{Web App enpoint}";
13 | public const string HubName = "AccelHub";
14 | }
15 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/SignalR/CommonSensorConfig.cs:
--------------------------------------------------------------------------------
1 | using AccelerationAndGyro;
2 |
3 | namespace AccelMobileClient
4 | {
5 | public class CommonSensorConfig
6 | {
7 | public static IAccelerationAndGyroSensor GetVirtualSensor()
8 | {
9 | IAccelerationAndGyroSensor sensor = new VirtualAccelerationAndGyroSensorFromAzure(AzureSignalRConfig.EndPoint, AzureSignalRConfig.HubName, AzureIoTHubConfig.DeviceId);
10 |
11 | return sensor;
12 | }
13 |
14 | public static IAccelerationAndGyroSensor GetFakeSensor()
15 | {
16 | IAccelerationAndGyroSensor sensor = new FakeAccelerometerAndGyro();
17 |
18 | return sensor;
19 | }
20 | }
21 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelMobileClient/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelerationAndGyro/AccelerationAndGyro.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard1.4
5 |
6 |
7 |
8 | 7.1
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelerationAndGyro/AccelerationAndGyroModel.cs:
--------------------------------------------------------------------------------
1 | namespace AccelerationAndGyro
2 | {
3 | public class AccelerationAndGyroModel
4 | {
5 | public float SamplePeriod { get; set; }
6 |
7 | public float AccelerationX { get; set; }
8 | public float AccelerationY { get; set; }
9 | public float AccelerationZ { get; set; }
10 | public float GyroX { get; set; }
11 | public float GyroY { get; set; }
12 | public float GyroZ { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelMobileClient/AccelerationAndGyro/IAccelerationAndGyroSensor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace AccelerationAndGyro
6 | {
7 | public interface IAccelerationAndGyroSensor
8 | {
9 | event EventHandler NewSensorReading;
10 | }
11 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelerationAndGyroPortable/AccelerationAndGyroModel.cs:
--------------------------------------------------------------------------------
1 | namespace AccelerationAndGyro
2 | {
3 | public class AccelerationAndGyroModel
4 | {
5 | public float SamplePeriod { get; set; }
6 |
7 | public float AccelerationX { get; set; }
8 | public float AccelerationY { get; set; }
9 | public float AccelerationZ { get; set; }
10 | public float GyroX { get; set; }
11 | public float GyroY { get; set; }
12 | public float GyroZ { get; set; }
13 | }
14 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelerationAndGyroPortable/IAccelerationAndGyroSensor.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | namespace AccelerationAndGyro
4 | {
5 | public interface IAccelerationAndGyroSensor
6 | {
7 | event EventHandler NewSensorReading;
8 | }
9 | }
--------------------------------------------------------------------------------
/AccelMobileClient/AccelerationAndGyroPortable/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/GettingStarted.Xamarin:
--------------------------------------------------------------------------------
1 |
2 | GS\Android\CS\AndroidApp\GettingStarted.html
3 | false
4 |
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 | using Android.App;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("BlinkThings")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("BlinkThings")]
14 | [assembly: AssemblyCopyright("Copyright © 2017")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: ComVisible(false)]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/Resources/layout/Main.axml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/Resources/values/Strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | BlinkThings
4 |
--------------------------------------------------------------------------------
/AndroidThings/BlinkThings/BlinkThings/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/GettingStarted.Xamarin:
--------------------------------------------------------------------------------
1 |
2 | GS\Android\CS\AndroidApp\GettingStarted.html
3 | false
4 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 | using Android.App;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("AndroidDevice")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("AndroidDevice")]
14 | [assembly: AssemblyCopyright("Copyright © 2017")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: ComVisible(false)]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/Resources/drawable/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/AndroidDevice/Resources/drawable/Icon.png
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/Resources/layout/Main.axml:
--------------------------------------------------------------------------------
1 |
2 |
8 |
14 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/Resources/values/Strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Hello World, Click Me!
4 | AndroidDevice
5 |
6 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidDevice/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/GettingStarted.Xamarin:
--------------------------------------------------------------------------------
1 |
2 | GS\Android\CS\AndroidApp\GettingStarted.html
3 | false
4 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/MainActivity.cs:
--------------------------------------------------------------------------------
1 | using Android.App;
2 | using Android.Widget;
3 | using Android.OS;
4 | using System;
5 | using IoTDevicesShared;
6 | using System.Threading.Tasks;
7 |
8 | namespace AndroidThingsDevice
9 | {
10 | [Activity(Label = "AndroidThingsDevice", MainLauncher = true, Icon = "@drawable/icon")]
11 | public class MainActivity : Activity
12 | {
13 | static string deviceId = "{TODO}";
14 | static string deviceKey = "{TODO}";
15 | static string hostName = "{TODO}";
16 |
17 | protected override void OnCreate(Bundle bundle)
18 | {
19 | base.OnCreate(bundle);
20 |
21 | SendMessages();
22 | }
23 |
24 | async void SendMessages()
25 | {
26 | var deviceToCloud = new DeviceToCloud(deviceId, deviceKey, hostName);
27 |
28 | while (true)
29 | {
30 | string msg;
31 | msg = await deviceToCloud.SendFakeDeviceToCloudSensorDataAsync();
32 |
33 | System.Diagnostics.Debug.WriteLine("{0} > Sending message: {1}", DateTime.Now, msg);
34 |
35 | await Task.Delay(3000);
36 | }
37 | }
38 | }
39 | }
40 |
41 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 | using Android.App;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("AndroidThingsDevice")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("AndroidThingsDevice")]
14 | [assembly: AssemblyCopyright("Copyright © 2017")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: ComVisible(false)]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/Resources/drawable/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/AndroidThingsDevice/Resources/drawable/Icon.png
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/Resources/layout/Main.axml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/Resources/values/Strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Hello World, Click Me!
4 | AndroidThingsDevice
5 |
6 |
--------------------------------------------------------------------------------
/IoTDevices/AndroidThingsDevice/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/IoTDevices/ConsoleDevice/App.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/IoTDevices/ConsoleDevice/Program.cs:
--------------------------------------------------------------------------------
1 | using IoTDevicesShared;
2 | using System;
3 | using System.Diagnostics;
4 | using System.Threading.Tasks;
5 |
6 | namespace ConsoleDevice
7 | {
8 | class Program
9 | {
10 | static string deviceId = "ConsoleDevice";
11 | static string deviceKey = "ySMBr4sd/9JPZ0N3i8LEojCL+CGRMJSk/4OfGjSd76E=";
12 | static string hostName = "Accel.azure-devices.net";
13 |
14 | static void Main(string[] args)
15 | {
16 | SendMessages();
17 | Console.ReadLine();
18 | }
19 |
20 | static async void SendMessages()
21 | {
22 | var deviceToCloud = new DeviceToCloud(deviceId, deviceKey, hostName);
23 |
24 | while (true)
25 | {
26 | string msg;
27 | msg = await deviceToCloud.SendFakeDeviceToCloudSensorDataAsync();
28 |
29 | Console.WriteLine("{0} > Sending message: {1}", DateTime.Now, msg);
30 |
31 | await Task.Delay(3000);
32 | }
33 | }
34 | }
35 | }
36 |
--------------------------------------------------------------------------------
/IoTDevices/ConsoleMessageMonitor/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/IoTDevices/IoTDevicesShared/IoTDevicesShared.projitems:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | $(MSBuildAllProjects);$(MSBuildThisFileFullPath)
5 | true
6 | fe013233-45af-4994-be38-94c388bf5a9b
7 |
8 |
9 | IoTDevicesShared
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/IoTDevices/IoTDevicesShared/IoTDevicesShared.shproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | fe013233-45af-4994-be38-94c388bf5a9b
5 | 14.0
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/IoTDevices/IoTDevicesShared/Models/SensorData.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Text;
4 |
5 | namespace IoTDevicesShared.Models
6 | {
7 | public class SensorData
8 | {
9 | public double AccelerationX { get; set; }
10 | public double AccelerationY { get; set; }
11 | public double AccelerationZ { get; set; }
12 |
13 | public double GyroX { get; set; }
14 | public double GyroY { get; set; }
15 | public double GyroZ { get; set; }
16 | }
17 | }
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPDevice/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using IoTDevicesShared;
2 | using System;
3 | using System.Threading.Tasks;
4 | using Windows.UI.Xaml.Controls;
5 |
6 | namespace UWPDevice
7 | {
8 | public sealed partial class MainPage : Page
9 | {
10 | static string deviceId = "{TODO}";
11 | static string deviceKey = "{TODO}";
12 | static string hostName = "{TODO}";
13 |
14 | public MainPage()
15 | {
16 | this.InitializeComponent();
17 |
18 | SendMessages();
19 | }
20 |
21 | async void SendMessages()
22 | {
23 | var deviceToCloud = new DeviceToCloud(deviceId, deviceKey, hostName);
24 |
25 | while (true)
26 | {
27 | string msg;
28 | msg = await deviceToCloud.SendFakeDeviceToCloudSensorDataAsync();
29 |
30 | AddMessageToList(msg);
31 |
32 | System.Diagnostics.Debug.WriteLine("{0} > Sending message: {1}", DateTime.Now, msg);
33 |
34 | await Task.Delay(3000);
35 | }
36 | }
37 |
38 | void AddMessageToList(string msg)
39 | {
40 |
41 | }
42 | }
43 | }
44 |
--------------------------------------------------------------------------------
/IoTDevices/UWPDevice/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("UWPDevice")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("UWPDevice")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/IoTDevices/UWPIoTDevice/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/IoTDevices/UWPIoTDevice/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("UWPIoTDevice")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("UWPIoTDevice")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # NETConf2017
2 | Here you're find the Xamarin Universuty Samples that were used for .NET Conf 2017 https://www.dotnetconf.net/
3 |
4 | .NET Conf Videos are available on Channel9: https://channel9.msdn.com/Events/dotnetConf/2017
5 |
6 | ## Xamarin University presented six (6) sessions at .NET Conf 2017
7 |
8 | ### DevOps with Visual Studio Team Services and Mobile Center
9 | https://channel9.msdn.com/Events/dotnetConf/2017/T323
10 |
11 | ### Introduction to Xamarin.Forms
12 | https://channel9.msdn.com/Events/dotnetConf/2017/T325
13 |
14 | ### What's New in Xamarin.Forms
15 | https://channel9.msdn.com/Events/dotnetConf/2017/T326
16 |
17 | ### Resonsive UI with Xamarin.Forms
18 | https://channel9.msdn.com/Events/dotnetConf/2017/T327
19 |
20 | ### Introduction to IoT with Xamarin
21 | https://channel9.msdn.com/Events/dotnetConf/2017/T328
22 |
23 | ### Edge to Mobile with Azure
24 | https://channel9.msdn.com/Events/dotnetConf/2017/T329
25 |
26 |
27 | If you want to learn more about C# .NET development with Xamarin and Azure, please visit https://university.xamarin.com. Xamarin University provides free online training and live instructor lead training for Xamarin.Forms, Xamarin.iOS, Xamarin.Android, and Azure.
28 |
--------------------------------------------------------------------------------
/Radio/.gitattributes:
--------------------------------------------------------------------------------
1 | # Auto detect text files and perform LF normalization
2 | * text=auto
3 |
4 | # Diff types
5 | *.cs diff=csharp
6 | *.doc diff=astextplain
7 | *.DOC diff=astextplain
8 | *.docx diff=astextplain
9 | *.DOCX diff=astextplain
10 | *.dot diff=astextplain
11 | *.DOT diff=astextplain
12 | *.pdf diff=astextplain
13 | *.PDF diff=astextplain
14 | *.rtf diff=astextplain
15 | *.RTF diff=astextplain
16 | *.pptx diff=zip
17 | *.sln text eol=crlf
18 | *.png binary
19 | *.jpg binary
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
20 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/MainActivity.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Android.App;
4 | using Android.Content.PM;
5 | using Android.Runtime;
6 | using Android.Views;
7 | using Android.Widget;
8 | using Android.OS;
9 |
10 | namespace Radio.Droid
11 | {
12 | [Activity(Label = "Radio", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
13 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
14 | {
15 | protected override void OnCreate(Bundle bundle)
16 | {
17 | base.OnCreate(bundle);
18 |
19 | global::Xamarin.Forms.Forms.Init(this, bundle);
20 | LoadApplication(new App());
21 | }
22 | }
23 | }
24 |
25 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/PlatformFileHelper.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using Xamarin.Forms;
3 | using Radio.Droid;
4 | using System.Threading.Tasks;
5 | using System.IO;
6 |
7 | [assembly: Dependency(typeof(PlatformFileHelper))]
8 |
9 | namespace Radio.Droid
10 | {
11 | public class PlatformFileHelper : IFileHelper
12 | {
13 | public string GetNameWithPath(string filename)
14 | {
15 | return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), filename);
16 | }
17 |
18 | public Task LoadLocalFileAsync (string filename)
19 | {
20 | try
21 | {
22 | return Task.FromResult(File.ReadAllText(GetNameWithPath(filename)));
23 | }
24 | catch
25 | {
26 | return Task.FromResult(null);
27 | }
28 | }
29 |
30 | public Task SaveLocalFileAsync (string filename, string data)
31 | {
32 | File.WriteAllText (GetNameWithPath(filename), data);
33 |
34 | return Task.FromResult (true);
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/Resources/drawable-hdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.Droid/Resources/drawable-hdpi/icon.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/Resources/drawable-xhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.Droid/Resources/drawable-xhdpi/icon.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/Resources/drawable-xxhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.Droid/Resources/drawable-xxhdpi/icon.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.Droid/Resources/drawable/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.Droid/Resources/drawable/icon.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.UWP/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Runtime.InteropServices.WindowsRuntime;
6 | using Windows.Foundation;
7 | using Windows.Foundation.Collections;
8 | using Windows.UI.Xaml;
9 | using Windows.UI.Xaml.Controls;
10 | using Windows.UI.Xaml.Controls.Primitives;
11 | using Windows.UI.Xaml.Data;
12 | using Windows.UI.Xaml.Input;
13 | using Windows.UI.Xaml.Media;
14 | using Windows.UI.Xaml.Navigation;
15 |
16 | namespace Radio.UWP
17 | {
18 | public sealed partial class MainPage
19 | {
20 | public MainPage()
21 | {
22 | this.InitializeComponent();
23 |
24 | LoadApplication(new Radio.App());
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("Radio.UWP")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Radio.UWP")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/Radio/Radio/Radio.UWP/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.3",
4 | "Newtonsoft.Json": "10.0.3",
5 | "Xam.Plugin.SimpleAudioPlayer": "1.0.0-beta",
6 | "Xamarin.Forms": "2.4.0.282"
7 | },
8 | "frameworks": {
9 | "uap10.0.10586": {}
10 | },
11 | "runtimes": {
12 | "win10-arm": {},
13 | "win10-arm-aot": {},
14 | "win10-x86": {},
15 | "win10-x86-aot": {},
16 | "win10-x64": {},
17 | "win10-x64-aot": {}
18 | }
19 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-57x57@1x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@1x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@3x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using Foundation;
6 | using UIKit;
7 |
8 | namespace Radio.iOS
9 | {
10 | public class Application
11 | {
12 | // This is the main entry point of the application.
13 | static void Main(string[] args)
14 | {
15 | // if you want to use a different Application Delegate class from "AppDelegate"
16 | // you can specify it here.
17 | UIApplication.Main(args, null, "AppDelegate");
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/PlatformFileHelper.cs:
--------------------------------------------------------------------------------
1 | using Radio;
2 | using System;
3 | using System.IO;
4 | using System.Threading.Tasks;
5 | using Xamarin.Forms;
6 |
7 | [assembly: Dependency(typeof(PlatformFileHelper))]
8 |
9 | namespace Radio
10 | {
11 | public class PlatformFileHelper : IFileHelper
12 | {
13 | public string GetNameWithPath(string filename)
14 | {
15 | return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "..", "Library", filename);
16 | }
17 |
18 | public Task LoadLocalFileAsync (string filename)
19 | {
20 | try
21 | {
22 | return Task.FromResult(File.ReadAllText(GetNameWithPath(filename)));
23 | }
24 | catch
25 | {
26 | return Task.FromResult(null);
27 | }
28 | }
29 |
30 | public Task SaveLocalFileAsync (string filename, string data)
31 | {
32 | File.WriteAllText (GetNameWithPath(filename), data);
33 |
34 | return Task.FromResult (true);
35 | }
36 | }
37 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/iTunesArtwork:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/iTunesArtwork
--------------------------------------------------------------------------------
/Radio/Radio/Radio.iOS/iTunesArtwork@2x:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.iOS/iTunesArtwork@2x
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-128@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-16@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-256@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-32@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio.macOS/Assets.xcassets/AppIcon.appiconset/AppIcon-512@2x.png
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleName
6 | Radio.macOS
7 | CFBundleIdentifier
8 | com.xamarin.Radio-macOS
9 | CFBundleShortVersionString
10 | 1.0
11 | CFBundleVersion
12 | 1
13 | LSMinimumSystemVersion
14 | 10.12
15 | CFBundleDevelopmentRegion
16 | en
17 | CFBundleInfoDictionaryVersion
18 | 6.0
19 | CFBundlePackageType
20 | APPL
21 | CFBundleSignature
22 | ????
23 | NSHumanReadableCopyright
24 | ${AuthorCopyright:HtmlEncode}
25 | NSPrincipalClass
26 | NSApplication
27 | XSAppIconAssets
28 | Assets.xcassets/AppIcon.appiconset
29 |
30 |
31 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/Main.cs:
--------------------------------------------------------------------------------
1 | using AppKit;
2 |
3 | namespace Radio.macOS
4 | {
5 | static class MainClass
6 | {
7 | static void Main(string[] args)
8 | {
9 | NSApplication.Init();
10 | NSApplication.SharedApplication.Delegate = new AppDelegate();
11 | NSApplication.Main(args);
12 | }
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/ViewController.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using AppKit;
4 | using Foundation;
5 |
6 | namespace Radio.macOS
7 | {
8 | public partial class ViewController : NSViewController
9 | {
10 | public ViewController(IntPtr handle) : base(handle)
11 | {
12 | }
13 |
14 | public override void ViewDidLoad()
15 | {
16 | base.ViewDidLoad();
17 |
18 | // Do any additional setup after loading the view.
19 | }
20 |
21 | public override NSObject RepresentedObject
22 | {
23 | get
24 | {
25 | return base.RepresentedObject;
26 | }
27 | set
28 | {
29 | base.RepresentedObject = value;
30 | // Update the view, if already loaded.
31 | }
32 | }
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio.macOS/ViewController.designer.cs:
--------------------------------------------------------------------------------
1 | // WARNING
2 | //
3 | // This file has been generated automatically by Xamarin Studio to store outlets and
4 | // actions made in the UI designer. If it is removed, they will be lost.
5 | // Manual changes to this file may not be handled correctly.
6 | //
7 | using Foundation;
8 |
9 | namespace Radio.macOS
10 | {
11 | [Register("ViewController")]
12 | partial class ViewController
13 | {
14 | void ReleaseDesignerOutlets()
15 | {
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/App.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 | #0077AF
8 | #FF6700
9 | #ED145B
10 | #00A87A
11 | #777777
12 | #222222
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Audio/click.mp3:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio/Audio/click.mp3
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Data/QuestionsAdvanced.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio/Data/QuestionsAdvanced.txt
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Data/QuestionsBasic.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio/Data/QuestionsBasic.txt
--------------------------------------------------------------------------------
/Radio/Radio/Radio/DisabledOpacityEffect.cs:
--------------------------------------------------------------------------------
1 | using Xamarin.Forms;
2 |
3 | namespace Radio
4 | {
5 | class DisabledOpacityEffect : RoutingEffect
6 | {
7 | public DisabledOpacityEffect()
8 | : base ("Xamarin.DisabledOpacityEffect")
9 | {
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio/GradientEffect.cs:
--------------------------------------------------------------------------------
1 | using Xamarin.Forms;
2 |
3 | namespace Radio
4 | {
5 | class GradientEffect : RoutingEffect
6 | {
7 | public GradientEffect ()
8 | : base ("Xamarin.GradientEffect")
9 | {
10 | }
11 | }
12 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio/IFileHelper.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | namespace Radio
8 | {
9 | public interface IFileHelper
10 | {
11 | Task LoadLocalFileAsync(string filename);
12 | Task SaveLocalFileAsync(string filename, string data);
13 |
14 | string GetNameWithPath(string filename);
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Images/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/Radio/Radio/Images/background.jpg
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Pages/LessonsPage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Pages/LessonsPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using Radio.ViewModels;
2 | using System;
3 | using System.Collections.Generic;
4 | using System.Linq;
5 | using System.Text;
6 | using System.Threading.Tasks;
7 |
8 | using Xamarin.Forms;
9 |
10 | namespace Radio
11 | {
12 | public partial class LessonsPage : ContentPage
13 | {
14 | public LessonsPage(LessonsPageViewModel lpvm)
15 | {
16 | InitializeComponent();
17 |
18 | BindingContext = lpvm;
19 | }
20 |
21 | private async void OnLessonTapped(object sender, ItemTappedEventArgs e)
22 | {
23 | LessonsPageViewModel lpvm = BindingContext as LessonsPageViewModel;
24 |
25 | var index = lpvm.Lessons.IndexOf((Lesson)e.Item);
26 |
27 | await DependencyService.Get().GotoPageAsync(AppPage.QuestionPage, index);
28 |
29 | }
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Pages/QuestionPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 |
7 | using Xamarin.Forms;
8 |
9 | namespace Radio
10 | {
11 | public partial class QuestionPage : ContentPage
12 | {
13 | public QuestionPage()
14 | {
15 | InitializeComponent();
16 | }
17 |
18 | private async void QuitClicked(object sender, EventArgs e)
19 | {
20 | await DependencyService.Get()?.GotoPageAsync(AppPage.ReviewPage);
21 | }
22 |
23 | public QuestionPage (QuestionPageViewModel qpvm)
24 | {
25 | InitializeComponent();
26 |
27 | this.BindingContext = qpvm;
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Pages/ReviewPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using Xamarin.Forms;
7 |
8 | namespace Radio
9 | {
10 | public partial class ReviewPage : ContentPage
11 | {
12 | public ReviewPage(ReviewPageViewModel rpvm)
13 | {
14 | InitializeComponent();
15 |
16 | BindingContext = rpvm;
17 |
18 | listQuestions.ItemTapped += OnListItemTapped;
19 | }
20 |
21 | void OnListItemTapped (object sender, ItemTappedEventArgs e)
22 | {
23 | var qqvm = (QuizQuestionViewModel)e.Item;
24 |
25 | if(qqvm != null)
26 | this.DisplayAlert("Explanation", qqvm.Explanation, "OK");
27 | }
28 | }
29 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Resources;
2 | using System.Reflection;
3 | using System.Runtime.CompilerServices;
4 | using System.Runtime.InteropServices;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("Radio")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("Radio")]
14 | [assembly: AssemblyCopyright("Copyright © 2017")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: NeutralResourcesLanguage("en")]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/QuizQuestionXmlSerializer.cs:
--------------------------------------------------------------------------------
1 | using System.IO;
2 | using System.Collections.Generic;
3 | using System.Xml.Serialization;
4 |
5 | namespace Radio
6 | {
7 | public static class QuizQuestionXmlSerializer
8 | {
9 | public static List Deserialize(Stream stream)
10 | {
11 | var serializer = new XmlSerializer (typeof(List));
12 |
13 | var questions = serializer.Deserialize(stream) as List;
14 |
15 | return questions;
16 | }
17 |
18 | public static List Deserialize (string data)
19 | {
20 | return Deserialize (GetStreamFromString(data));
21 | }
22 |
23 | public static string Serialize(List questions)
24 | {
25 | var serializer = new XmlSerializer(typeof(List));
26 |
27 | using (var tw = new StringWriter())
28 | {
29 | serializer.Serialize(tw, questions);
30 |
31 | return tw.ToString();
32 | }
33 | }
34 |
35 | private static Stream GetStreamFromString (string data)
36 | {
37 | var stream = new MemoryStream ();
38 | var writer = new StreamWriter (stream);
39 | writer.Write (data);
40 | writer.Flush ();
41 | stream.Position = 0;
42 |
43 | return stream;
44 | }
45 | }
46 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio/ViewModels/LessonsPageViewModel.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections;
3 | using System.Collections.Generic;
4 | using System.ComponentModel;
5 | using System.Linq;
6 | using System.Text;
7 | using System.Threading.Tasks;
8 | using Xamarin.Forms;
9 |
10 | namespace Radio.ViewModels
11 | {
12 | public class LessonsPageViewModel
13 | {
14 | public List Lessons { get; private set; }
15 |
16 | public Command LessonTappedCommand { get; private set; }
17 |
18 | public LessonsPageViewModel(List lessons)
19 | {
20 | Lessons = lessons;
21 |
22 | LessonTappedCommand = new Command(() =>
23 | {
24 | // int r = 99;
25 |
26 | });
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/Radio/Radio/Radio/ViewModels/QuizQuestionViewModel.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Radio
4 | {
5 | public class QuizQuestionViewModel
6 | {
7 | public string Question { get { return quizQuestion.Question; } }
8 |
9 | public List Answers { get { return quizQuestion.Answers; } }
10 |
11 | public int Answer { get { return quizQuestion.CorrectAnswer; } }
12 | public string Explanation { get { return quizQuestion.Explanation; } }
13 |
14 | public string CorrectAnswer { get { return Answers[Answer]; } }
15 |
16 | public int? Response { get; private set; }
17 |
18 | public bool IsCorrect { get { return quizQuestion.CorrectAnswer == Response; } }
19 |
20 | QuizQuestion quizQuestion;
21 |
22 | public QuizQuestionViewModel (QuizQuestion quizQuestion, int? response)
23 | {
24 | this.Response = response;
25 | this.quizQuestion = quizQuestion;
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio/ViewModels/ReviewPageViewModel.cs:
--------------------------------------------------------------------------------
1 | using System.Collections.Generic;
2 |
3 | namespace Radio
4 | {
5 | public class ReviewPageViewModel
6 | {
7 | public List QuestionViewModels { get; set; }
8 |
9 | Game game;
10 |
11 | public string Result
12 | {
13 | get { return $"{game.GetNumberOfCorrectResponses()} out of {game.NumberOfQuestions} ({(int)(game.GetNumberOfCorrectResponses() * 100 / game.NumberOfQuestions)}%)"; }
14 | }
15 |
16 | public ReviewPageViewModel (Game game)
17 | {
18 | this.game = game;
19 | QuestionViewModels = new List();
20 |
21 | for (int i = 0; i < game.NumberOfQuestions; i++)
22 | {
23 | QuestionViewModels.Add(new QuizQuestionViewModel(game.Questions[i], game.Responses[i]));
24 | }
25 | }
26 | }
27 | }
--------------------------------------------------------------------------------
/Radio/Radio/Radio/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/Radio/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/Radio/background.jpg
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
20 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/MainActivity.cs:
--------------------------------------------------------------------------------
1 | using System;
2 |
3 | using Android.App;
4 | using Android.Content.PM;
5 | using Android.Runtime;
6 | using Android.Views;
7 | using Android.Widget;
8 | using Android.OS;
9 |
10 | namespace SayHelloXF.Droid
11 | {
12 | [Activity(Label = "SayHelloXF", Icon = "@drawable/icon", Theme = "@style/MainTheme", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
13 | public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsAppCompatActivity
14 | {
15 | protected override void OnCreate(Bundle bundle)
16 | {
17 | TabLayoutResource = Resource.Layout.Tabbar;
18 | ToolbarResource = Resource.Layout.Toolbar;
19 |
20 | base.OnCreate(bundle);
21 |
22 | App.TextToSpeech = new TextToSpeechService();
23 | global::Xamarin.Forms.Forms.Init(this, bundle);
24 | LoadApplication(new App());
25 | }
26 | }
27 | }
28 |
29 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable-hdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable-hdpi/icon.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable-xhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable-xhdpi/icon.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable-xxhdpi/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable-xxhdpi/icon.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable/icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/drawable/icon.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/layout/Tabbar.axml:
--------------------------------------------------------------------------------
1 |
2 |
12 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/Resources/layout/Toolbar.axml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.Android/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-100.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-125.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-150.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/LockScreenLogo.scale-400.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-100.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-125.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-150.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/SplashScreen.scale-400.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-100.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-125.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-150.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square150x150Logo.scale-400.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-100.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-125.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-150.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.scale-400.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-16_altform-unplated.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-256_altform-unplated.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-32_altform-unplated.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Square44x44Logo.targetsize-48_altform-unplated.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-100.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-100.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-125.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-125.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-150.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-150.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-400.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Assets/Wide310x150Logo.scale-400.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.IO;
4 | using System.Linq;
5 | using System.Runtime.InteropServices.WindowsRuntime;
6 | using Windows.Foundation;
7 | using Windows.Foundation.Collections;
8 | using Windows.UI.Xaml;
9 | using Windows.UI.Xaml.Controls;
10 | using Windows.UI.Xaml.Controls.Primitives;
11 | using Windows.UI.Xaml.Data;
12 | using Windows.UI.Xaml.Input;
13 | using Windows.UI.Xaml.Media;
14 | using Windows.UI.Xaml.Navigation;
15 |
16 | namespace SayHelloXF.UWP
17 | {
18 | public sealed partial class MainPage
19 | {
20 | public MainPage()
21 | {
22 | this.InitializeComponent();
23 | SayHelloXF.App.TextToSpeech = new TextToSpeechService();
24 | LoadApplication(new SayHelloXF.App());
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("SayHelloXF.UWP")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("SayHelloXF.UWP")]
13 | [assembly: AssemblyCopyright("Copyright © 2015")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/TextToSpeechService.Win.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics;
3 | using Windows.Media.SpeechSynthesis;
4 | using Windows.UI.Xaml.Controls;
5 |
6 | namespace SayHelloXF
7 | {
8 | public class TextToSpeechService : ITextToSpeech
9 | {
10 | public async void Speak(string text)
11 | {
12 | var mediaPronunciation = new MediaElement();
13 | try
14 | {
15 | using (var speech = new SpeechSynthesizer())
16 | {
17 | speech.Voice = SpeechSynthesizer.DefaultVoice;
18 | var voiceStream = await speech.SynthesizeTextToStreamAsync(text);
19 | mediaPronunciation.SetSource(voiceStream, voiceStream.ContentType);
20 | mediaPronunciation.Play();
21 | }
22 | }
23 | catch (Exception ex)
24 | {
25 | Debug.WriteLine(ex.ToString());
26 | }
27 | }
28 | }
29 | }
30 |
31 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.UWP/project.json:
--------------------------------------------------------------------------------
1 | {
2 | "dependencies": {
3 | "Microsoft.NETCore.UniversalWindowsPlatform": "5.2.2",
4 | "Xamarin.Forms": "2.3.4.224"
5 | },
6 | "frameworks": {
7 | "uap10.0": {}
8 | },
9 | "runtimes": {
10 | "win10-arm": {},
11 | "win10-arm-aot": {},
12 | "win10-x86": {},
13 | "win10-x86-aot": {},
14 | "win10-x64": {},
15 | "win10-x64-aot": {}
16 | }
17 | }
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Entitlements.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Main.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 |
5 | using Foundation;
6 | using UIKit;
7 |
8 | namespace SayHelloXF.iOS
9 | {
10 | public class Application
11 | {
12 | // This is the main entry point of the application.
13 | static void Main(string[] args)
14 | {
15 | // if you want to use a different Application Delegate class from "AppDelegate"
16 | // you can specify it here.
17 | UIApplication.Main(args, null, "AppDelegate");
18 | }
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default-568h@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default-568h@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default-Portrait.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default-Portrait.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default-Portrait@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default-Portrait@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Default@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-60@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-60@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-60@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-60@3x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-76.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-76.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-76@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-76@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small-40.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small-40.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small-40@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small-40@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small-40@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small-40@3x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small@2x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small@3x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/Resources/Icon-Small@3x.png
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/TextToSpeechService.iOS.cs:
--------------------------------------------------------------------------------
1 | using AVFoundation;
2 |
3 | namespace SayHelloXF
4 | {
5 | public class TextToSpeechService : ITextToSpeech
6 | {
7 | public void Speak(string text)
8 | {
9 | var speechSynthesizer = new AVSpeechSynthesizer();
10 | speechSynthesizer.SpeakUtterance(new AVSpeechUtterance(text) {
11 | Rate = AVSpeechUtterance.DefaultSpeechRate,
12 | Voice = AVSpeechSynthesisVoice.FromLanguage ("en-US"),
13 | Volume = .5f,
14 | PitchMultiplier = 1.0f
15 | });
16 | }
17 | }
18 | }
19 |
20 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/iTunesArtwork:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/iTunesArtwork
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/iTunesArtwork@2x:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF.iOS/iTunesArtwork@2x
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF.iOS/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/App.xaml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/App.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 |
6 | using Xamarin.Forms;
7 |
8 | namespace SayHelloXF
9 | {
10 | public partial class App : Application
11 | {
12 | public static ITextToSpeech TextToSpeech;
13 |
14 | public App()
15 | {
16 | InitializeComponent();
17 |
18 | MainPage = new SayHelloXF.MainPage();
19 | }
20 |
21 | protected override void OnStart()
22 | {
23 | // Handle when your app starts
24 | }
25 |
26 | protected override void OnSleep()
27 | {
28 | // Handle when your app sleeps
29 | }
30 |
31 | protected override void OnResume()
32 | {
33 | // Handle when your app resumes
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/ITextToSpeech.cs:
--------------------------------------------------------------------------------
1 | namespace SayHelloXF
2 | {
3 | public interface ITextToSpeech
4 | {
5 | void Speak(string text);
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using System.Linq;
4 | using System.Text;
5 | using System.Threading.Tasks;
6 | using Xamarin.Forms;
7 |
8 | namespace SayHelloXF
9 | {
10 | public partial class MainPage : ContentPage
11 | {
12 | public MainPage()
13 | {
14 | InitializeComponent();
15 |
16 | imageIcon.Source = ImageSource.FromResource("SayHelloXF.sayhello.png");
17 |
18 | buttonSpeak.Clicked += ButtonSpeakClicked;
19 |
20 | SizeChanged += MainPageSizeChanged;
21 | }
22 |
23 | private void MainPageSizeChanged(object sender, EventArgs e)
24 | {
25 | if (this.Width > this.Height)
26 | stackMain.Orientation = StackOrientation.Horizontal;
27 | else
28 | stackMain.Orientation = StackOrientation.Vertical;
29 | }
30 |
31 | void ButtonSpeakClicked(object sender, EventArgs e)
32 | {
33 | App.TextToSpeech?.Speak(entryMessage.Text);
34 | }
35 | }
36 | }
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Resources;
2 | using System.Reflection;
3 | using System.Runtime.CompilerServices;
4 | using System.Runtime.InteropServices;
5 |
6 | // General Information about an assembly is controlled through the following
7 | // set of attributes. Change these attribute values to modify the information
8 | // associated with an assembly.
9 | [assembly: AssemblyTitle("SayHelloXF")]
10 | [assembly: AssemblyDescription("")]
11 | [assembly: AssemblyConfiguration("")]
12 | [assembly: AssemblyCompany("")]
13 | [assembly: AssemblyProduct("SayHelloXF")]
14 | [assembly: AssemblyCopyright("Copyright © 2014")]
15 | [assembly: AssemblyTrademark("")]
16 | [assembly: AssemblyCulture("")]
17 | [assembly: NeutralResourcesLanguage("en")]
18 |
19 | // Version information for an assembly consists of the following four values:
20 | //
21 | // Major Version
22 | // Minor Version
23 | // Build Number
24 | // Revision
25 | //
26 | // You can specify all the values or you can default the Build and Revision Numbers
27 | // by using the '*' as shown below:
28 | // [assembly: AssemblyVersion("1.0.*")]
29 | [assembly: AssemblyVersion("1.0.0.0")]
30 | [assembly: AssemblyFileVersion("1.0.0.0")]
31 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/packages.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
--------------------------------------------------------------------------------
/SayHelloXF/SayHelloXF/SayHelloXF/sayhello.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/SayHelloXF/SayHelloXF/SayHelloXF/sayhello.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff.XF/HistoricalPage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff.XF/HistoricalPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Collections.Generic;
3 | using Xamarin.Forms;
4 |
5 | namespace TheRightDrawerStuff.XF
6 | {
7 | public partial class HistoricalPage : ContentPage
8 | {
9 | public HistoricalPage()
10 | {
11 | InitializeComponent();
12 | }
13 | }
14 | }
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff.XF/RealTimePage.xaml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff.XF/RealTimePage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Threading.Tasks;
3 | using Xamarin.Forms;
4 |
5 | namespace TheRightDrawerStuff.XF
6 | {
7 | public partial class RealTimePage : ContentPage
8 | {
9 | public RealTimePage()
10 | {
11 | InitializeComponent();
12 |
13 | Device.StartTimer(TimeSpan.FromSeconds(2), () =>
14 | {
15 | Animate();
16 | return true;
17 | });
18 | }
19 |
20 | private async Task Animate()
21 | {
22 | await theBox.RotateXTo(45, 750);
23 | await theBox.RotateXTo(-45, 750);
24 | await theBox.RotateTo(45, 750);
25 | await theBox.RotateTo(-45, 750);
26 | }
27 | }
28 | }
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff.XF/TheRightDrawerStuff.XF.csproj:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | netstandard1.6
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 | MSBuild:UpdateDesignTimeXaml
13 |
14 |
15 | MSBuild:UpdateDesignTimeXaml
16 |
17 |
18 |
19 |
20 | RealTimePage.xaml
21 |
22 |
23 | HistoricalPage.xaml
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with your package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
20 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Properties/AndroidManifest.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using Android.App;
4 |
5 | // Information about this assembly is defined by the following attributes.
6 | // Change them to the values specific to your project.
7 |
8 | [assembly: AssemblyTitle("TheRightDrawerStuff")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("")]
13 | [assembly: AssemblyCopyright("${AuthorCopyright}")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // The assembly version has the format "{Major}.{Minor}.{Build}.{Revision}".
18 | // The form "{Major}.{Minor}.*" will automatically update the build and revision,
19 | // and "{Major}.{Minor}.{Build}.*" will update just the revision.
20 |
21 | [assembly: AssemblyVersion("1.0.0")]
22 |
23 | // The following attributes are used to specify the signing key for the assembly,
24 | // if desired. See the Mono documentation for more information about signing.
25 |
26 | //[assembly: AssemblyDelaySign(false)]
27 | //[assembly: AssemblyKeyFile("")]
28 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-hdpi/ic_timeline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-hdpi/ic_timeline_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-hdpi/ic_update_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-hdpi/ic_update_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-mdpi/ic_timeline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-mdpi/ic_timeline_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-mdpi/ic_update_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-mdpi/ic_update_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xhdpi/ic_timeline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xhdpi/ic_timeline_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xhdpi/ic_update_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xhdpi/ic_update_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxhdpi/ic_timeline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxhdpi/ic_timeline_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxhdpi/ic_update_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxhdpi/ic_update_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxxhdpi/ic_timeline_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxxhdpi/ic_timeline_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxxhdpi/ic_update_white_24dp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/drawable-xxxhdpi/ic_update_white_24dp.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/menu/navigation_menu.xml:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-hdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-hdpi/Icon.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-mdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-mdpi/Icon.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-xhdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-xhdpi/Icon.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-xxhdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-xxhdpi/Icon.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-xxxhdpi/Icon.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/TheRightDrawerStuff/TheRightDrawerStuff/Resources/mipmap-xxxhdpi/Icon.png
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/Resources/values/Strings.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 | Hello World, Click Me!
4 | TheRightDrawerStuff
5 |
6 |
--------------------------------------------------------------------------------
/TheRightDrawerStuff/TheRightDrawerStuff/nuget_info.txt:
--------------------------------------------------------------------------------
1 | The Xamarin.Forms 3.0 preview of Embedding is published to a custom NuGet feed. To get it:
2 | Add a new source to your NuGet Manager: https://www.myget.org/F/xamarinforms-dev/api/v3/index.json
3 | Check Pre-Release
4 | Select and install the package with the feature name “Embedding” – 3.0.0.100-embeddingpreview
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTBlink/BlinkTest/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTBlink/BlinkTest/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("BlinkTest")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("BlinkTest")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/App.xaml:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/LockScreenLogo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/LockScreenLogo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/SplashScreen.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/SplashScreen.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Square150x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Square150x150Logo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Square44x44Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Square44x44Logo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Square44x44Logo.targetsize-24_altform-unplated.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Square44x44Logo.targetsize-24_altform-unplated.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/StoreLogo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/StoreLogo.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Wide310x150Logo.scale-200.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/adrianstevens/NETConf2017/d3402e7608ad0a9279be46bb0ee4cfe93189815a/UWPIoT Samples/UWPIoTMPU6050/Accel/Assets/Wide310x150Logo.scale-200.png
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/MainPage.xaml:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/MainPage.xaml.cs:
--------------------------------------------------------------------------------
1 | using System;
2 | using System.Diagnostics;
3 | using System.Threading.Tasks;
4 | using Windows.UI.Xaml.Controls;
5 |
6 | // The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409
7 |
8 | namespace Accel
9 | {
10 | ///
11 | /// An empty page that can be used on its own or navigated to within a Frame.
12 | ///
13 | public sealed partial class MainPage : Page
14 | {
15 | public MainPage()
16 | {
17 | this.InitializeComponent();
18 |
19 | StartMPU();
20 | }
21 |
22 | async Task StartMPU()
23 | {
24 | var mpu = new MPU6050();
25 |
26 | mpu.SensorInterruptEvent += MpuSensorInterruptEvent;
27 |
28 | await mpu.Init();
29 | }
30 |
31 | void MpuSensorInterruptEvent(object sender, MpuSensorEventArgs e)
32 | {
33 | Debug.WriteLine(e.ToString());
34 | }
35 | }
36 | }
37 |
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/Properties/AssemblyInfo.cs:
--------------------------------------------------------------------------------
1 | using System.Reflection;
2 | using System.Runtime.CompilerServices;
3 | using System.Runtime.InteropServices;
4 |
5 | // General Information about an assembly is controlled through the following
6 | // set of attributes. Change these attribute values to modify the information
7 | // associated with an assembly.
8 | [assembly: AssemblyTitle("Accel")]
9 | [assembly: AssemblyDescription("")]
10 | [assembly: AssemblyConfiguration("")]
11 | [assembly: AssemblyCompany("")]
12 | [assembly: AssemblyProduct("Accel")]
13 | [assembly: AssemblyCopyright("Copyright © 2017")]
14 | [assembly: AssemblyTrademark("")]
15 | [assembly: AssemblyCulture("")]
16 |
17 | // Version information for an assembly consists of the following four values:
18 | //
19 | // Major Version
20 | // Minor Version
21 | // Build Number
22 | // Revision
23 | //
24 | // You can specify all the values or you can default the Build and Revision Numbers
25 | // by using the '*' as shown below:
26 | // [assembly: AssemblyVersion("1.0.*")]
27 | [assembly: AssemblyVersion("1.0.0.0")]
28 | [assembly: AssemblyFileVersion("1.0.0.0")]
29 | [assembly: ComVisible(false)]
--------------------------------------------------------------------------------
/UWPIoT Samples/UWPIoTMPU6050/Accel/SensorValue.cs:
--------------------------------------------------------------------------------
1 | namespace Accel
2 | {
3 | public class MpuSensorValue
4 | {
5 | public float AccelerationX { get; set; }
6 | public float AccelerationY { get; set; }
7 | public float AccelerationZ { get; set; }
8 | public float GyroX { get; set; }
9 | public float GyroY { get; set; }
10 | public float GyroZ { get; set; }
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/XamDraw/XFDraw/XFDraw.Droid/Assets/AboutAssets.txt:
--------------------------------------------------------------------------------
1 | Any raw assets you want to be deployed with your application can be placed in
2 | this directory (and child directories) and given a Build Action of "AndroidAsset".
3 |
4 | These files will be deployed with you package and will be accessible using Android's
5 | AssetManager, like this:
6 |
7 | public class ReadAsset : Activity
8 | {
9 | protected override void OnCreate (Bundle bundle)
10 | {
11 | base.OnCreate (bundle);
12 |
13 | InputStream input = Assets.Open ("my_asset.txt");
14 | }
15 | }
16 |
17 | Additionally, some Android functions will automatically load asset files:
18 |
19 | Typeface tf = Typeface.CreateFromAsset (Context.Assets, "fonts/samplefont.ttf");
20 |
--------------------------------------------------------------------------------
/XamDraw/XFDraw/XFDraw.Droid/HyperlinkLabelRenderer.Droid.cs:
--------------------------------------------------------------------------------
1 | using Android.Text.Util;
2 | using Android.Widget;
3 | using XFDraw;
4 | using Xamarin.Forms;
5 | using Xamarin.Forms.Platform.Android;
6 | using XFDraw.Droid;
7 |
8 | [assembly: ExportRenderer(typeof(HyperlinkLabel), typeof(HyperlinkLabelRenderer))]
9 | namespace XFDraw.Droid
10 | {
11 | class HyperlinkLabelRenderer : LabelRenderer
12 | {
13 | protected override void OnElementChanged(ElementChangedEventArgs