Как качать .json с интернета, а не из приложения?

278
19 июня 2017, 19:56

Использую данные в формате JSON , которые хранятся внутри приложения в папке assets/station/music.json

Как заставить приложение получать этот самый файл .json из интернета?

Можно ли изменить что-либо в этом классе, чтоб приложение получало этот файл по адресу URL?

public class Directory {
    private static final String TAG = Log.buildTag(Directory.class);
    private static List<Station> stations = null;
    private static Map<String, Station> stationIndex = new HashMap<>();
    public static void loadStations(final Context context) {
        stations = new ArrayList<>();
        final AssetManager assetManager = context.getAssets();
        String paths[] = new String[0];
        try {
            paths = assetManager.list("stations");
        } catch (IOException e) {
            Log.e(TAG, "error loading stations", e);
            return;
        }
        for (String path : paths) {
            if (!path.endsWith(".json"))
                continue;
            final Gson gson = new Gson();
            Type listType = new TypeToken<ArrayList<Station>>() {}.getType();
            List<Station> chunk = null;
            try {
                chunk = gson.fromJson(new InputStreamReader(assetManager.open("stations/" + path), "UTF-8"), listType);
                stations.addAll(chunk);
            } catch (IOException e) {
                Log.e(TAG, "error loading station: %s", e, path);
            }
        }
        Station.sort(stations);
        indexStations(stations);
    }
    private static void indexStations(final List<Station> stations) {
        stationIndex.clear();
        for (Station station : stations) {
            stationIndex.put(station.getStationUrl(), station);
        }
    }
    public static List<Station> getStations() {
        return stations;
    }
    public static Station getStation(final String url) {
        return stationIndex.get(url);
    }
}
READ ALSO
Параметры метода Java

Параметры метода Java

Как сделать, чтобы s1 и s2 передавались в setLogView по отдельности, а там складывались?

591
Не обновляется ListView после подгрузки

Не обновляется ListView после подгрузки

Подскажите не работает добавление в ListViewЗапрос работает, а список не обновляется

275
конвертация json в java class

конвертация json в java class

Делаю погоду и столкнулся с проблемой конвертации json в javaПроблема в том что сайт http://bulk

319
Правильно ли держать cache в ServletContext?

Правильно ли держать cache в ServletContext?

Есть приложение которое занимается тем что отдает и редактирует профили пользователейМне надо организовать кеширование объектов User которые...

280