First off this question might be a bit broad so I apologize if it is. I am really just looking for peoples experiences and personal knowledge on the subject. I am looking to create a game for both Android and iPhone platform. I know Unity is a great game engine and my question is how well does it work for creating one code base to build for both Android and iPhone platforms? Time is a constraint on this project so I am very interested in how smoothly the process usually is when trying to build both applications and how much custom code must be written for each specific application. Any insite that people have on this topic would be much appreciated thanks.
Depends on the scope of your project. As long as you don't need anything fancy, Unity3D works pretty much the same on Android and iOS. However, there are times when you need to access OS services, and when this happens, you have to write plugins. These plugins, of course, have nothing in common between Android and iOS.
Also, Unity3D imports all art assets, converting them to a format used on target device. This means that when you switch targets from iOS to Android and back, everything needs to be reimported. This process takes anywhere from several minutes to hours, depending on project size.
Unity3d is based off of mono. Mono is an open source API that runs on tons of OSs which includes android and IOS. Check out : http://en.wikipedia.org/wiki/Mono_(software)
For development, unity3d has created libraries ontop of the Mono platform that make it easy to get inputs from the device in a standard way. Example for the accelerometer leaning the mobile device forward will be detected by the same code regardless of the device/OS. See : http://unity3d.com/support/documentation/ScriptReference/Input.html
Hope this helped.