How to create android tablet application using monodroid? - xamarin.android

I am new to monodroid , my doubt is how to create android tablet application using mondroid ?
I can create the application for 2.3.3 but in monodroid there is no options to target the android version for developement, as a result i can not create application targeted for tablet application.
Can you please advise how to create tablet application using monodroid ?

In Android devices, a tablet is exactly the same as a phone, except with a larger screen. (This is not strictly true though). To determine if a device is a tablet, you must see what the screen dimensions are.
It is not like the iOS that has a iPad and a iPhone, Android has a device with a smaller/larger screen.
Android 2.3.3 is for both tablets and phones. They split it into 3.x for tablets, and joined them again with 4.x. So you shouldn't find a phone running 3.x, but you will find both a tablet and a phone with 2.3.3 or 4.0.
From the docs (Supporting Multiple Screens):
320dp: typical phone screen (240x320 ldpi, 320x480 mdpi, 480x800 hdpi, etc)
480dp: a tweener tablet like the Streak (480x800 mdpi).
600dp: a 7” tablet (600x1024 mdpi).
720dp: a 10” tablet (720x1280 mdpi, 800x1280 mdpi, etc).
More cool docs: Supporting Tablets and Handsets
if your application is only for tablet-style devices with a 600dp smallest available width:
<manifest ... >
<supports-screens android:requiresSmallestWidthDp="600" />
...
</manifest>
However, if your application supports all screen sizes supported by Android (as small as 426dp x 320dp), then you don't need to declare this attribute, because the smallest width your application requires is the smallest possible on any device.

Related

How can I tell an Android app is aimed at tablets? Just Android version or something like iPhone/iPad

I'm building software that lists apps for users to test.
With respect to Android, how can you tell from an .apk that it is meant for Android tablets? Or does Android not make the distinction as iOS does with iPhone/iPad? I know iOS uses pixel perfect layouts (well points with retina) whereas Android uses much more of a liquid layout with much more different resolutions
I want to extract the .apk file and parse the AndroidManifest.xml file inside the .apk (yes binary format, thanks Google) and determine if an app is suitable for only Android phones and/or Android tablets
Would checking for the existence of a drawable-large folder be one way?
Or the supports-screen element?
<supports-screens
android:smallScreens="false"
android:normalScreens="false"
android:largeScreens="true"
android:xlargeScreens="true"/>
Thanks!
Correct. Android doesn't have a concept of a tablet separate from any other device. They're all Android devices that just have particular characteristics. Focus on which characteristics you're interested in, such as screen size (as you have) and OS version.
From Google guide, if you can get these elements from the manifest file, this App can be considered declaring only for tablet.
<supports-screens android:smallScreens="false"
android:normalScreens="false"
android:largeScreens="true"
android:xlargeScreens="true"
android:requiresSmallestWidthDp="600" />
<uses-sdk
android:minSdkVersion="11"
android:targetSdkVersion="15" />
Maybe this article can be helpful: http://developer.android.com/guide/practices/screens-distribution.html#FilteringTabletApps

How can I find out what os version a blackberyy phone has?

I'm trying to figure out what phone to use to test my black berry app on where I'm using jde version 6.0
I tried to google emulators, I thought the emulate=or would tell you what jde version its using, but I got the link
https://swdownloads.blackberry.com/Downloads/entry.do?code=060AD92489947D410D897474079C1477
which had a drop down for emulters pertaing to a os version, not a device.
I also googled blackberry phone jde 6.0, this did not work.
Is there a web page that has what os version each phone has?
or I was going to get the storm, does it use 6.0 or higher?
also would any blackberry phone with a camero have 6.0 or higher?
The thing is that unless the model is quite old, the devices within the model can range through multiple OS versions.
For example, the BlackBerry Bold can be found with an OS as old as 4.3 installed on it, but you can also find recent models that come out of the factory with OS 6 installed.
At Antair, our current device of choice to test on is the BlackBerry Torch. It is one of the more popular models used by consumers these days. It also has a touch-screen and a physical keyboard, and allows the user to flip from portrait to landscape mode. Torch models come out of the factory with RIM OS 6 installed.
So, if you're going to buy a physical device to test on, due to the range of features, the availability of RIM OS 6, and the popularity of the device, I would recommend the BlackBerry Torch.
You might have a look at this page which gives you access to the simulators in a slightly different direction, letting you choose the device model first.

How many versions of Blackberry apps we have to make?

