2016-05-18 51 views
-3

初めてログインするとすぐにログインします。彼はこのアクティビティに参加するはずですが、ログインに成功するとすぐに私のホームページにアプリがクラッシュします。私はrecyclerviewを表示していますjsonを解析することで私のアプリが起動するとすぐにクラッシュする

私のコード:

public class events_home extends Fragment { 

    public String get_events=""; 
    public RequestQueue requestQueue; 
    public StringRequest stringRequest; 
    public String college_name; 
    public RecyclerView recyclerView; 
    public LinearLayoutManager llm; 
    public List<events> events; 
    @Nullable 
    @Override 
    public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { 
     View v = inflater.inflate(R.layout.events_home,container,false); 
     recyclerView = (RecyclerView) v.findViewById(R.id.neostat_home_recycleview); 


     SharedPreferences sha1 = getActivity().getSharedPreferences("user_data", Context.MODE_PRIVATE); 
     college_name = sha1.getString("college_name",null); 
     llm = new LinearLayoutManager(getContext()); 
     recyclerView.setLayoutManager(llm); 
     System.out.print(college_name); 
     requestQueue = Volley.newRequestQueue(getContext()); 
     stringRequest = new StringRequest(Request.Method.POST, get_events, new Response.Listener<String>() { 
      @Override 
      public void onResponse(String response) { 

       try { 
        JSONArray jsonArray = new JSONArray(response); 

        for (int i=0;i<jsonArray.length();i++) 
        { 
         JSONObject jsonObject = jsonArray.getJSONObject(i); 
         events = new ArrayList<>(); 
         events.add(new events(jsonObject.getString("title"),jsonObject.getString("image"))); 

        } 

        events_adapter eventsAdapter = new events_adapter(events); 
     recyclerView.setAdapter(eventsAdapter); 

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


      } 
     }, new Response.ErrorListener() { 
      @Override 
      public void onErrorResponse(VolleyError error) { 

      } 
     }) 
     { 
      @Override 
      protected Map<String, String> getParams() throws AuthFailureError { 
       HashMap<String,String> hashMap = new HashMap<String,String>(); 
       hashMap.put("college_name",""); 
       return hashMap; 
      } 
     }; 





requestQueue.add(stringRequest); 

     return v; 
    } 
} 

私の新しいログ:

05-18 19:1 

7:09.564 19049-19119/com.ph.com.neostat I/OpenGLRenderer: Initialized EGL, version 1.4 
05-18 19:17:09.652 19049-19119/com.ph.com.neostat W/EGL_emulation: eglSurfaceAttrib not implemented 
05-18 19:17:09.653 19049-19119/com.ph.com.neostat W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xaa768c20, error=EGL_SUCCESS 
05-18 19:17:09.956 19049-19059/com.ph.com.neostat I/art: Background sticky concurrent mark sweep GC freed 1812(244KB) AllocSpace objects, 0(0B) LOS objects, 24% free, 1298KB/1717KB, paused 5.285ms total 78.007ms 
05-18 19:17:09.996 19049-19049/com.ph.com.neostat I/Choreographer: Skipped 30 frames! The application may be doing too much work on its main thread. 
05-18 19:17:10.213 1668-1695/system_process I/ActivityManager: Displayed com.ph.com.neostat/.Login_Virgin: +2s3ms 
05-18 19:17:12.845 1966-1966/com.android.inputmethod.latin I/LatinIME: Starting input. Cursor position = 0,0 
05-18 19:17:12.928 19049-19119/com.ph.com.neostat W/EGL_emulation: eglSurfaceAttrib not implemented 
05-18 19:17:12.928 19049-19119/com.ph.com.neostat W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xaec13fe0, error=EGL_SUCCESS 
05-18 19:17:13.200 1966-2852/com.android.inputmethod.latin W/EGL_emulation: eglSurfaceAttrib not implemented 
05-18 19:17:13.200 1966-2852/com.android.inputmethod.latin W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xad954040, error=EGL_SUCCESS 
05-18 19:17:13.869 19049-19119/com.ph.com.neostat E/Surface: getSlotFromBufferLocked: unknown buffer: 0xb2ef5aa0 
05-18 19:17:21.843 1966-1966/com.android.inputmethod.latin I/LatinIME: Starting input. Cursor position = 8,8 
05-18 19:17:21.899 19049-19119/com.ph.com.neostat W/EGL_emulation: eglSurfaceAttrib not implemented 
05-18 19:17:21.899 19049-19119/com.ph.com.neostat W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xa2bfbc20, error=EGL_SUCCESS 
05-18 19:17:22.216 19049-19119/com.ph.com.neostat E/Surface: getSlotFromBufferLocked: unknown buffer: 0xb2ef5a30 
05-18 19:17:29.101 1668-11719/system_process I/ActivityManager: START u0 {cmp=com.ph.com.neostat/.app_homepage} from uid 10057 on display 0 
05-18 19:17:29.402 19049-19049/com.ph.com.neostat W/FragmentManager: moveToState: Fragment state for classified_home{9b49ebC#0 id=0x7f0c006a android:switcher:2131492970:1} not updated inline; expected state 3 found 2 
05-18 19:17:29.636 19049-19119/com.ph.com.neostat W/EGL_emulation: eglSurfaceAttrib not implemented 
05-18 19:17:29.636 19049-19119/com.ph.com.neostat W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0xad959120, error=EGL_SUCCESS 
05-18 19:17:29.842 19049-19049/com.ph.com.neostat E/RecyclerView: No adapter attached; skipping layout 
05-18 19:17:29.886 1668-1695/system_process I/ActivityManager: Displayed com.ph.com.neostat/.app_homepage: +769ms 
05-18 19:17:29.942 19049-19049/com.ph.com.neostat E/RecyclerView: No adapter attached; skipping layout 
05-18 19:17:30.153 1966-2852/com.android.inputmethod.latin E/Surface: getSlotFromBufferLocked: unknown buffer: 0xab269e80 
05-18 19:17:30.198 19049-19119/com.ph.com.neostat E/Surface: getSlotFromBufferLocked: unknown buffer: 0xb2ef5950 
05-18 19:17:30.299 19049-19049/com.ph.com.neostat E/RecyclerView: No adapter attached; skipping layout 
05-18 19:17:37.945 19049-19049/com.ph.com.neostat W/ViewRootImpl: Cancelling event due to no window focus: MotionEvent { action=ACTION_CANCEL, actionButton=0, id[0]=0, x[0]=523.4546, y[0]=990.46875, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=1771922, downTime=1761851, deviceId=0, source=0x1002 } 
05-18 19:17:37.959 19049-19049/com.ph.com.neostat W/ViewRootImpl: Cancelling event due to no window focus: MotionEvent { action=ACTION_CANCEL, actionButton=0, id[0]=0, x[0]=523.4546, y[0]=990.46875, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=1771922, downTime=1761851, deviceId=0, source=0x1002 } 
05-18 19:17:37.959 19049-19049/com.ph.com.neostat W/ViewRootImpl: Cancelling event due to no window focus: MotionEvent { action=ACTION_CANCEL, actionButton=0, id[0]=0, x[0]=523.4546, y[0]=990.46875, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=1771922, downTime=1761851, deviceId=0, source=0x1002 } 
05-18 19:17:37.959 19049-19049/com.ph.com.neostat W/ViewRootImpl: Cancelling event due to no window focus: MotionEvent { action=ACTION_CANCEL, actionButton=0, id[0]=0, x[0]=523.4546, y[0]=990.46875, toolType[0]=TOOL_TYPE_FINGER, buttonState=0, metaState=0, flags=0x0, edgeFlags=0x0, pointerCount=1, historySize=0, eventTime=1771922, downTime=1761851, deviceId=0, source=0x1002 } 
05-18 19:18:06.027 1668-1690/system_process E/BluetoothAdapter: Bluetooth binder is null 
05-18 19:18:06.028 1668-1690/system_process E/KernelCpuSpeedReader: Failed to read cpu-freq 
                    java.io.FileNotFoundException: /sys/devices/system/cpu/cpu0/cpufreq/stats/time_in_state: open failed: ENOENT (No such file or directory) 
                     at libcore.io.IoBridge.open(IoBridge.java:452) 
                     at java.io.FileInputStream.<init>(FileInputStream.java:76) 
                     at java.io.FileInputStream.<init>(FileInputStream.java:103) 
                     at java.io.FileReader.<init>(FileReader.java:66) 
                     at com.android.internal.os.KernelCpuSpeedReader.readDelta(KernelCpuSpeedReader.java:49) 
                     at com.android.internal.os.BatteryStatsImpl.updateCpuTimeLocked(BatteryStatsImpl.java:8002) 
                     at com.android.server.am.BatteryStatsService.updateExternalStats(BatteryStatsService.java:1366) 
                     at com.android.server.am.BatteryStatsService$BatteryStatsHandler.handleMessage(BatteryStatsService.java:125) 
                     at android.os.Handler.dispatchMessage(Handler.java:102) 
                     at android.os.Looper.loop(Looper.java:148) 
                     at android.os.HandlerThread.run(HandlerThread.java:61) 
                     at com.android.server.ServiceThread.run(ServiceThread.java:46) 
                    Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory) 
                     at libcore.io.Posix.open(Native Method) 
                     at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186) 
                     at libcore.io.IoBridge.open(IoBridge.java:438) 
                     at java.io.FileInputStream.<init>(FileInputStream.java:76)  
                     at java.io.FileInputStream.<init>(FileInputStream.java:103)  
                     at java.io.FileReader.<init>(FileReader.java:66)  
                     at com.android.internal.os.KernelCpuSpeedReader.readDelta(KernelCpuSpeedReader.java:49)  
                     at com.android.internal.os.BatteryStatsImpl.updateCpuTimeLocked(BatteryStatsImpl.java:8002)  
                     at com.android.server.am.BatteryStatsService.updateExternalStats(BatteryStatsService.java:1366)  
                     at com.android.server.am.BatteryStatsService$BatteryStatsHandler.handleMessage(BatteryStatsService.java:125)  
                     at android.os.Handler.dispatchMessage(Handler.java:102)  
                     at android.os.Looper.loop(Looper.java:148)  
                     at android.os.HandlerThread.run(HandlerThread.java:61)  
                     at com.android.server.ServiceThread.run(ServiceThread.java:46)  
