160428 build2016 리뷰 3편
160428 build2016 리뷰 3편
황현동 노트북
.net
build
uwp
iotcore
- 160428 build2016 리뷰 3편
Assigned Access 개요
- Windows 10 Enterprise
- 특정 사용자에 한개의 앱의 사용권한만 줄수 있는 시나리오 가능
- ex) Kiosk single type device
- Windows 10 Mobile Enterprise
- 특정 사용자에게 기능과 설정의 요소별로 선택하여 세부적으로 권한부여 가능
- ex) Kiosk single type device, 기업용 lockdown device, 기업용 shared device
개발 주의사항
- GetCurrentView().Dispatcher 를 통해 UI 스레드 접근함.
- 사용자 전환버튼 필요
- Ctrl + Alt + Del 없이 사용자 전환할 수 있어야 함.
- 매니페스트에 windows.aboveLockScreen 를 추가
- MainView.Dispatcher 사용하지 말것
Assigned access Windows 10 Mobile
- 기업용 앱 만들기에 특화됨
- role이 리스트 형식으로 관리됨
- application, settings
- action center, quick action
- start screen layout
- H/W buttons lockdown/remapping
- private windows store 배포 가능
Enterprise role login experience
- 사전요구사항
- Mobile Extension SDK 설치 필요
- enterpriseDeviceLockdown capability 필요
- Windows.Embedded.DeviceLockdown APIs
- DeviceLockdownProfile
- ApplyLockdownProfileAsync
- GetCurrentLockdownProfile
- GetLockdownProfileInformation
- GetSupportedLockdownProfiles
- DeviceLockdownProfileInformation
- Name
- DeviceLockdownProfile
- 로그인 관련 코드
protected override void OnNavigatedTo(NavigationEventArgs e){
try
{
var currentRole = DeviceLockdownProfile.GetCurrentLockdownProfile();
if (currentRole == Guid.Empty)
{
SignInStatus.Text = "You are not signed in.";
canSignOut = false;
}
else
{
var currentProfile = DeviceLockdownProfile.GetLockdownProfileInformation(currentRole);
SignInStatus.Text = "You are signed in as " + currentProfile.Name;
canSignOut = true;
}
SignOutButton.IsEnabled = canSignOut;
LoadApplicationUsers();
}
catch ()
{
rootPage.NotifyUser("Assigned Access is not configured on this device.", NotifyType.ErrorMessage);
}
}
private void LoadApplicationUsers(){
// Add the available roles.
foreach (var roleId in DeviceLockdownProfile.GetSupportedLockdownProfiles())
{
DeviceLockdownProfileInformation profile = DeviceLockdownProfile.GetLockdownProfileInformation(roleId);
UserRoles.Items.Add(new ListBoxItem() { Content = profile.Name, Tag = roleId });
}
if (UserRoles.Items.Count > 0)
{
UserRoles.SelectedIndex = 0;
SignInButton.IsEnabled = true;
}
}
private async Task SignInAsync(){
ListBoxItem selectedItem = (ListBoxItem)UserRoles.SelectedItem;
var selectedName = (string)selectedItem.Content;
var selectedRole = (Guid)selectedItem.Tag;
await DeviceLockdownProfile.ApplyLockdownProfileAsync(selectedRole);
}
private async Task SignOutAsync(){
await DeviceLockdownProfile.ApplyLockdownProfileAsync(Guid.Empty);
}
- 매니페스트 코드
<?xml version="1.0" encoding="utf-8"?>
<Package ...>
...
<Dependencies>
<TargetDeviceFamily Name="Windows.Mobile" MinVersion="10.0.10240.0" MaxVersionTested="10.0.10586.0" />
</Dependencies>
...
<Capabilities>
<rescap:Capability Name="enterpriseDeviceLockdown" />
</Capabilities>
</Package>
참고자료
- W10 Enterprise, Mobile을 위한 기업용 lockdown 방법
- kiosk모드로 셋팅하는 방법
- W10에서 특정앱으로 lockdown하는 방법
- 기업용 Wifi 기본셋팅
- lockdown xml 사용방법
- W10 디바이스 리셋
- Windows.Embedded.DeviceLockdown namespace
- DeviceLockdown기능을 AD와 함께 사용하는 예제
Windows SDK for Facebook
- http://microsoft.github.io/winsdkfb/sample/
- https://github.com/Microsoft/winsdkfb
- 페이스북 UWP SDK 사용 가이드
- 페북 로그인, 프로필불러오기, 사진불러오기, 로긴된 친구리스트 불러오기 가능
Introducing the File Picker for OneDrive and OneDrive for Business
- https://github.com/rgregg/onedrive-markdown-editor-sample
- javascript 예제
- onedrive 에 파일 읽기/쓰기, 로그인 다이얼로그
todo doc
Microsoft Graph Overview
https://channel9.msdn.com/Events/Build/2016/P569
https://channel9.msdn.com/Events/Build/2016/P569
Introduction to Azure Table Storage
https://channel9.msdn.com/Events/Build/2016/P582
https://channel9.msdn.com/Events/Build/2016/P582
Universal App Model Overview: What's New in the UWP App Model
https://channel9.msdn.com/Events/Build/2016/B809
https://channel9.msdn.com/Events/Build/2016/B809
What's New in Windows UI/UX for Universal Windows Platform (UWP) Apps
https://channel9.msdn.com/Events/Build/2016/B853
https://channel9.msdn.com/Events/Build/2016/B853
Linux Command Line on Windows
https://channel9.msdn.com/Events/Build/2016/C906
https://channel9.msdn.com/Events/Build/2016/C906
SQL Database Technologies for Developers
https://channel9.msdn.com/Events/Build/2016/B814
https://channel9.msdn.com/Events/Build/2016/B814
Using HockeyApp with Xamarin Apps
https://channel9.msdn.com/Events/Build/2016/T668-R1
https://channel9.msdn.com/Events/Build/2016/T668-R1
Deep Dive Into IOT Starter Kit App: Architecture and Getting Started on Building Your IOT Solution
https://channel9.msdn.com/Events/Build/2016/T673-R1
https://channel9.msdn.com/Events/Build/2016/T673-R1
Pen and Ink: Inking at the Speed of Thought
https://channel9.msdn.com/Events/Build/2016/B865
https://channel9.msdn.com/Events/Build/2016/B865
Cross-Platform Mobile with Xamarin
https://channel9.msdn.com/Events/Build/2016/B836
https://channel9.msdn.com/Events/Build/2016/B836
Native iOS, Android, & Windows Apps from C# and XAML with Xamarin.Forms
https://channel9.msdn.com/Events/Build/2016/T667-R1
https://channel9.msdn.com/Events/Build/2016/T667-R1
.NET Overview
https://channel9.msdn.com/Events/Build/2016/B891
https://channel9.msdn.com/Events/Build/2016/B891
The Future of C#
https://channel9.msdn.com/Events/Build/2016/B889
https://channel9.msdn.com/Events/Build/2016/B889
Become a Visual Studio 2015 Power User
https://channel9.msdn.com/Events/Build/2016/B819
https://channel9.msdn.com/Events/Build/2016/B819
Developer's Guide to Connecting Devices to Azure IoT
https://channel9.msdn.com/Events/Build/2016/B844
https://channel9.msdn.com/Events/Build/2016/B844
Entity Framework Core 1.0
https://channel9.msdn.com/Events/Build/2016/B852
https://channel9.msdn.com/Events/Build/2016/B852
Windows 10 IoT Core: From Maker to Market
https://channel9.msdn.com/Events/Build/2016/B860
https://channel9.msdn.com/Events/Build/2016/B860
ASP.NET Core Deep Dive into MVC
https://channel9.msdn.com/Events/Build/2016/B812
https://channel9.msdn.com/Events/Build/2016/B812
Building Network-Aware Applications
https://channel9.msdn.com/Events/Build/2016/B828
https://channel9.msdn.com/Events/Build/2016/B828
Deploying ASP.NET Core Applications
https://channel9.msdn.com/Events/Build/2016/B811
https://channel9.msdn.com/Events/Build/2016/B811
todo video
Runtime Editing Tools for XAML
https://channel9.msdn.com/Events/Build/2016/P465
https://channel9.msdn.com/Events/Build/2016/P465
Azure Data Lake Deep Dive
https://channel9.msdn.com/Events/Build/2016/P413
https://channel9.msdn.com/Events/Build/2016/P413
HockeyApp for UWP Apps: Beta Distribution, Crash Reporting and User Metrics
https://channel9.msdn.com/Events/Build/2016/P463
https://channel9.msdn.com/Events/Build/2016/P463
Modeling Data for NoSQL Document Databases
https://channel9.msdn.com/Events/Build/2016/P468
https://channel9.msdn.com/Events/Build/2016/P468
Selecting the Right VM Size
https://channel9.msdn.com/Events/Build/2016/P523
https://channel9.msdn.com/Events/Build/2016/P523
이 글은 Evernote에서 작성되었습니다. Evernote는 하나의 업무 공간입니다. Evernote를 다운로드하세요. |
댓글
댓글 쓰기