How to adjust a 2.5D game for android for different resolutions

The game I am creating is 2D with 3D camera. From what I understand, I should instantiate every game object in my game based on the aspect ratio and not the resolution, but that doesn’t sound good enough in my ears.

Also, I have no idea what to do with the camera.

In my experiences, the camera will always fill the available vertical space on the device’s screen. You can imagine that the camera view zooms in until it fits snugly in the vertical space of the screen. As a result of this, if a screen is particularly tall and particularly narrow, a lot of the width of view gets cropped at the edges. (If you are making a landscape game, the same principles apply, just the view is really wide).

Both 2D and 3D elements should scale pretty gracefully between different screen sizes. A really high-res screen like on the iPad 3 will cause some graphics to look blurry, but if you design with the highest-res in mind, it should scale down pretty well.

The tricky part is if you want to position a GameObject in the corner of the screen, no matter what the screen size is. To accomplish this, you can use a Camera function:

Vector3 worldPos = Camera.main.ViewportToWorldPoint(Vector3.zero);

This would give you the world position of the lower-left corner of the screen; Vector3.one would be the top-right corner of the screen. By positioning things this way, you give your game a fluid layout (sort of like a webpage, but the user can never resize the window :P)