Mobile Enterprise Applications
FUIT or ITFTW?
Presenters
Jason Conger
http://www.JasonConger.com/
@JasonConger
Warren Simondson
http://www.ctrl-alt-del.com.au/
@Caditc
How do I mobilize and deliver enterprise
apps and data to empower productive
mobile employees?
Enterprise Mobile Application Market
Virtualization
“Use existing
applications as-is”
Mobile Enterprise
App Platform
“DIY ...
1) Non-Coding
2) Coding
Non-Coding Methods
Capriza
Source: BrianMadden.com
Mobility Pack
Client Device
Receiver
Receiver
Core
MRVC
Virtual Channel
XenApp Server
New
Modified
3rd Party Code
CtxSvcHost.exe
User Se...
Citrix Mobility Pack
DEMO
Citrix Mobility Pack
• Extension to XenApp/XenDesktop
• Touch friendly enhancements
• Automatic keyboard popup
• Native UI...
DEMO
There are number of features that get enabled when this
keyword is used.
The session window is sized to match the mobile ...
Coding Methods
Platform
Development
Framework
Language IDE
iOS iOS SDK Objective-C Cocoa, Xcode
Android Android SDK, Android NDK Java, C/...
Getting Closer To The Device Without Native Code
DEMO
Mobile Application SDK
Enter the Citrix Mobile Application SDK
Mobile Application SDK
A rich toolkit for mobilising Windows apps on XenApp 6.5
• Over 50 mobility focused APIs
ᵒTouch-fri...
Responsive Design
Mobile View(s)
Desktop View
DEMO
Ctrl-Alt-DelIT Consultancy
www.ctrl-alt-del.com.au
Ctrl-Alt-DelIT Consultancy
www.ctrl-alt-del.com.au
Microsoft RDS options??
Is there a Mobility Pack for Microsoft RDS?
Short answer…No.
Can it be done?
Well, sort of…but how...
RDP Client that can use the mobile Camera/AV.
YXPlayer iRDP - http://www.mobilesoft.kr/irdp.html
iRDP (AV) is Remote Deskt...
Detection of a Mobile Device
How to detect if a mobile device is accessing a Server Based Application?
The following is an...
CODE VIEW
CMP 2.0 Emulator
Debugging
Jeff Muir
Debugging XAMA SDK Applications
Andrew Borzycki
Debugging applications remotely with Visual Studio
Further Resources
Warren Simondson (Ctrl-Alt-Del)
http://www.ctrl-alt-del.com.au/src/CAD_UTILS_APPSRC.zip
Jason Conger’s B...
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Mobile Enterprise Applications
Upcoming SlideShare
Loading in …5
×

Mobile Enterprise Applications

