Try this.
try {
    JSONObject jsonObject = new JSONObject("JSONResponse");
    String scode = jsonObject.optString("scode");
    JSONArray allmenuArray = jsonObject.optJSONArray("all_menu");
    for (int i = 0; i < allmenuArray.length(); i++) {
        JSONObject objectJson = allmenuArray.optJSONObject(i);
        boolean sub_menu = objectJson.getBoolean("sub_menu");
        String app_menu_id = objectJson.getString("app_menu_id");
        String app_menu_name = objectJson.getString("app_menu_name");
        JSONArray all_sub_menu = objectJson.getJSONArray("all_sub_menu");
        for (int j = 0; j < all_sub_menu.length(); j++) {
            JSONObject data = allmenuArray.optJSONObject(j);
            Log.e("app_menu_id", data.getString("app_menu_id"));
            Log.e("app_sub_menu_id", data.getString("app_sub_menu_id"));
            Log.e("app_sub_menu_name", data.getString("app_sub_menu_name"));
            Log.e("app_sub_menu_image", data.getString("app_sub_menu_image"));
        }
    }
} catch (JSONException e) {
    Log.e("ERROr", e.toString());
}
2
solved How to parse this type of json array in android?