This app was mentioned in 3 comments, with an average of 2.67 upvotes
War Worlds is the only 4X game I play on my phone.
Trust me, work up to a few stars and you'll very quickly get into a 4X scale game. It's daunting, and the strategy involved can be quite fun.
The down side, it's developed by one guy, the game can be buggy at times, and updates are few. However, if you can look past these and work around it, the game is very much a 4X world.
Imagine a MoO game that had no galaxy size limit, and was persistent.
I searched the Android app store for Master of Orion like games years back and came up with War Worlds, a space game that encourages spreading out eternally.
It had its bugs, but I got up to a many thousands of planets empire. I think I reached the Top 25 of players, which means some guys were making hundred thousand - ish empires.
I've had some moderate success with my game, War Worlds (website, trailer, screenshot, Play Store). It's been quite a wild ride, I started working on it about 5 years ago, first released in Jan, 2013. It got some quite success after posting it here on Reddit, and at it's peak it got to about 2,000 weekly users.
The game's server is a custom HTTP server written in Java (with Jetty providing the HTTP stuff and an nginx frontend to do SSL and stuff). The client is a pretty stock-standard Android app, but the starfield is a GLSurfaceView with AndEngine powering it. I had originally written the server in Python and ran on App Engine (then rewrote it as Java on App Engine), before finally ditching App Engine. I also started off with MySQL as the database engine, but ditched that in favour of Postgres. Compared to all the back-and-forth and re-writes of the server, the app itself has been comparatively straight forward.
Being a multiplayer game, there was a few instances of people trying to hack the server to get an advantage over others. Those were some interesting times, trying to figure out how people have been giving themselves and their friends basically unlimited money and cleaning up the mess after it all happened!
I haven't touched the game for about a year, but it's still running and still has active players. I've started picking up work on it again, and decided I'd work on version 2, which is going to fix all the little problems that annoyed me about the first version but I was unable to fix without starting from scratch.
Some things I've learned and planning to change for v2 is I'm going to be building a single-Activity app, with multiple fragments instead of having many activities. Activities are pretty heavy-weight and the constant creation/destruction adds to some of the memory-pressure. Particularly creating and destroying the GLSurfaceView is pretty heavy. I'm planning to have a single activity with the GLSurfaceView in the background, and just stick fragments on top for the different bits of the UI.
I'm also planning to ditch AndEngine (which appears to have been abandoned) and just write directly to use the GLSurfaceView API. My game has pretty basic needs for that view, so I don't think this will be a whole lot of work.
Finally, I plan to change my client/server protocol to use WebSockets instead of normal HTTP requests. There's a lot of overhead in HTTP requests which I don't really need.
(edit: typos)