Форум программистов, компьютерный форум CyberForum.ru

Android xml из интернета - Android

Восстановить пароль Регистрация
 
UProger
9 / 9 / 0
Регистрация: 19.04.2013
Сообщений: 592
24.06.2014, 10:09     Android xml из интернета #1
Оснакомился с этим уроком http://startandroid.ru/ru/uroki/vse-...arsim-xml.html

вроде всё нормально. Но мне надо распарсить xml из сети http://www.boi.org.il/currency.xml

тоесть надо его скачать для начала?

Подскажите плиз как изменить код из урока!?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
dan41k
]:->
 Аватар для dan41k
97 / 91 / 13
Регистрация: 12.11.2013
Сообщений: 398
24.06.2014, 10:24     Android xml из интернета #2
Примерно так
Java
1
2
3
4
5
6
7
8
try {
    XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
    factory.setNamespaceAware(true);
    XmlPullParser xpp = factory.newPullParser();
    URL url = new URL("http://www.boi.org.il/currency.xml");
    InputStream stream = url.openStream();
    xpp.setInput(stream, null);
} catch
UProger
9 / 9 / 0
Регистрация: 19.04.2013
Сообщений: 592
24.06.2014, 10:56  [ТС]     Android xml из интернета #3
А куда это вмьавиьь в выше привндённом примере?
YuraAAA
 Аватар для YuraAAA
1563 / 1305 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
24.06.2014, 11:08     Android xml из интернета #4
Цитата Сообщение от UProger Посмотреть сообщение
вмьавиьь
что?
dan41k
]:->
 Аватар для dan41k
97 / 91 / 13
Регистрация: 12.11.2013
Сообщений: 398
24.06.2014, 11:23     Android xml из интернета #5
где-то здесь вмьавь
Java
1
2
3
4
5
6
7
8
@Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    String tmp = "";
 
    try {
      XmlPullParser xpp = prepareXpp();
UProger
9 / 9 / 0
Регистрация: 19.04.2013
Сообщений: 592
24.06.2014, 12:05  [ТС]     Android xml из интернета #6
Имел ввиду вставить. Пардон на телефоне клава не удобная. да и на ходу писать не удобно

а куда я получу ответ? в xpp??
UProger
9 / 9 / 0
Регистрация: 19.04.2013
Сообщений: 592
24.06.2014, 12:41  [ТС]     Android xml из интернета #7
Попытался изменить не получается. Вот код активити:

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
package com.andrik.parserproject;
import java.io.IOException;
import java.io.InputStream;
import java.io.StringReader;
import java.net.URL;
 
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserException;
import org.xmlpull.v1.XmlPullParserFactory;
 
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.util.Log;
import android.widget.TextView;
 
public class MainActivity extends Activity {
 
  final String LOG_TAG = "myLogs";
 
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);
    String tmp = "";
    TextView textView = (TextView) findViewById(R.id.simple_text);
    //textView.setText("3123123123");
 
    
    try {
      XmlPullParser xpp = prepareXpp();
      
      XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
      factory.setNamespaceAware(true);
  //    XmlPullParser xpp = factory.newPullParser();
      URL url = new URL("http://www.boi.org.il/currency.xml");
      InputStream stream = url.openStream();
      xpp.setInput(stream, null);
      
      while (xpp.getEventType() != XmlPullParser.END_DOCUMENT) {
        switch (xpp.getEventType()) {
        // начало документа
        case XmlPullParser.START_DOCUMENT:
          Log.d(LOG_TAG, "START_DOCUMENT");
          break;
        // начало тэга
        case XmlPullParser.START_TAG:
          Log.d(LOG_TAG, "START_TAG: name = " + xpp.getName()
              + ", depth = " + xpp.getDepth() + ", attrCount = "
              + xpp.getAttributeCount());
          tmp = "";
          for (int i = 0; i < xpp.getAttributeCount(); i++) {
            tmp = tmp + xpp.getAttributeName(i) + " = "
                + xpp.getAttributeValue(i) + ", ";
          }
          if (!TextUtils.isEmpty(tmp))
            Log.d(LOG_TAG, "Attributes: " + tmp);
          break;
        // конец тэга
        case XmlPullParser.END_TAG:
          Log.d(LOG_TAG, "END_TAG: name = " + xpp.getName());
          break;
        // содержимое тэга
        case XmlPullParser.TEXT:
          Log.d(LOG_TAG, "text = " + xpp.getText());
          break;
 
        default:
          break;
        }
        // следующий элемент
        xpp.next();
      }
      textView.setText("3123123123");
      Log.d(LOG_TAG, "END_DOCUMENT");
 
    } catch (XmlPullParserException e) {
      e.printStackTrace();
    } catch (IOException e) {
      e.printStackTrace();
    }
  }
 
  XmlPullParser prepareXpp() throws XmlPullParserException {
        // получаем фабрику
        XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
        // включаем поддержку namespace (по умолчанию выключена)
        factory.setNamespaceAware(true);
        // создаем парсер
        XmlPullParser xpp = factory.newPullParser();
        // даем парсеру на вход Reader
        xpp.setInput(new StringReader(
                "<data><phone><company>Samsung</company></phone></data>"));
        return xpp;
      }
}
ошибки из лога в приложении

как поправить?
Вложения
Тип файла: txt log.txt (3.9 Кб, 5 просмотров)
dan41k
]:->
 Аватар для dan41k
97 / 91 / 13
Регистрация: 12.11.2013
Сообщений: 398
24.06.2014, 12:48     Android xml из интернета #8
коннект к интернету в Android следует выполнять в отдельном потоке
UProger
9 / 9 / 0
Регистрация: 19.04.2013
Сообщений: 592
24.06.2014, 13:09  [ТС]     Android xml из интернета #9
Можете проилюстрировать. Просто я джавой практмчески ее занимался раньше
dan41k
]:->
 Аватар для dan41k
97 / 91 / 13
Регистрация: 12.11.2013
Сообщений: 398
24.06.2014, 13:15     Android xml из интернета #10
Это основы, без которых нет смысла продолжать изучать Android. Зайдите в гугл и напишите что-то вроде: "Как создать поток на Java".
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.06.2014, 08:10     Android xml из интернета
Еще ссылки по теме:

Android Как открыть клавиатуру Android без xml
Android XML элемент Android
Android Android: трудности с отправкой запроса по url и обработкой в виде xml
Подключение бибилиотеки XML RPC в проект для Android Studio Android
Android Закомментировать текст XML в Android Studio

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Rube
910 / 558 / 87
Регистрация: 13.02.2014
Сообщений: 2,064
25.06.2014, 08:10     Android xml из интернета #11
Цитата Сообщение от UProger Посмотреть сообщение
Можете проилюстрировать
Ищи в поиске на форуме AsyncTask.
Yandex
Объявления
25.06.2014, 08:10     Android xml из интернета
Ответ Создать тему
Опции темы

Текущее время: 06:08. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru