Design consideration for tablet pc in asp.net - asp.net

I am developing a web applicaiton which will generally be accessed through browser.
My client says that he will also access the web application from a tablet pc. So do I need to consider something especially from GUI point of view for tablet pc?

2 major things to consider:
Smaller screen size
Lack of the ability to hover

If the web app targets both PC users and tablets you should consider using CSS3 media queries to serve different css files based on the browser resolution.
LessFramework can help a lot with this.
I saw a nice but brief intro to media queries here

Related

Is it secure to make adobe flash website?

I am making a website using adobe flash and action script. but I heard a lot about flash vulnerabilities.
Is it secure to make a website using adobe flash, comparably to ordinary tools like wordpress and joomla?
In theory Flash is secure, but I would recommend not using it.
The reasons Flash has many vulnerabilities is not because of the websites using it, but the clients not updating their Flash clients. Your site depends on the client for security which is almost always a bad idea.
There also is a second reason not to use Flash and that is compatibility. Flash won't work on iPhones, Android Phones, Windows Phones and it won't take long before all browsers will block it (Firefox already does that!).
And the third argument is that it just is not necessary to use Flash anymore. You can use HTML, CSS3 and maybe a bit of JavaScript to be able to do anything Flash once was unique in.
Flash make your page to load very slow.
If site is created only in flash? not only a part of it(like header logo and other) the user will wait while all flash will load and this take times and very expensive traffic if is used mobile device to connect PC to internet (usb 4G modem, or mobile built in modem ).

How can I test a mobile version of our website?

I have no up to date mobile phone personally, and we don't have any in our team to allow us to test mobile versions of our ASP.Net websites.
We have now been asked to provide a mobile version of our website (which is a fairly busy site) but I have no means to check the mobile pages.
Any suggestions? Are there emulators or would it better to have the real thing?
It's always better to have the real thing, but if that's not an option, I have used a plugin for FireFox called "User Agent Switcher"
Another route you could go is to get the Android SDK and load up an emulator. It runs a full version of android, so you could open the browser from there (You could also change screen size/device type) - a little more heavy than the first solution, but potentially another route worth exploring.
You can use simulators/emulators - Android, iPhone etc.
Well Apple provide an iOS emulator, which you can download in the developers section of Apple's own website.
Outside of that, the only other testing environment I'm aware of is Ripple, which is a plugin for Chrome, designed to emulate a range of mobile devices. You can find that at: http://ripple.tinyhippos.com/.
As others have answered there is a lot of different tools to do the testing and that is all fine to a certain extent, for daily testing by developers and testers.
But with 15 years of testing behind me I would never let the site go untested with a few different real devices if the site is an important service - usually this can be done with "staff" phones at no cost if the cost is the problem. I would more or less say; can your company live with publishing a site out there and there might be a risk it won't work on some mobile platforms?
DeviceAnywhere is the tool that we have used a lot. It provides you access to numerous mobile devices using which you can test both apps and websites. They have placed several physical devices which you can see and operate remotely.
It is always better to test on real devices instead of emulators. During development phase, emulators are helpful but for final delivery it is best to test on real phones. Mobile web browsers may or may not support HTML,CSS,JS completely and their individual implementation could be different.

Differences between Mobile & Desktop AIR

