A problem you'll run into with Android is that every different device has its own screen size, resolution, and pixel density. If you want your game to look identical on all devices, you're in for a lot of work and will probably never be pleased with the results. Either the game will appear stretched on widescreen displays or compressed on non-widescreen ones. I suggest you decide what's truly important and let anything else slide a little.
Without any screenshots or knowledge of what your game is and what it looks like, we can all speculate solutions but we don't have specific direction to give you specific counsel.
In Unity, you can access the dimensions of the current screen with the Screen class: Screen.width
and Screen.height
(among other properties). You could then change the Camera's aspect ratio to change what is visible on your different sized screens based on the screen dimensions and your personal expectation of what should be visible.
If you need to ensure any HUD displays are scaled properly, you can do that by changing the GUI transform matrix based on the screen's dimensions in every OnGUI()
function. I've done it before by making this simple script and attaching it to anything that rendered GUI elements I wanted scaled:
//GUI values in code are assigned based on an 800x600 screen
private var nativeWidth : float = 800.0f;
private var nativeHeight : float = 600.0f;
private var guiMatrix : Matrix4x4;
function Start ()
{
var scale : Vector3 = Vector3(Screen.width / nativeWidth,
Screen.height / nativeHeight,
1.0f);
guiMatrix = Matrix4x4.TRS(Vector3.zero, Quaternion.identity, scale);
}
function GetGUIMatrix() : Matrix4x4
{
return guiMatrix;
}
Then, in the actual OnGUI()
function(s), I set the transform matrix right away:
function OnGUI()
{
GUI.matrix = guiScale.GetGUIMatrix();
/* Everything Else */
}