/** * ע�� * * @param account ע���ʺ� * @param password ע������ * @return 1��ע��ɹ� 0��������û�з��ؽ��2������˺��Ѿ�����3��ע��ʧ�� */ public String regist(String account, String password) { if (getConnection() == null) return "0"; AccountManager am = AccountManager.getInstance(getConnection()); am.sensitiveOperationOverInsecureConnection(true); try { am.createAccount(account, password); return "1"; } catch (NoResponseException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (XMPPErrorException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (NotConnectedException e) { // TODO Auto-generated catch block e.printStackTrace(); } return "3"; // Registration reg = new Registration(); // reg.setType(IQ.Type.set); // reg.setTo(getConnection().getServiceName()); // // ע������createAccountע��ʱ��������UserName������jid����"@"ǰ��IJ��֡� // reg.setUsername(account); // reg.setPassword(password); // // ���addAttribute����Ϊ�գ�������?����������־��android�ֻ��İɣ��������� // reg.addAttribute("android", "geolo_createUser_android"); // PacketFilter filter = new AndFilter(new PacketIDFilter( // reg.getPacketID()), new PacketTypeFilter(IQ.class)); // PacketCollector collector = getConnection().createPacketCollector( // filter); // getConnection().sendPacket(reg); // IQ result = (IQ) collector.nextResult(SmackConfiguration // .getDefaultPacketReplyTimeout()); // // Stop queuing resultsֹͣ����results���Ƿ�ɹ��Ľ�� // collector.cancel(); // if (result == null) { // Log.e("regist", "No response from server."); // return "0"; // } else if (result.getType() == IQ.Type.RESULT) { // Log.v("regist", "regist success."); // return "1"; // } else { // if (result.getType() == IQ.Type.ERROR) // if (result.getError().toString().equalsIgnoreCase("conflict(409)")) { // Log.e("regist", "IQ.Type.ERROR: " // + result.getError().toString()); // return "2"; // } else { // Log.e("regist", "IQ.Type.ERROR: " // + result.getError().toString()); // return "3"; // } // } }