432 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
432
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
6
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Traditional applications and websites were meant to be run on a full desktops. These desktops are mainly corporate owned. We know the capabilities and types of these devices. We also know how to deliver applications to these desktops via AD, System Center, XenApp, RDP, App-V, etc.
  • BYOD breaks the model.These devices are not mainly corporate owned. We often do not know the capabilities and types of these devices. There are limited capabilities to deliver applications to these devices.
  • We are going to talk about 2 strategies to mobilize enterprise applications.Mobilize existing applications (no coding)Create (or modify) application code tailored to mobile devices
  • First, we’ll look at non-coding methods
  • There are many ways to remote a desktop to a mobile device. Unfortunately, remoting the desktop can be clunky. Vendors have made some progress by making keyboard pop-up and supporting pan-and-zoom, but the user experience still isn’t the greatest.
  • When your finger is your primary input device, application interfaces can be too small. Making things bigger via registry can help in this aspect. Some sample registry modifications are attached to the slide.
  • Laying out applications to mimic mobile devices is another strategy sometime used. This is a Microsoft Excel spreadsheet optimized for an iPhone.
  • Using your mobile device as a viewer.
  • First, we’ll look at non-coding methods
  • Technologies like PhoneGap and HTML5 can be used to get closer to the device, but there are still limitations.PhoneGap gives you access to a lot of the phone’s features, but PhoneGap still isn’t a build-once deploy-anywhere reality. Also, you are remote to the data.HTML5 can give you location, but lot of the device’s features are still inaccessible.
  • The Citrix Mobile Application SDK is going to get you as close to the device as possible without a multitude of native code.
  • Mobile Enterprise Applications

    1. 1. Mobile Enterprise Applications FUIT or ITFTW?
    2. 2. Presenters Jason Conger http://www.JasonConger.com/ @JasonConger Warren Simondson http://www.ctrl-alt-del.com.au/ @Caditc
    3. 3. How do I mobilize and deliver enterprise apps and data to empower productive mobile employees?
    4. 4. Enterprise Mobile Application Market Virtualization “Use existing applications as-is” Mobile Enterprise App Platform “DIY apps – new build” User Experience ISV “App store and third party apps” Convergence Zone “Make your existing apps mobile” VB6Migration $1.0B* (2012-2018) Application Development Effort Source: *Gartner
    5. 5. 1) Non-Coding 2) Coding
    6. 6. Non-Coding Methods
    7. 7. Capriza Source: BrianMadden.com
    8. 8. Mobility Pack
    9. 9. Client Device Receiver Receiver Core MRVC Virtual Channel XenApp Server New Modified 3rd Party Code CtxSvcHost.exe User Session Mobile VC Client COM Layer Native App Native Library .NET Assembly ID Dispatch Managed App Automation App Location and Sensor VC Client Location and Sensor Virtual Channel CtxSvcHost.exe HDX MRVC Virtual Channel Service Location Virtual Channel Service XenApp 6.5 Mobility Pack Architecture
    10. 10. Citrix Mobility Pack
    11. 11. DEMO
    12. 12. Citrix Mobility Pack • Extension to XenApp/XenDesktop • Touch friendly enhancements • Automatic keyboard popup • Native UI widgets • Query device attributes
    13. 13. DEMO
    14. 14. There are number of features that get enabled when this keyword is used. The session window is sized to match the mobile device. Application is set into the "DRAG" scroll mode automatically On Android Receiver, the blue circle animation is disabled On Android Receiver, some of the settings are hidden on the Settings menu option and gestures guide Disables mobile device zoom in and out Rotation or keyboard popup automatically resizes session on server keywords:mobile
    15. 15. Coding Methods
    16. 16. Platform Development Framework Language IDE iOS iOS SDK Objective-C Cocoa, Xcode Android Android SDK, Android NDK Java, C/C++ Eclipse, NetBeans, IntelliJ IDEA WinPhone 7 Windows .NET & Silverlight SDK C# and others Visual Studio Windows 8 Metro Style Apps WinRT C++/ C# / VB.NET / Javascript Visual Studio Blackberry Java ME + Optional Packages + API extensions Java Eclipse ChromeOS Webkit HTML /CSS / Javascript Many
    17. 17. Getting Closer To The Device Without Native Code
    18. 18. DEMO
    19. 19. Mobile Application SDK Enter the Citrix Mobile Application SDK
    20. 20. Mobile Application SDK A rich toolkit for mobilising Windows apps on XenApp 6.5 • Over 50 mobility focused APIs ᵒTouch-friendly interfaces ᵒAuto device detection ᵒAccess mobile device function ᵒFeature matrix http://www.citrix.com/mobilitysdk/docs/receivermatrix.ht ml
    21. 21. Responsive Design Mobile View(s) Desktop View
    22. 22. DEMO
    23. 23. Ctrl-Alt-DelIT Consultancy www.ctrl-alt-del.com.au
    24. 24. Ctrl-Alt-DelIT Consultancy www.ctrl-alt-del.com.au
    25. 25. Microsoft RDS options?? Is there a Mobility Pack for Microsoft RDS? Short answer…No. Can it be done? Well, sort of…but how? Detect the remote device type and run an overlay application that simply hides the Task Bar and other components, and displays a user friendly interface Remember progman.exe?
    26. 26. RDP Client that can use the mobile Camera/AV. YXPlayer iRDP - http://www.mobilesoft.kr/irdp.html iRDP (AV) is Remote Desktop Tool to access a Windows PC and Mac . Both RDP and VNC are Supported! Audio Play/Record, Webcam Support, Fast Video Playback, Full PC keyboard, Turn your iPad into a Real PC! (RDP and AV version only) . ★★★ Features NOT Available in Other Similar App: ✔ Specific Technology to Achieve Local Audio/Video Decoding, Significantly Reducing Network Load and Greatly Speed Up the Playback Speed of the Media File. ✔ Innovative Support for Local Camera Directed to the Server. Makes Many Video Applications Become Possible! ✔ Full PC Keyboard, Fast Text Input Speed ! ★★★ True Support for Flash Site using PC Side Browsers (using IE, Chrome , Firefox ...) Features Configurable Screen Size.8/16 bit Color Depth. Full PC Keyboard. GamePad that You can Customize. Audio Playback and Recording. Fast Local Video Playback. Webcam Support for iPad2/iPhone4 (Cam driver needed).
    27. 27. Detection of a Mobile Device How to detect if a mobile device is accessing a Server Based Application? The following is an example command script: usrlogon.cmd ------------ @ECHO OFF :start CTXCliOS.exe IF ERRORLEVEL 0 goto noOS IF ERRORLEVEL 1 goto winOS IF ERRORLEVEL 82 goto macOS IF ERRORLEVEL 83 goto iOS IF ERRORLEVEL 84 goto androidOS goto noOS :winOS rem Client OS successfully matched to windows echo Client OS is Windows. echo put other commands here for this client. goto end :macOS rem Client OS successfully matched to mac echo Client OS is Mac. echo put other commands here for this client. goto end :iOS rem Client OS successfully matched to iOS echo Client OS is iOS. echo put other commands here for this client. goto end :androidOS rem Client OS successfully matched to android echo Client OS is Android. echo put other commands here for this client. goto end :noOS echo NO CLient OS match. :end CTXCliOS is a command-line tool for Citrix Servers to check the type of Operating System that is being run from the Client Machine that is running the Citrix Receiver or Plugin. Usage: CTXCliOS [/?] /? - Help information The ERRORLEVEL return code shows the Client OS Type. The following are known OS types and their ERRORLEVEL return code Client OS return code (decimal) ============= ===================== Windows 1 EPOC 10 OS/2 11 DOS32 14 Linux 81 Mac 82 iOS 83 Android 84 Blackberry 85 PlayBook 86 Windows Mobile 87 HTML5 257 Java 261 WinCE - HP 7945 WinCE - Wyse 32940 ThinOS - Wyse 32993
    28. 28. CODE VIEW
    29. 29. CMP 2.0 Emulator
    30. 30. Debugging Jeff Muir Debugging XAMA SDK Applications Andrew Borzycki Debugging applications remotely with Visual Studio
    31. 31. Further Resources Warren Simondson (Ctrl-Alt-Del) http://www.ctrl-alt-del.com.au/src/CAD_UTILS_APPSRC.zip Jason Conger’s Blog http://www.jasonconger.com/post/tag/mobility Jeff Muir’s Blog http://citrixblogger.org PhoneGap http://www.phonegap.com/ YXPlayer iRDP

    ×