I'm reverse engineering an android application. It's been a while since I've poked with this but I"m having an issue editing the APK to deal with some language areas.
The original app is from a different country. When decompiling and recompiling, the app installs but errors out when you try to run it on the phone. This includes if I only do apktool d and then apktool b. via log cat I'm getting this exception:
Caused by: java.util.MissingResourceException: Can't find resource for bundle 'j.bc.l.resources.resources.resources_en_US', key ''
from a ResourceBundle.getBundle call. Via this page I'm assuming it's an issue related to resolving resources for different languages.
I think the issue is it's defaulting to search a path that doesn't exist in the application, so it can't find the file and the application crashes. I unzipped the apk file and in j.bc.l.resources there is a resources.properties file, but no resources_en_US directory to search in.
So at this point since I need to make changes to the application I'm assuming I need to put a resources_en_US in that directory with a new properties file, but I don't know how to patch that into the application. I can't unzip and rezip because as far as I know it messes up the headers so that apktool and installation will fail.
So I need a way to put the resources.properties file into the correct location to resolve properly. The aren't any references in the code to resources_en_US so I'm assuming the only way to get it to work is to patch the directory into the app and rebuild it. But if there's an easier way to solve this issue I would be okay with that as well.