@Override
 protected void onPostExecute(User user) {
   if (user == null) {
     mListener.onFinish(null);
     return;
   }
   UserData userData = new UserData(user);
   mApp.setUserData(userData);
   mListener.onFinish(userData);
 }
  @Override
  protected void onPostExecute(Void aVoid) {
    super.onPostExecute(aVoid);

    listener.onTaskCompleted("Синхронизация завершена.", MainActivity.ACTNS_BTNS);
  }
示例#3
0
 @Override
 protected void onPostExecute(String result) {
   super.onPostExecute(result);
   taskListener.onTaskCompleted(result, taskType);
   dialog.dismiss();
 }
 @Override
 protected void onPreExecute() {
   listener.onTaskBegin("Синхронизация...", MainActivity.ACTNS_BTNS);
   super.onPreExecute();
 }
  private void fillSyncContactsList() {
    ArrayList<String> vkNames = getContactNames(vkFriends);
    boolean[] vkNamesUsed = new boolean[vkNames.size()];
    Arrays.fill(vkNamesUsed, false);

    ArrayList<String> fbNames = getContactNames(fbFriends);
    boolean[] fbNamesUsed = new boolean[fbNames.size()];
    Arrays.fill(fbNamesUsed, false);

    Queue<Pair<String, String>> phonebookNames = phonebook.getContactNames();
    syncContacts.clear();

    Handler mainHandler = new Handler(Looper.getMainLooper());
    mainHandler.post(
        new Runnable() {
          @Override
          public void run() {
            listener.onTaskBegin(MAPPING_CAPTION, phonebook.getContactNames().size(), new int[] {});
          }
        });

    while (!phonebookNames.isEmpty()) {
      // Создаём новый SyncContact. SyncContact.java для подробностей
      SyncContact item = new SyncContact();

      // получить текущее имя контакта с телефона
      Pair<String, String> pbItem = phonebookNames.remove();
      String currentName = pbItem.first;
      String currentNumber = pbItem.second;
      // добавить его в se
      item.setPhonebookName(currentName);
      item.setPhonebookMobileNumber(currentNumber);

      int pos = findSimilarContact(currentName, vkNames);
      if (pos != -1) {
        item.setVkContact(vkFriends.get(pos));
        vkNamesUsed[pos] = true;
      } else {
        item.setVkContact(null);
      }

      pos = findSimilarContact(currentName, fbNames);
      if (pos != -1) {
        item.setFbContact(fbFriends.get(pos));
        fbNamesUsed[pos] = true;
      } else {
        item.setFbContact(null);
      }

      // добавить item в синхронизированный список контактов
      syncContacts.add(item);
      listener.onTaskProgress(syncContacts.size());
    }

    mainHandler.post(
        new Runnable() {
          @Override
          public void run() {
            listener.onTaskCompleted(OK, new int[] {});
          }
        });

    for (int i = 0; i < vkNamesUsed.length; ++i) {
      if (!vkNamesUsed[i]) {
        SyncContact item = new SyncContact();
        item.setPhonebookName("");
        item.setVkContact(vkFriends.get(i));
        item.setFbContact(null);
        syncContacts.add(item);
      }
    }

    for (int i = 0; i < fbNamesUsed.length; ++i) {
      if (!fbNamesUsed[i]) {
        SyncContact item = new SyncContact();
        item.setPhonebookName("");
        item.setVkContact(null);
        item.setFbContact(fbFriends.get(i));
        syncContacts.add(item);
      }
    }
  }
示例#6
0
 @Override
 protected void onPreExecute() {
   listener.onPreExecute();
 }
示例#7
0
 @Override
 protected void onPostExecute(String result) {
   listener.onPostExecute(result, context);
 }
 @Override
 protected void onPostExecute(List<Carta> result) {
   super.onPostExecute(result);
   asyncTaskListener.onFinish(result);
 }