iOS and Android Installation (direct testing) - android

Is is possible to directly deploy apps on ios or android devices just for testing?
My Background:
I am currently developing iOS and Android apps but using only emulators.
Maybe you can consider me as an intermediate mobile developer but newbie in direct installation of application created.
Also, I'm afraid my iPhone or my android devices get destroyed if I will try some of the blogs tutorials found on the net.

You can try your application on actual mobile devices on both platforms.
With Android is pretty straightforward: just plugin your device to your computer's USB port. If you happen to have proper drivers for it, whenever you run your application from Eclipse IDE, you will be asked if you want to run your application directly on the device. Make sure you enable debugging on your device.
With iOS, it's also fairly easy. Just plug your iPhone/iPad/iPodTouch to your Mac, launch XCode and select device before pressing run. You might need to create a provisioning profile for it (you will need a Apple iOS Developer Account for this).
I don't think you will ruin any device just by following (and installing) tutorials from the net.

For Android: Yes, you can run the apps directly from Eclipse or Netbeans on your device, works exactly as with the emulator. To make real apps you have to test them on real devices!
You wont destroy your device. Read the Android SDK "getting started" stuff.
Can't really say about iOS though.

You can always buy a second hand cheap phone and use it.
I started developing apps in the Android emulator and I was surprised about the big difference between the emulator en a real device, which really made it worth to buy one of these terminals.

Related

Where can I run into pitfalls when using an Android emulator over a real device for app development?

I want to get into developing apps for Android because of its large userbase. However, at the moment I do not have a smartphone. I'm also not too keen on getting an Android phone in the future.
What problems could I encounter when developing apps for Android solely using an emulator? I could use my parents' Android phones for the occasional testing, but will an emulator prove sufficient otherwise? Furthermore, is it possible to set up an Android Virtual Device with low-end hardware on my computer to test out apps with low-end phones?
note0: I do not plan on developing apps which require use of the phone's sensors (such as gyros, GPS, etc.) I only plan on developing apps which require internet access for API calls and perhaps microphone usage (I can't give away too many details right now ;) )
note1: I know this question has been asked before on stackoverflow (albeit 4 years ago). However, I feel it is important to revisit the question because emulators, hardware, and Android itself have changed enormously in the last few years.
edit: My main issues are problems like the app looking weird on the phone despite it looking fine on the emulator or working slowly on the phone but working fine on the emulator. Will every app which works fine on the emulator work fine on the phone as well with a similar hardware configuration as the emulator? I'm in particular targetting devices with Android 4.x/5.x.
Without a doubt, the biggest problem is that many functions like push
notifications, maps, geo-location, in-app vending etc. cannot be
tested with an emulator. The reason is that all these functions are
present in the Google Play Services library which is not present on
emulators.
Another important reason for testing on hardware devices is that the
OS implementation is changed by manufacturers like Samsung, HTC and
others, and therefore, certain problems & exceptions are not observed
till a real device is used.
But the most important reason has to be that running apps on an
actual phone is a hell of a lot more fun that it is with the painfully
slow and retarded emulators! One of the most important things about
Android is that anybody with an Android phone can easily explore
computer science concepts by running simple programs on their phone.
It is incredibly easy, even for a novice, to just fire up their
Android device and start exploring the world of programming! Till just a few years back, it was incredibly difficult to debug an app on a Symbian or Palm or WinCE device. iOS is still as retarded when it comes to running the simplest apps, you have to create a provisioning profile to run a Hello World app on an iPhone!
EDIT:
If your processor supports Intel virtualization, then the emulator can be made to run as fast as a real device. You need to check that out. If your PC is low-end in the sense that it does not support such virtualization, then running and testing Android apps will be a painful, tedious experience that will suck all the fun out of the development process.
Emulators do have one significant advantage over real devices - an emulator is able to access web services on a localhost. If you are still in development phase on your local server and have not yet shifted to a publicly hosted environment, the emulator can easily access web services on a local server. All you have to do is put your computer on the same network as the local server and you're good to go. A real device cannot access a localhost; its impossible, as far as I know.
The Android emulator is a true emulator - it emulates sensors as well, so in fact you can test sensor programming (with some limitations) on an emulator. It cannot do things like GPS, maps etc. because those features have been migrated to the Google Play Services library, and they require a valid Google account to be used, which is why that library is not present on an emulator. If you only plan to work with web services, APIs', GUIs' then I suppose an emulator is more than sufficient. Unlike the iOS simulator, an Android emulator generally exhibits the WYSIWYG behavior, so your GUI will not differ on actual devices, although you do need to test your GUI on multiple AVDs' with different screen form factors.

How can i link up my Android phone to unity for Testing Games?

i just started learning unity and i am stuck at linking my Android Phone to unity to test run. Is it possible to test games on android phone from unity? i try with emulator but couldn't work it properly Emulator's Screen goes blue, it did show welcome screen of unity.
My device is xperia arc Android 4.0.4
is their any synchronization software for unity and android?
There are two things you can do.
One, as already pointed by Jerdak, is installing your android device drivers and the android SDK. There's no better steps to take here than what already pointed in the docs, and I see no reason to replicate the steps here.
The second thing is using the "magical" Unity Remote. It's far from ideal for testing games, but it may be useful for some testing and it is a lot faster and simpler to run. You just need to install it on the device, have it on the same wifi as your running Unity Editor and hit play.
Unity remote is replaced by unity remote 4. Kindly proceed it with unity remote 4.Make sure only 1 sdk platform is installed on your system.