There are basically two issues that are confusing us:
Will a Blackberry app made for mobile phones work on the Blackberry tablet? I see that there is a tablet SDK as well.
Do we have to make a separate versions of Blackberry app for different mobile phones?
The reason we ask this is because we come from the Android environment where we can use one SDK to make app which will work on all mobile phones and tablets as well.
The BlackBerry Smartphone SDK is different from the BlackBerry PlayBook Tablet SDK.
The smartphone applications are written in Java (RIM's version of J2ME, essentially), while for now, there are two editions of the PlayBook Tablet SDK: WebWorks, for development with web technologies like Javascript, HTML, and CSS, and one that is Adobe Flash/Actionscript/Air based. I think there is also one in development with C++ as a foundation.
You can start with the BlackBerry Developer zone - it covers development for both smartphones and tablets:
http://us.blackberry.com/developers/
The BlackBerry Tablet SDK for Adobe AIR can be found here: http://us.blackberry.com/developers/tablet/adobe.jsp
The BlackBerry Tablet WebWorks SDK can be found here: http://us.blackberry.com/developers/tablet/webworks.jsp
Information about development for the BlackBerry smartphones can be found here: http://us.blackberry.com/developers/javaappdev/
For smartphone development, you would probably want to target the minimum RIM OS that would include the most devices owned by your target customer base.
Right now, RIM claims that more than 96% of BlackBerry smartphones can be reached using SDK 4.5 or higher.
RIM keeps an up-to-date set of statistics on this: http://us.blackberry.com/developers/choosingtargetos.jsp
Typically, if you're targeting recent devices (4.7 and newer), then you don't need to worry about splitting your code to target multiple devices, as long as the UI is written without making any assumptions as to screen size, etc.
If you're targeting anything older than 4.7, then it may benefit you to make two versions - one for touch screen devices, and one for devices that aren't touch-screen. The touch-screen API is introduced in 4.7, and while it's somewhat backward compatible, in our experience, while you need the touch-screen API available for devices that support it, it's best to leave it out for older devices that do not have support for the touch API or the virtual keyboards that come with it.
If you're going to split the code, RIM's compiler does come with a C/C++ - style preprocessor which comes in very useful.

Difference between Tablets, palm devices, touch pads

Can anybody please help me out with the difference between tablets, iPads and palm devices. I am new in this area and have no idea what are the specifics of this devices or how they differ from one another. iPad is from Apple, are there any other devices similar to iPad but are from HP or Android????
Also what is the difference in developing apps on this machines. Like if I can develop app for an iPad, will it be easy for me to develop a similar one for HP or Android device(if they have something similar to iPhone).
There has been a lot of press lately about tablet devices, Apple seems to have set the pace with the iPad and the iPad 2 is rumored to be announced sometime soon.
iPad apps are written primarily in Objective-C using the iOS SDK free from Apple on the iOS Developer Center. It does cost $99 to deploy apps to a device and distribute them however. There are other tools to develop iOS applications such as MonoTouch and PhoneGap
Blackberry is about to release the Playbook which from my understanding runs Adobe Air applications.
HP just announced the Touchpad which runs WebOS, the applications are primarily built using web technologies (HTML, Javascript, etc)
Then there are a slew of devices coming out that run Android, I think the next one that will be available to consumers is the Motorola Xoom. Android apps are developed primarily in Java using the Android SDK which is free and platform independent.
This market is evolving very fast and there are a lot of players, it seems Apple has the solid ground a this point.
Developing applications for these devices can differ quite a bit, one way that you can reach all devices is by developing a tablet centric webapp such as Yahoo!'s tablet site
I-Pad apps can only be created on a mac PC and will likely share no code with an HP device, I believe HP do make an android laptop but not a touchpad.
Touchpads similar to i-pads do exist and some do indeed run android. Take a visit to your nearest computing or electricals store and they are bound to have one.
A palm device is smaller and fits within the palm of your hand, The i-phone or a blackberry would count as a palm device. Any regular 'non' smartphone(iphones blackberrys again) also classifies but i dont believe this is what you are looking for.
Android is not a company, Android is an operating system that your code will run on. Other companies make the device which then has android installed.

Ipad Test simulator

I have develop an application with html5 for ipad, but I cannot find any good simulator to test, from where I can get simulator or download?
Yes, you can download the iOS SDK from iOS Dev Center and it will contain the iPhone Simulator BUT note that you need Snow Leopard (Mac OS X 10.6+) to get iPad support. Leopard's iOS SDK does not have iPad Support. (If you do have Snow Leopard select "Device" from top menu and select iPad to see the iPad simulator)
There are some options out there if your on Windows or don't have Snow Leopard but these will be for testing your HTML5 in the browser rather then as a compiled app.
BBDemo2 - An Adobe AIR App (so it uses Webkit, same as Safari & Thus iPhone/iPad)
iPad Peek - Web based browser that will likely only simulate dimensions (for best results maybe try using Safari)
Browerstack (paid service) supports the iPad / iPad 2 (4.3.2 and 5.0). They set up a virtual machine for you in the cloud, which can be accessed through your browser. For me this is the fastest / easiest way without owning a iPad or a mac.
It also offers tunneling so you can test your local application in their virtual machine.
xcode comes with one. if you have a mac, it is called iphone simulator. It can emulate both the iphone and the ipad.

Resources