Ive tried asking on the blackberry forums with no luck... Maybe there are some Blackberry/Adobe experts here...
Im just about to start a project using Adobe AIR/flex for the Blackberry Playbook, I have a few questions:
If I develop an application for the playbook, will the same application be able to run on a desktop? If so will there be any differences?
What is the difference between the desktop and mobile libraries? Can I only access a subset of the SDK on the mobile device compared to the desktop?
Can I create a playbook application that can call methods to a JAVA back end, located on my server?
Thanks
Phil
What’s different about developing a
mobile application versus a web or
desktop application? While many
existing Flex concepts and patterns
carry over directly to mobile
development, developers will need to
take into account the differences in
interaction patterns, screen real
estate, and performance
characteristics of mobile devices
compared to desktop computers. As a
result, we recommend using the new
mobile features in Flex to craft UIs
specific to mobile devices, while
sharing underlying model and data
access code with your desktop or web
application. Additionally, we
recommend certain best practices when
developing mobile applications with
Flex, such as using ActionScript and
FXG rather than MXML for creating item
renderers and skins.
Taken from http://labs.adobe.com/technologies/flex/mobile/faq.html#differences
As per my usual qualifying statement: I haven't tried this. Since this is of some interest to me and I've got a bit of free time I'll give making a hero app and running it as a desktop app versus as a mobile app a shot and post back here once I have it working or find a wall.
The runtime: Adobe AIR 2.5 on mobile
devices The initial versions of the
mobile development features in "Hero"
and "Burrito" are targeted at creating
standalone installed applications
using the Adobe AIR runtime for mobile
devices. By focusing on AIR, Flex can
take full advantage of the integration
AIR provides with each mobile
platform, such as the ability to
handle hardware back and menu buttons
and to access local storage.
Running on AIR Finally, it's important
to realize that in addition to all the
mobile Flex components listed above,
you can also directly take advantage
of all the APIs that are available in
AIR on mobile devices—geolocation,
accelerometer, camera integration, and
so forth. While some of these features
are not exposed as Flex components,
they are easy to access directly using
ActionScript. For more information on
developing using the APIs provided by
AIR on mobile devices, see AIR mobile
docs.
http://www.adobe.com/devnet/flex/articles/mobile_development_hero_burrito.html
Basically it's looking like the answer to all the questions is positive.
Yes and likely yes. (as they re-iterate throughout anything I've found on the topic the controls in Hero were made specifically for touch, taking into consideration the fat finger vs the mouse pointer, my guess is it will render slightly differently on the desktop and it's best to actually develop the UIs separately, although the web-services/model can be combined into a shared library/project)
You should have access to everything provided to the desktop (plus info from GPS/accelerometer etc., but obviously wouldn't get those on desktop), but don't have nearly as good a processor so what will work on the desktop may not on a lower performance computing device, but for low resource consumption tasks this shouldn't be a worry.
Yes this is a core feature of Flex, I don't see how it would be possible to make a (useful) RIA without web services. For confirmation on this one look no further than Adobe TV: http://tv.adobe.com/watch/adc-presents/flex-mobile-part-1-beginning-a-mobile-application/ <-- that app is using a web service (doesn't really matter to Flex what the underlying server technology is so long as it can make HTTP requests against it, RemoteObject/AMFService should serve your purpose)
If I develop an application for the
playbook, will the same application be
able to run on a desktop? If so will
there be any differences?
Depends. the Air file for both desktop and Playbook is exactly the same, however for Playbook development, RIM has provided an Air library so that Flex developers can take advantage of the hardware further than just the normal Air capabilities. With that said, if your application is dependent on that extra library, it will not work on desktop.
What is the difference between the
desktop and mobile libraries? Can I
only access a subset of the SDK on the
mobile device compared to the desktop?
Desktop and mobile libraries? Do you mean the Playbook Air Library or something else? See above for the latter. Comment on this if you can clarify.
Can I create a playbook application
that can call methods to a JAVA back
end, located on my server?
Yes, you can, as long as you have internet connectivity on the Playbook.

Porting web-app for a tablet

My web app is written in Java with front-end in JS. I want to port to tablet and other touch mobile devices. Developing a native API is ofcourse an option but I would prefer making the old app work on tablet.
I know I would need to make some changes in UI for the touch interface and I am willing to do it.
So My question is: A*re there tablet Simulators available on which I can try my app and see where it breaks on such device.*
What would be the best approach to proceed on this?
thanks in advance!
Tablets use various OS's and, thus, different API's, supported features, etc... For iPad, for imstance, XCode provides a simulator. I read somewhere that the BB tablet coming out will have a simulator for dev as well.

Is there a list of mobile browsers which I must support and test for?

Is there a list of mobile browsers which I must support and test for?
There are so many mobile devices and browser, it may not be possible to test for all and support all.
Yahoo made a list for Desktop browsers http://developer.yahoo.com/yui/articles/gbs/
Does anyone knows any suggested browsers list like this for Mobile browsers.
No.
It's up to you what devices you want to support. But probably, depending on what you do, you should look into some sort of 3rd party lib to help you. Maybe you'll be interested in DeviceAtlas or WURFL.
ASP.Net has browser capability detection built in via the System.Web.HttpBrowserCapabilities class. MSDN did a decent write up a while back on how to use it.
The Mobile Device Browser File is an updated data file on Codeplex for the browser capabilities subsystem with profiles for tons of new mobile devices.
While the MDBF is a giant XML file, it will tell you not only what mobile devices .net is aware of, but their capabilities too.

Resources