WinPhone7 needed for a porting?

I have an android app with more than 500,000 users. I want to try to port it to WinPhone7, but I haven't any smartphone with WinPhone7. Is a real device needed to publish an app on WinPhone? Is there some developper phone?
First of all, I will say that for some scenarios, there is no real substitute for have a physical device to test against. Having said that, I would suggest that 99% of what most apps will do can be developed and test perfectly well on the emulator that comes with the developer tools.
The advantage of the emulator is that you can write and test without shelling out for the hardware and then signing up to create.msdn.com to get it (officially) unlocked, but once you are ready to deploy to the marketplace you will need to sign up anyway.
In your case, I'd say the main word in your question is "try". You don't seem confident in being able to port to the platform so the emulator route seems like the best starting point.
Your will find a Windows Phone 7 emulator in the Windows Phone SDK. You can download it for free on create.msdn.com.
There is an Android to Windows Phone API mapping tool and Windows Phone 7 Guide for Android Application Developers white paper as described on the Windows Phone Developer Blog that you should find very useful.
For getting a development device, you should reach out to Brandon Watson or your local Microsoft WP7 dev rep.
Simple answer - no, you don't. There are plenty of applications out there that were published without being tested on an actual device. Whether it's a good idea or not - that is the main question here. Depending on your application type and its behavior, you might actually need a device.
Also, another problem is the fact that the resources used by the emulator are different from the resources used by the actual device. That being said, if your application runs just fine in the emulator, it will not necessarily run the same way on a device.
You can use the WP7 emulator to test your application. But if you want to deploy it on a real phone, you will have to unlock it though the App Hub portal. That will cost you 100 dollar/year though.
As you and others have rightly pointed out, you can start porting your application using the emulator. There are differences in the emulator and real devices. In particular, to answer your question, emulator does not take pictures.
If your Android app really has half a million users, MS will happily give you a developer device (nearly) for free.
Contact #BrandonWatson or #FrankPR on Twitter.
From my experience I can tell you, that the emulator works very well. But once in a while you will stumble about a problem that you don't understand why it happens. Then you try it on the phone and it works... So... The answer is yes...not!

Complete Development using the Motorola XOOM

I really want to get into Android programming but I only have access to company resources right now. I have the money right now to purchase a XOOM or a development laptop. Is it possible to compile Android apps using the command line on the Xoom while using other apps to write the program files.
What would seem like a dream environment would be if I purchased a XOOM and a BlueTooth Keyboard. Am I dreaming? Developing using older Android devices was naturally limited by the screen space of the device and the underlying hardware also.
No, as far as I know, you cannot develop Android applications from within Android. You will need a Windows, Mac, or Linux desktop environment to develop Android applications. Visit the Android Developer site for additional info on the SDK.
Go for the development laptop, and test your applications on the emulator. Initially you can get friends to test them out on their android for you, and hopefully by the time you make something important enough you will be able to afford your own android.
Check out AIDE. It can build and deploy apps natively on Android.
Google doesn't have a version of the SDK that runs on an android device, although as devices become more powerful this would be a pretty awesome thing to have.
You'll want the laptop, since it can emulate different android devices.
Buy the laptop and get a cheap phone on craigslists.
Although, the XOOM emulator doesn't work at all, so if you want to develop specifically for that tablet it's a good idea to buy it. It's impossible to emulate android 3.0 on any computer on earth :)

Can I use any Android Phone for application development?

Can I use any Android Phone for app development? Here in the Philippines, there are many available mobile phones with Android installed. But I want to buy the cheapest phone available (which I think is Samsung i5500 Galaxy 5). Thanks in advance!
You can use any android powered device for development, just make sure it has Development menu option. To check go to Menu -> Settings -> Applications -> Development. If there is somewhat like USB Debugging option you can use device for the development.
Why not use the actual dev kit? There is a complete setup with virtual phone included that you can run as an eclipse plugin.
http://developer.android.com/sdk/index.html
I think any Android platform based phone will be OK.
Yes you can, and I would definitely recommend using a real phone. The emulator is excellent, but somewhat slow for a number of applications that require hardware (OpenGL comes to mind). Even a G1 tends to be faster than the emulator for certain things. If you're creating an app that uses Bluetooth, there's no way to do so on the emulator currently. Konstantin's directions are good for actually setting up the phone.
You need to understand one thing before you buy the phone. What version of Android SDK you will be using for to develop the app. If say, you are developing the app for cupcake and above, you better have a phone with cupcake version. But if you have Froyo phone, you will not be still able to run the app, but some depreciated functions might not be available and your app may crash.
If you want to develop in Windows there is a list of devices available for which the USB drivers work: USB Driver for Windows
If you don't need the GSM part you could also think about using the Archos 5 Internet Tablet, which is a Android powered media player and supports ADB (Android debug bridge) as well

Categories

Resources