05-18 19:18:06.029 1668-1690/system_process E/KernelUidCpuTimeReader: Failed to read uid_cputime 
                     java.io.FileNotFoundException: /proc/uid_cputime/show_uid_stat: open failed: ENOENT (No such file or directory) 
                      at libcore.io.IoBridge.open(IoBridge.java:452) 
                      at java.io.FileInputStream.<init>(FileInputStream.java:76) 
                      at java.io.FileInputStream.<init>(FileInputStream.java:103) 
                      at java.io.FileReader.<init>(FileReader.java:66) 
                      at com.android.internal.os.KernelUidCpuTimeReader.readDelta(KernelUidCpuTimeReader.java:71) 
                      at com.android.internal.os.BatteryStatsImpl.updateCpuTimeLocked(BatteryStatsImpl.java:8031) 
                      at com.android.server.am.BatteryStatsService.updateExternalStats(BatteryStatsService.java:1366) 
                      at com.android.server.am.BatteryStatsService$BatteryStatsHandler.handleMessage(BatteryStatsService.java:125) 
                      at android.os.Handler.dispatchMessage(Handler.java:102) 
                      at android.os.Looper.loop(Looper.java:148) 
                      at android.os.HandlerThread.run(HandlerThread.java:61) 
                      at com.android.server.ServiceThread.run(ServiceThread.java:46) 
                     Caused by: android.system.ErrnoException: open failed: ENOENT (No such file or directory) 
                      at libcore.io.Posix.open(Native Method) 
                      at libcore.io.BlockGuardOs.open(BlockGuardOs.java:186) 
                      at libcore.io.IoBridge.open(IoBridge.java:438) 
                      at java.io.FileInputStream.<init>(FileInputStream.java:76)  
                      at java.io.FileInputStream.<init>(FileInputStream.java:103)  
                      at java.io.FileReader.<init>(FileReader.java:66)  
                      at com.android.internal.os.KernelUidCpuTimeReader.readDelta(KernelUidCpuTimeReader.java:71)  
                      at com.android.internal.os.BatteryStatsImpl.updateCpuTimeLocked(BatteryStatsImpl.java:8031)  
                      at com.android.server.am.BatteryStatsService.updateExternalStats(BatteryStatsService.java:1366)  
                      at com.android.server.am.BatteryStatsService$BatteryStatsHandler.handleMessage(BatteryStatsService.java:125)  
                      at android.os.Handler.dispatchMessage(Handler.java:102)  
                      at android.os.Looper.loop(Looper.java:148)  
                      at android.os.HandlerThread.run(HandlerThread.java:61)  
                      at com.android.server.ServiceThread.run(ServiceThread.java:46)  
