Another week, another set of Android development grievances by me.
Caching?
One major thing I have been running into while using Android Studio building to my Nexus phone is that more times than not the project built to the phone is being cached. So I spend time updating source code and close the application if it’s running on the phone. I Build > Clean just to be sure. I know it’s been saved. I build to the phone. I get the old System.out.println stuff from my previous build. What? Sometimes if I alternate clicking the debug and run button in AS, I get the fresh build on the phone. But I have to really pay attention to what’s going on and don’t assume that there is some kind of bug to track down because I’m not getting the logging I expect to see.
You Can’t Do That Yet.
Other things are when I am developing – I run into simple things that should just work. I end up having to import a bunch of things and cascade-create things to support the methods I’m trying to call. Okay, so I need to build up this thing to supply a method’s parameter. I go down that little rabbit hole. And then I discover another such thing. And another. So much code – I end up starting to sprinkle new methods around the one I was working on – for scroll access. And it starts getting ugly with lots of lines of code. It starts to feel a lot less manageable. I consider putting stuff into new Classes (utility) to handle it and sock it away from my method.
I also have run into something where HTTP works just fine for a library. I introduce HTTPS and it barfs red in the log and crashes hard. I do a bunch of digging and find out that the library doesn’t support HTTPS. Or something else. And then I need to hunt down something that does – and sometimes those things have 8 million dependancies that I just don’t feel up to stripping in place. It all starts turning into a pretzel that’s not fun to make – even if the taste later won’t surprise.
That’s my small rant for a Friday. Enjoy the weekend.