以下のコードを使用して、ユーザーがログインしたときにユーザーに割り当てられたすべての役割を取得しようとしています。クラウドブースト内のユーザーの役割を見つける方法
致命的な例外:AsyncTask#1 プロセス:com.rakesh_kr.image、PID:31256 java.lang.RuntimeException:
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;
}
}
私は、次のエラーを取得しています実行中にエラーが発生しましたdoInBackground() android.os.AsyncTask $ 3.done(AsyncTask.java:300) at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:355) at java.util.concurrent.FutureTask.setExcepti on(FutureTask.java:222) at java.util.concurrent.FutureTask.run(FutureTask.java:242) android.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask.java:231) at java.util .concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at 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にキャストできません。 at io.cloudboost.CloudUser.isInRole(CloudUser.java:335) at com.rakesh_kr.image.MainActivity $ roles $ 1.done(MainActivity.java:174) io.cloudboost.CloudUser.logIn(CloudUser.java:219) com.rakesh_kr.image.MainActivity $ roles.doInBackground(MainActivity.java:168) at com.rakesh_kr.image.MainActivity $ roles.doInBackground MainActivity.java:155) android.os.AsyncTask $ 2.call(AsyncTask.java:288) at java.util.concurrent.FutureTask.run(FutureTask.java:237) android.os.AsyncTask $ SerialExecutor $ 1.run(AsyncTask.java:231) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:587) at j ava.lang.Thread.run(Thread.java:818)