我在使用后台服务时遇到问题.
我正在使用2项活动的服务.
第一个活动启动Servicewith startService(intent)并与之绑定bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
这完美的作品,我可以送Message在onServiceConnected().
第二个活动仅与Service(因为它已经开始)绑定,再次使用bindService(intent, mConnection, Context.BIND_AUTO_CREATE);
现在这是我的问题:
在第二个活动中Button,当我按下它时,我应该使用该服务.
但是,onServiceConnected()在此活动中从未调用过,因此我无法使用绑定器创建一个Messenger发送Message到服务器的活动.
有谁知道什么时候onServiceConnected()被确切地叫,或者它可能在等什么?
或者也许别的东西来解决这个问题?
编辑: bindService返回false,这可能导致什么?
提前致谢
如上所述,是自动完成的吗?一旦定位chMYanges,我的清单是空的?和不,我需要改变方向=)
我的适配器
public class ResultsAdapter extends ArrayAdapter<SearchItem> implements Filterable{
private ArrayList<SearchItem> subItems;
private ArrayList<SearchItem> allItems;// = new ArrayList<SearchItem>();
private LayoutInflater inflater;
private PTypeFilter filter;
private OnCheckedChangeListener test;
public ResultsAdapter(Context context, int textViewResourceId, ArrayList<SearchItem> items,OnCheckedChangeListener a) {
super(context, textViewResourceId, items);
//this.subItems = items;
for( int i = 0;i < items.size();i++){
subItems.add(items.get(i));
}
this.allItems = this.subItems;
inflater= LayoutInflater.from(context);
test = a;
}
Run Code Online (Sandbox Code Playgroud)
我的onCreate
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView lvr = (ListView)findViewById(R.id.search_results);
// if(savedInstanceState == null){
this.m_adapter = new ResultsAdapter(home.this, …Run Code Online (Sandbox Code Playgroud) 我有一个包含 2 个服务的应用程序。一项服务用于显示通知,另一项服务用于向 Web 服务发送 SOAP 请求。是否可以从一个活动绑定到两个服务?