I am using asynctask, json, eclipse juno. I am parsing some tags from a json file,im getting them perfectly,in some textviews, and I am trying to parse some links as data to assign them to buttons on my project. im getting the buttons working on my project from Android 2.1 to Android 4.1.2,.but in Android 4.2-4.4 the buttons aren't working,it doesn't crash,and I am not getting an error,it just does like its going to open the browser and goes back to the layout where the buttons are at.
Any idea if the way that I am trying to do has change in android 4.2?
SingleContactActivity.java
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;
public class SingleContactActivity extends Activity {
// JSON node keys
private static final String TAG_NAME = "name";
private static final String TAG_EMAIL = "email";
private static final String TAG_PHONE_MOBILE = "mobile";
private static final String TAG_ADDRESS = "address";
private static final String TAG_GENDER = "gender";
static final String KEY_AUDIO= "audio";
static final String KEY_VIDEO = "video";
static final String KEY_WEB = "web";
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_single_contact);
// getting intent data
Intent in = getIntent();
// Get JSON values from previous intent
String name = in.getStringExtra(TAG_NAME);
String email = in.getStringExtra(TAG_EMAIL);
String mobile = in.getStringExtra(TAG_PHONE_MOBILE);
String address = in.getStringExtra(TAG_ADDRESS);
String gender = in.getStringExtra(TAG_GENDER);
final String uriUrl = in.getStringExtra(KEY_AUDIO);
final String uriUrl2 = in.getStringExtra(KEY_VIDEO);
final String uriUrl3 = in.getStringExtra(KEY_WEB);
// Displaying all values on the screen
TextView lblName = (TextView) findViewById(R.id.name_label);
TextView lblEmail = (TextView) findViewById(R.id.email_label);
TextView lblMobile = (TextView) findViewById(R.id.mobile_label);
TextView lblAddress = (TextView) findViewById(R.id.address_label);
TextView lblGender = (TextView) findViewById(R.id.gender_label);
lblName.setText(name);
lblEmail.setText(email);
lblMobile.setText(mobile);
lblAddress.setText(address);
lblGender.setText(gender);
Button btnaudio = (Button) findViewById(R.id.buttonA);
btnaudio.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v){
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(uriUrl));
startActivity(i);
}
});
Button btnvideo = (Button) findViewById(R.id.buttonV);
btnvideo.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v){
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(uriUrl2));
startActivity(i);
}
});
Button btnweb = (Button) findViewById(R.id.buttonW);
btnweb.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v){
Intent i = new Intent(Intent.ACTION_VIEW);
i.setData(Uri.parse(uriUrl3));
startActivity(i);
}
});
}
}
MainActivity.java
import net.umalc.R;
import java.util.ArrayList;
import java.util.HashMap;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.Dialog;
import android.app.ListActivity;
import android.app.ProgressDialog;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
public class MainActivity extends ListActivity {
private ProgressDialog pDialog;
// URL to get contacts JSON
private static String url = "http://www.revgrades.com/contacts";
// JSON Node names
private static final String TAG_CONTACTS = "contacts";
private static final String TAG_ID = "id";
private static final String TAG_NAME = "name";
private static final String TAG_EMAIL = "email";
private static final String TAG_ADDRESS = "address";
private static final String TAG_GENDER = "gender";
private static final String TAG_AUDIO = "audio";
private static final String TAG_VIDEO = "video";
private static final String TAG_WEB = "web";
private static final String TAG_PHONE = "phone";
private static final String TAG_PHONE_MOBILE = "mobile";
private static final String TAG_PHONE_HOME = "home";
private static final String TAG_PHONE_OFFICE = "office";
// contacts JSONArray
JSONArray contacts = null;
// Hashmap for ListView
ArrayList<HashMap<String, String>> contactList;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
contactList = new ArrayList<HashMap<String, String>>();
ListView lv = getListView();
// Listview on item click listener
lv.setOnItemClickListener(new OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// getting values from selected ListItem
String name = ((TextView) view.findViewById(R.id.name))
.getText().toString();
String email = ((TextView) view.findViewById(R.id.email))
.getText().toString();
String mobile = ((TextView) view.findViewById(R.id.mobile))
.getText().toString();
String address = ((TextView) view.findViewById(R.id.address))
.getText().toString();
String gender =((TextView) view.findViewById(R.id.gender))
.getText().toString();
String audio =((TextView) view.findViewById(R.id.audio))
.getText().toString();
String video =((TextView) view.findViewById(R.id.video))
.getText().toString();
String web =((TextView) view.findViewById(R.id.web))
.getText().toString();
// Starting single contact activity
Intent in = new Intent(getApplicationContext(),
SingleContactActivity.class);
in.putExtra(TAG_NAME, name);
in.putExtra(TAG_EMAIL, email);
in.putExtra(TAG_PHONE_MOBILE, mobile);
in.putExtra(TAG_ADDRESS, address);
in.putExtra(TAG_GENDER, gender);
in.putExtra(TAG_AUDIO, audio);
in.putExtra(TAG_VIDEO, video);
in.putExtra(TAG_WEB, web);
startActivity(in);
}
});
// Calling async task to get json
new GetContacts().execute();
}
private Dialog getSupportActionBar() {
// TODO Auto-generated method stub
return null;
}
/**
* Async task class to get json by making HTTP call
* */
private class GetContacts extends AsyncTask<Void, Void, Void> {
@Override
protected void onPreExecute() {
super.onPreExecute();
// Showing progress dialog
pDialog = new ProgressDialog(MainActivity.this);
pDialog.setMessage("Please wait...");
pDialog.setCancelable(false);
pDialog.show();
}
@Override
protected Void doInBackground(Void... arg0) {
// Creating service handler class instance
ServiceHandler sh = new ServiceHandler();
// Making a request to url and getting response
String jsonStr = sh.makeServiceCall(url, ServiceHandler.GET);
Log.d("Response: ", "> " + jsonStr);
if (jsonStr != null) {
try {
JSONObject jsonObj = new JSONObject(jsonStr);
// Getting JSON Array node
contacts = jsonObj.getJSONArray(TAG_CONTACTS);
// looping through All Contacts
for (int i = 0; i < contacts.length(); i++) {
JSONObject c = contacts.getJSONObject(i);
String id = c.getString(TAG_ID);
String name = c.getString(TAG_NAME);
String email = c.getString(TAG_EMAIL);
String address = c.getString(TAG_ADDRESS);
String gender = c.getString(TAG_GENDER);
String audio = c.getString(TAG_AUDIO);
String video = c.getString(TAG_VIDEO);
String web = c.getString(TAG_WEB);
// Phone node is JSON Object
JSONObject phone = c.getJSONObject(TAG_PHONE);
String mobile = phone.getString(TAG_PHONE_MOBILE);
String home = phone.getString(TAG_PHONE_HOME);
String office = phone.getString(TAG_PHONE_OFFICE);
// tmp hashmap for single contact
HashMap<String, String> contact = new HashMap<String, String>();
// adding each child node to HashMap key => value
contact.put(TAG_ID, id);
contact.put(TAG_NAME, name);
contact.put(TAG_EMAIL, email);
contact.put(TAG_ADDRESS, address);
contact.put(TAG_GENDER, gender);
contact.put(TAG_AUDIO, audio);
contact.put(TAG_VIDEO, video);
contact.put(TAG_WEB, web);
// adding contact to contact list
contactList.add(contact);
}
} catch (JSONException e) {
e.printStackTrace();
}
} else {
Log.e("ServiceHandler", "Couldn't get any data from the url");
}
return null;
}
@Override
protected void onPostExecute(Void result) {
super.onPostExecute(result);
// Dismiss the progress dialog
if (pDialog.isShowing())
pDialog.dismiss();
/**
* Updating parsed JSON data into ListView
* */
ListAdapter adapter = new SimpleAdapter(
MainActivity.this, contactList,
R.layout.list_item, new String[] { TAG_NAME, TAG_EMAIL,
TAG_ADDRESS, TAG_GENDER, TAG_AUDIO, TAG_VIDEO, TAG_WEB }, new int[] { R.id.name,
R.id.email, R.id.address, R.id.gender, R.id.audio, R.id.video, R.id.web });
setListAdapter(adapter);
}
}
}
This is what logcat says when im trying to click the buttons:
02-11 06:04:14.002: I/ActivityManager(298): START u0 {act=android.intent.action.VIEW dat=http://www.conciencia.net/mensajes/2014/feb/2014feb01.mp3 cmp=com.android.browser/.BrowserActivity} from pid 1225
02-11 06:04:14.012: W/WindowManager(298): Failure taking screenshot for (328x546) to layer 21025
02-11 06:04:14.303: D/WebViewTimersControl(1257): onBrowserActivityResume
02-11 06:04:14.303: D/WebViewTimersControl(1257): Resuming webview timers, view=com.android.browser.BrowserWebView{410c0550 VFEDHVCL .F....I. 0,0-0,0}
02-11 06:04:14.722: E/SurfaceFlinger(36): ro.sf.lcd_density must be defined as a build property
02-11 06:04:14.772: I/Choreographer(1257): Skipped 33 frames! The application may be doing too much work on its main thread.
02-11 06:04:15.483: I/ActivityManager(298): START u0 {act=android.intent.action.VIEW dat=http://www.conciencia.net/mensajes/2014/feb/2014feb01.mp3 typ=audio/mpeg cmp=com.android.music/.AudioPreview} from pid 1257
02-11 06:04:15.483: W/WindowManager(298): Failure taking screenshot for (328x546) to layer 22025
02-11 06:04:15.782: D/webviewglue(1257): nativeDestroy view: 0x2a31d728
02-11 06:04:16.012: W/ActivityManager(298): Activity pause timeout for ActivityRecord{41359340 u0 com.android.browser/.BrowserActivity}
02-11 06:04:16.502: I/ActivityManager(298): moveTaskToBack: 7
02-11 06:04:16.553: I/Choreographer(1257): Skipped 139 frames! The application may be doing too much work on its main thread.
02-11 06:04:16.702: D/WebViewTimersControl(1257): onBrowserActivityPause
02-11 06:04:16.702: D/WebViewTimersControl(1257): Pausing webview timers, view=com.android.browser.BrowserWebView{40d12fb0 VFEDHVCL ......ID 0,0-768,1134}
02-11 06:04:17.012: D/dalvikvm(532): GC_CONCURRENT freed 166K, 10% free 2707K/2992K, paused 7ms+21ms, total 136ms
02-11 06:04:17.042: W/ActivityManager(298): Activity pause timeout for ActivityRecord{40ef81d8 u0 com.android.music/.AudioPreview}
02-11 06:04:17.162: E/SurfaceFlinger(36): ro.sf.lcd_density must be defined as a build property
02-11 06:04:17.333: D/MediaPlayer(532): Couldn't open file on client side, trying server side
02-11 06:04:17.373: I/AwesomePlayer(39): setDataSource_l(URL suppressed)
02-11 06:04:17.393: E/Trace(39): error opening trace file: No such file or directory (2)
02-11 06:04:17.962: I/qtaguid(39): Tagging socket 27 with tag 3f500000000(1013) for uid 10032 failed errno=-2
02-11 06:04:18.333: E/WVMExtractor(39): Failed to open libwvm.so
02-11 06:04:18.602: I/Choreographer(1257): Skipped 39 frames! The application may be doing too much work on its main thread.
02-11 06:04:20.043: I/Choreographer(532): Skipped 67 frames! The application may be doing too much work on its main thread.
02-11 06:04:20.103: W/IInputConnectionWrapper(1257): showStatusIcon on inactive InputConnection
02-11 06:04:20.392: D/AudioSink(39): bufferCount (4) is too small and increased to 12
02-11 06:04:20.523: I/AudioService(298): AudioFocus requestAudioFocus() from android.media.AudioManager@40cf0058com.android.music.AudioPreview$2@40d063f8
02-11 06:04:22.782: I/NuCachedSource2(39): ERROR_END_OF_STREAM
02-11 06:04:31.413: D/ExchangeService(701): Received deviceId from Email app: null
02-11 06:04:31.413: D/ExchangeService(701): !!! deviceId unknown; stopping self and retrying
02-11 06:04:36.443: D/ExchangeService(701): !!! EAS ExchangeService, onStartCommand, startingUp = false, running = false
02-11 06:04:36.443: W/ActivityManager(298): Unable to start service Intent { act=com.android.email.ACCOUNT_INTENT } U=0: not found
02-11 06:04:36.452: D/ExchangeService(701): !!! Email application not found; stopping self
02-11 06:04:36.472: W/ActivityManager(298): Unable to start service Intent { act=com.android.email.ACCOUNT_INTENT } U=0: not found
02-11 06:04:36.494: E/ActivityThread(701): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d66c68 that was originally bound here
02-11 06:04:36.494: E/ActivityThread(701): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d66c68 that was originally bound here
02-11 06:04:36.494: E/ActivityThread(701): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
02-11 06:04:36.494: E/ActivityThread(701): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
02-11 06:04:36.494: E/ActivityThread(701): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
02-11 06:04:36.494: E/ActivityThread(701): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
02-11 06:04:36.494: E/ActivityThread(701): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
02-11 06:04:36.494: E/ActivityThread(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
02-11 06:04:36.494: E/ActivityThread(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
02-11 06:04:36.494: E/ActivityThread(701): at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
02-11 06:04:36.494: E/ActivityThread(701): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
02-11 06:04:36.494: E/ActivityThread(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
02-11 06:04:36.494: E/ActivityThread(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
02-11 06:04:36.494: E/ActivityThread(701): at android.os.AsyncTask$2.call(AsyncTask.java:287)
02-11 06:04:36.494: E/ActivityThread(701): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
02-11 06:04:36.494: E/ActivityThread(701): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
02-11 06:04:36.494: E/ActivityThread(701): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
02-11 06:04:36.494: E/ActivityThread(701): at java.lang.Thread.run(Thread.java:856)
02-11 06:04:36.522: E/StrictMode(701): null
02-11 06:04:36.522: E/StrictMode(701): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d66c68 that was originally bound here
02-11 06:04:36.522: E/StrictMode(701): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
02-11 06:04:36.522: E/StrictMode(701): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
02-11 06:04:36.522: E/StrictMode(701): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
02-11 06:04:36.522: E/StrictMode(701): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
02-11 06:04:36.522: E/StrictMode(701): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
02-11 06:04:36.522: E/StrictMode(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
02-11 06:04:36.522: E/StrictMode(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
02-11 06:04:36.522: E/StrictMode(701): at com.android.emailcommon.service.ServiceProxy.test(ServiceProxy.java:191)
02-11 06:04:36.522: E/StrictMode(701): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1850)
02-11 06:04:36.522: E/StrictMode(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
02-11 06:04:36.522: E/StrictMode(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
02-11 06:04:36.522: E/StrictMode(701): at android.os.AsyncTask$2.call(AsyncTask.java:287)
02-11 06:04:36.522: E/StrictMode(701): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
02-11 06:04:36.522: E/StrictMode(701): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
02-11 06:04:36.522: E/StrictMode(701): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
02-11 06:04:36.522: E/StrictMode(701): at java.lang.Thread.run(Thread.java:856)
02-11 06:04:36.532: W/ActivityManager(298): Unbind failed: could not find connection for android.os.BinderProxy@40faf1f8
02-11 06:04:36.563: E/ActivityThread(701): Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d672d8 that was originally bound here
02-11 06:04:36.563: E/ActivityThread(701): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d672d8 that was originally bound here
02-11 06:04:36.563: E/ActivityThread(701): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
02-11 06:04:36.563: E/ActivityThread(701): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
02-11 06:04:36.563: E/ActivityThread(701): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
02-11 06:04:36.563: E/ActivityThread(701): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
02-11 06:04:36.563: E/ActivityThread(701): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
02-11 06:04:36.563: E/ActivityThread(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
02-11 06:04:36.563: E/ActivityThread(701): at android.os.AsyncTask$2.call(AsyncTask.java:287)
02-11 06:04:36.563: E/ActivityThread(701): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
02-11 06:04:36.563: E/ActivityThread(701): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
02-11 06:04:36.563: E/ActivityThread(701): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
02-11 06:04:36.563: E/ActivityThread(701): at java.lang.Thread.run(Thread.java:856)
02-11 06:04:36.582: D/dalvikvm(701): GC_CONCURRENT freed 465K, 20% free 2510K/3104K, paused 7ms+12ms, total 82ms
02-11 06:04:36.602: E/StrictMode(701): null
02-11 06:04:36.602: E/StrictMode(701): android.app.ServiceConnectionLeaked: Service com.android.exchange.ExchangeService has leaked ServiceConnection com.android.emailcommon.service.ServiceProxy$ProxyConnection@40d672d8 that was originally bound here
02-11 06:04:36.602: E/StrictMode(701): at android.app.LoadedApk$ServiceDispatcher.<init>(LoadedApk.java:969)
02-11 06:04:36.602: E/StrictMode(701): at android.app.LoadedApk.getServiceDispatcher(LoadedApk.java:863)
02-11 06:04:36.602: E/StrictMode(701): at android.app.ContextImpl.bindService(ContextImpl.java:1418)
02-11 06:04:36.602: E/StrictMode(701): at android.app.ContextImpl.bindService(ContextImpl.java:1407)
02-11 06:04:36.602: E/StrictMode(701): at android.content.ContextWrapper.bindService(ContextWrapper.java:473)
02-11 06:04:36.602: E/StrictMode(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:157)
02-11 06:04:36.602: E/StrictMode(701): at com.android.emailcommon.service.ServiceProxy.setTask(ServiceProxy.java:145)
02-11 06:04:36.602: E/StrictMode(701): at com.android.emailcommon.service.AccountServiceProxy.getDeviceId(AccountServiceProxy.java:116)
02-11 06:04:36.602: E/StrictMode(701): at com.android.exchange.ExchangeService.getDeviceId(ExchangeService.java:1249)
02-11 06:04:36.602: E/StrictMode(701): at com.android.exchange.ExchangeService$7.run(ExchangeService.java:1856)
02-11 06:04:36.602: E/StrictMode(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:551)
02-11 06:04:36.602: E/StrictMode(701): at com.android.emailcommon.utility.Utility$2.doInBackground(Utility.java:549)
02-11 06:04:36.602: E/StrictMode(701): at android.os.AsyncTask$2.call(AsyncTask.java:287)
02-11 06:04:36.602: E/StrictMode(701): at java.util.concurrent.FutureTask.run(FutureTask.java:234)
02-11 06:04:36.602: E/StrictMode(701): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
02-11 06:04:36.602: E/StrictMode(701): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
02-11 06:04:36.602: E/StrictMode(701): at java.lang.Thread.run(Thread.java:856)
02-11 06:04:36.602: W/ActivityManager(298): Unbind failed: could not find connection for android.os.BinderProxy@40e6ab38