05-18 19:18:06.030 1668-1690/system_process E/KernelWakelockReader: neither /proc/wakelocks nor /d/wakeup_sources exists 
05-18 19:18:06.039 1668-1690/system_process W/BatteryStatsImpl: Couldn't get kernel wake lock stats 
+0

java.lang.NullPointerException:ヌルオブジェクトリファレンスでインターフェイスメソッド 'int java.util.List.size()'を呼び出そうとしました –

+0

public List events = new new ArrayList (); –

+0

また、イベントクラスを投稿する –

答えて

0

あなたがリサイクルビューの空のリストにアクセスしていることを示している、とあなたのコードごとに、あなたが持っていることをはっきりと見えますアダプターのメソッドをレスポンスの外に置いて、アダプターを空にして埋め込むことができないようにします。

以下のコードを変更してみてください。あなたのコード

 events_adapter eventsAdapter = new events_adapter(events); 
    recyclerView.setAdapter(eventsAdapter); 

からライン以下

最初のカットさて、以下のように応答方法でそれを貼り付けます。

 @Override 
     public void onResponse(String response) { 

      try { 
       JSONArray jsonArray = new JSONArray(response); 

       for (int i=0;i<jsonArray.length();i++) 
       { 
        JSONObject jsonObject = jsonArray.getJSONObject(i); 
        events = new ArrayList<>(); 
        events.add(new events(jsonObject.getString("title"),jsonObject.getString("image"))); 

       } 

       events_adapter eventsAdapter = new events_adapter(events); 
       recyclerView.setAdapter(eventsAdapter); 

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


     } 

これは、問題を解決するのに役立ちます。

+0

私の活動はロードされていますが、 ! :返信いただきありがとうございます。:) – dheeraj

関連する問題