我正在尝试在不同的线程上传联系人,我正在获取应用程序上下文但似乎无法正常工作。为什么呢?
以下是代码:
private void uploadall() {
new Thread(new Runnable() {
public void run() {
Contacts contacts = new Contacts(getApplicationContext());
contacts.phoneandname();
// Apps
ListApps mList = new ListApps();
mList.loadInstalledApps(false, getApplicationContext());
}
});
}
当我尝试在没有线程的情况下上传时,它完美地工作......为什么?
答案 0 :(得分:1)
您实际上并未启动该主题,请尝试以下操作:
private void uploadall() {
Thread thread = new Thread(new Runnable() {
public void run() {
...
}
});
thread.start();
}
在Java中开始使用多线程时,Oracle并发教程是一个非常好的资源,可以找到here。
答案 1 :(得分:1)
尝试:
private void uploadall() {
private Context context=getApplicationContext();
Thread thread = new Thread(new Runnable() {
public void run() {
Contacts contacts = new Contacts(context);
contacts.phoneandname();
// Apps
ListApps mList = new ListApps();
mList.loadInstalledApps(false,context);
}
});
thread.start();
}