在Android中启动服务花费很多时间

时间:2012-08-22 12:04:45

标签: android service

所以这就是情况。我有一个登录屏幕(活动)到我的应用程序,并在另一个屏幕显示一些东西(现在的另一个按钮)和开始服务juste。此服务正在为聊天启动xmpp连接。

我想要的是当我在登录界面按连接时,出现下一个屏幕并开始服务。

但是目前,当我按连接时,登录屏幕会停留大约2秒,而下一个屏幕会启动服务。我知道这是服务呼叫减慢一切,因为当评论屏幕快速出现时。

只有onCreate在屏幕上编码,我也尝试使用AsyncTask,但它没有改变任何东西:

public void onCreate(Bundle savedInstanceState) 
{
    super.onCreate(savedInstanceState);
    setContentView(R.layout.ecrancoreglayout);

    next = (Button)findViewById(R.id.boutonContinuer);
    next.setOnClickListener(this);

    Intent service_intent = new Intent(this, ChatService.class);
    startService(service_intent);
    //new ConnectWork().execute();
}

服务看起来像这样,initConnection是连接到xmpp并获取名单和东西的函数......:

public class ChatService extends Service
{

@Override
public void onCreate()
{
    super.onCreate();
    packetListener = new MessageListener();
}

@Override  
public int onStartCommand(Intent intent, int flags, int startId)
{  
    initConnection();

    handler = new Handler();
    return START_NOT_STICKY;  
}  


@Override
public IBinder onBind(Intent intent)
{
    return null;
}
}

我做错了什么?

0 个答案:

没有答案