Как узнать роли пользователя в cloudboost

Я пытаюсь получить все роли, назначенные пользователю, когда пользователь входит в систему, используя приведенный ниже код.

public class roles extends AsyncTask <String,Void,Void>{

       @Override
       protected Void doInBackground(String... params) {

           final CloudUser user = new CloudUser();
           final CloudRole role = new CloudRole("MCA");

           user.setUserName(params[0]);
           user.setPassword(params[1]);


               try {
                   user.logIn(new CloudUserCallback() {
                       @Override
                       public void done(CloudUser cloudUser, CloudException e) throws CloudException {
                           if (cloudUser != null) {
                               System.out.println("login Successful");
                               System.out.println(cloudUser.getUserName());
                               cloudUser.isInRole(role);
                           }
                           if (e != null) {
                               System.out.println("In logn exception");
                               e.printStackTrace();
                           }


                       }
                   });
               } catch (CloudException e) {
                   e.printStackTrace();
               }


               return null;
       }
    }

Я получаю следующую ошибку:

Это ошибка, возникавшая в версиях CloudBoost

public class roles extends AsyncTask <String,Void,Void>{

       @Override
       protected Void doInBackground(String... params) {

           final CloudUser user = new CloudUser();
           final CloudRole role = new CloudRole("MCA");

           user.setUserName(params[0]);
           user.setPassword(params[1]);


               try {
                   user.logIn(new CloudUserCallback() {
                       @Override
                       public void done(CloudUser cloudUser, CloudException e) throws CloudException {
                           if (cloudUser != null) {
                               System.out.println("login Successful");
                               System.out.println(cloudUser.getUserName());
                               cloudUser.isInRole(role);
                           }
                           if (e != null) {
                               System.out.println("In logn exception");
                               e.printStackTrace();
                           }


                       }
                   });
               } catch (CloudException e) {
                   e.printStackTrace();
               }


               return null;
       }
    }
до _2_, она была исправлена, пожалуйста, клонируйте последние исходники из github. или получите последнюю версию _3_, которая должна быть доступна на maven через несколько часов. отныне.


person Kr Rakesh    schedule 05.04.2016    source источник


Ответы (1)


НЕИСПРАВНОЕ ИСКЛЮЧЕНИЕ: процесс AsyncTask #1: com.rakesh_kr.image, PID: 31256 java.lang.RuntimeException: произошла ошибка при выполнении doInBackground() в android.os.AsyncTask$3.done(AsyncTask.java:300) в java. util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) в java.util.concurrent.FutureTask.setException(FutureTask.java:222) в java.util.concurrent.FutureTask.run(FutureTask.java:242) в android .os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) в java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) в java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) в java.lang.Thread.run(Thread.java:818) ) Вызвано: java.lang.ClassCastException: io.cloudboost.json.JSONArray не может быть приведен к java.util.ArrayList в io.cloudboost.CloudUser.isInRole(CloudUser.java:335) в com.rakesh_kr.image.MainActivity$ роли $1.done(MainActivity.java:174) в io.cloudboost.CloudUser.logIn(CloudUser.java:219) в com.rakesh_kr.image.MainActivity$roles.doInBackground(MainActivity.java:168) в com.rakesh_kr.image.MainActivity$roles.doInBackground(MainActivity.java:155) в android.os.AsyncTask$2.call(AsyncTask. java:288) в java.util.concurrent. FutureTask.run(FutureTask.java:237) в android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231) в java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) в java.util. concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) на java.lang.Thread.run(Thread.java:818)

person egimaben    schedule 06.04.2016