Android Open Source - guides Load Guide J S O N






From Project

Back to project page guides.

License

The source code is released under:

GNU General Public License

If you think the Android project guides listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

//        Guidebook is an Android application that reads audioguides using Text-to-Speech services.
//        Copyright (C) 2013  Adrin Romero Corchado
///*  ww w.  ja  v a  2 s. c o m*/
//        This program is free software: you can redistribute it and/or modify
//        it under the terms of the GNU General Public License as published by
//        the Free Software Foundation, either version 3 of the License, or
//        (at your option) any later version.
//
//        This program is distributed in the hope that it will be useful,
//        but WITHOUT ANY WARRANTY; without even the implied warranty of
//        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//        GNU General Public License for more details.
//
//        You should have received a copy of the GNU General Public License
//        along with this program.  If not, see <http://www.gnu.org/licenses/>.

package com.adrguides;

import android.content.Context;
import android.util.Log;

import com.adrguides.model.Guide;
import com.adrguides.model.Place;
import com.adrguides.model.Section;

import org.json.JSONArray;
import org.json.JSONObject;

import java.net.URL;

/**
 * Created by adrian on 18/09/13.
 */
public class LoadGuideJSON extends LoadGuide {

    public LoadGuideJSON(Context context, int imagesize) {
        super(context, imagesize);
    }

    @Override
    protected Guide load_imp(URL address, String text) throws Exception {

        JSONObject data = new JSONObject(text);

        Guide guide = new Guide();

        if (data.has("address")) {
            guide.setAddress(new URL(address, data.getString("address")).toString());
        }
        guide.setTitle(data.getString("title"));
        guide.setDescription(data.optString("description"));
        guide.setAuthor(data.optString("author"));
        guide.setKeywords(data.optString("keywords"));
        guide.setLanguage(data.optString("language", "en"));
        guide.setCountry(data.optString("country", "US"));
        guide.setVariant(data.optString("variant", ""));

        JSONArray chapters = data.getJSONArray("chapters");
        for (int i = 0; i < chapters.length(); i++) {
            final JSONObject chapter = chapters.getJSONObject(i);
            final Place p = new Place();
            p.setId(chapter.has("id") ? chapter.getString("id") : null);
            p.setTitle(chapter.getString("title"));

            JSONArray paragraphs = chapter.getJSONArray("paragraphs");
            for (int j = 0; j < paragraphs.length(); j++) {
                final Section section = new Section();
                final JSONObject s = paragraphs.optJSONObject(j);
                if (s == null) {
                    section.setText(paragraphs.getString(j));
                } else {
                    section.setText(s.getString("text"));
                    section.setRead(s.optString("read"));
                    section.setImageURL(loadImage(address, s.optString("image")));
                }
                p.getSections().add(section);
            }
            guide.getPlaces().add(p);
        }
        return guide;
    }
}




Java Source Code List

com.adrguides.AboutActivity.java
com.adrguides.AlertFragment.java
com.adrguides.DeleteGuideBookTask.java
com.adrguides.GuideBookItemAdapter.java
com.adrguides.GuideBookItem.java
com.adrguides.ListDialogFragment.java
com.adrguides.LoadFragment.java
com.adrguides.LoadGuideFragment.java
com.adrguides.LoadGuideHTML.java
com.adrguides.LoadGuideJSON.java
com.adrguides.LoadGuide.java
com.adrguides.LoadedGuide.java
com.adrguides.MainActivity.java
com.adrguides.MessageDialogFragment.java
com.adrguides.ReadGuideActivity.java
com.adrguides.ReadGuideFragment.java
com.adrguides.SearchViewGuides.java
com.adrguides.SettingsActivity.java
com.adrguides.SettingsFragment.java
com.adrguides.TTSFragment.java
com.adrguides.WebViewActivity.java
com.adrguides.model.Guide.java
com.adrguides.model.Place.java
com.adrguides.model.Section.java
com.adrguides.robobunny.SeekBarLogPreference.java
com.adrguides.robobunny.SeekBarPreference.java
com.adrguides.utils.GuidesException.java
com.adrguides.utils.HTTPUtils.java