Apparently my issue spawned from the call being made in onActivityResult(…)
I was able to fix the issue by putting the UI modification code inside a Runnable, then posting the Runnable to the main thread:
Runnable r = new Runnable() {
@Override
public void run() {
// UI code here
}
};
Handler h = new Handler();
h.post(r);