Форум программистов, компьютерный форум, киберфорум
Наши страницы

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.82
ASDFD12
46 / 46 / 11
Регистрация: 15.09.2012
Сообщений: 488
#1

Парсинг XML на АНДРОИД - Программирование Android

30.11.2013, 11:08. Просмотров 1565. Ответов 9
Метки нет (Все метки)

Суть приложения - парсит XML файл с сервера ( извлекает значение тега <bid>). Выводит это значение в текстовое поле. В процесе отладки приложение установил что не выполняется участок кода отвечающий именно за парсинг. Компилятор ошыбок не показывает. В програмировании на андроид я новичек. Участок кода отвечающий за парсинг писал на java, компилировал через JRE на Windows, получил class файл. Все работало. Попытался перенести этот код на Андроид - не работает. В чем ошыбка ?
Мой файл MainActivity.java
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
package com.example.hello;
 
import android.provider.DocumentsContract;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBar;
import android.support.v4.app.Fragment;
import android.os.Bundle;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.TextureView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
 
import org.w3c.dom.Document;
import org.w3c.dom.Element;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;
 
import java.net.HttpURLConnection;
 
import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
 
 
 
public class MainActivity extends ActionBarActivity {
 
    String a= "BARAN";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
       try
       {
            DocumentBuilderFactory dbf= DocumentBuilderFactory.newInstance();
           DocumentBuilder db = dbf.newDocumentBuilder ();
            Document doc=db.parse("https://quotes.instaforex.com/get_quotes.php?m=xml");
            doc.getDocumentElement().normalize();
            NodeList nodeLst = doc.getElementsByTagName ("bid");
            Element eljyq=(Element)nodeLst.item(0);
           NodeList nljyac=eljyq.getChildNodes();
            a=((Node)nljyac.item(0)).getNodeValue() ;
 
        }
       catch(Exception e){
           e.printStackTrace();
       }
 
        TextView mResultField = (TextView) findViewById(R.id.textView);
        mResultField.setText(a);
        }
}
Добавлено через 12 часов 7 минут
В кого какие предложения?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.11.2013, 11:08
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Парсинг XML на АНДРОИД (Программирование Android):

Парсинг html страницы андроид - Программирование Android
Здравствуйте. Я новичок в программировании, так что не прошу судить строго. Вот завис на одном момента. Пишу приложение, в котором...

Парсинг XML - Программирование Android
Нужно роспарсить XML, который приходть с http://shop.podolyany.com.ua/api/rest/products/. Наверное делаю что-то не так. Вот код, где я хочу...

Парсинг XML - Программирование Android
Решил освоить Android написал первое приложение(программка расшифровывает статус контролера банкомата из БД ошибок в формате SQLite и...

Парсинг XML - Программирование Android
Пробую так String data = getIntent().getStringExtra(&quot;data&quot;); try { DocumentBuilderFactory factory =...

Парсинг XML - Программирование Android
try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder =...

Парсинг xml-файла - Программирование Android
Пытаюсь получить информацию из xml файла, но всегда получаю ошибку. Как это можно исправить? /res/xml/support.xml &lt;?xml...

9
YuraAAA
1577 / 1318 / 271
Регистрация: 25.10.2009
Сообщений: 3,438
Записей в блоге: 2
30.11.2013, 13:18 #2
Цитата Сообщение от ASDFD12 Посмотреть сообщение
В кого какие предложения?
Что именно не работает? Что показывает стек-трейс?
0
ASDFD12
46 / 46 / 11
Регистрация: 15.09.2012
Сообщений: 488
30.11.2013, 13:58  [ТС] #3
Как посмотреть содержимое стек трейса? Компилятор не выдает ошыбку.
0
lifestyle
Mobile Developer
232 / 228 / 4
Регистрация: 10.05.2009
Сообщений: 917
30.11.2013, 15:12 #4
а сие чудо вообще компилируется?)) permissions добавлены в AndroidManifest.xml для Интернета и для работы с сетью из GUI Thred'а ?)))
0
ASDFD12
46 / 46 / 11
Регистрация: 15.09.2012
Сообщений: 488
30.11.2013, 18:01  [ТС] #5
Для интернета добавил, а для GUI Thred нет. Как добавить, за что отвечает?
0
lifestyle
Mobile Developer
232 / 228 / 4
Регистрация: 10.05.2009
Сообщений: 917
30.11.2013, 19:40 #6
Цитата Сообщение от ASDFD12 Посмотреть сообщение
Для интернета добавил, а для GUI Thred нет. Как добавить, за что отвечает?
добавить так же как и для интернета, не помню сам permission погугли, а вообоще так не делается в андроиде, работа с сетью выносится в отдельный поток или через AsyncTask
вот пример AsyncTaska
http://stackoverflow.com/questions/6...hreadexception
0
ASDFD12
46 / 46 / 11
Регистрация: 15.09.2012
Сообщений: 488
30.11.2013, 19:59  [ТС] #7
Цитата Сообщение от lifestyle Посмотреть сообщение
добавить так же как и для интернета, не помню сам permission погугли, а вообоще так не делается в андроиде, работа с сетью выносится в отдельный поток или через AsyncTask
вот пример AsyncTaska
http://stackoverflow.com/questions/6...hreadexception
Вот мой манифест
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
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.hello"
    android:versionCode="1"
    android:versionName="1.0" >
 
    <uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="19" />
 
    <uses-permission android:name="android.permission.INTERNET" />
   
 
    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.hello.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
 
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
 
</manifest>
Не могу найти в android.permission то что вы казали GUI.
Вот некоторый перечень разрешений. Как оно примерно должно называться.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
READ_PHONE_STATE — получение информации о телефоне (номер телефона, серийник, информация о вызовах);
SEND_SMS — отправка sms-сообщений;
RECEIVE_SMS — прием sms-сообщений и последующее удаление их (именно поэтому приоритет у MainReceiver наивысший);
INTERNET — использование интернета;
WAKE_LOCK — отключает спящий режим (видимо для повышения стабильности :);
ACCESS_NETWORK_STATE — информация о сетевых соединениях;
RECEIVE_BOOT_COMPLETED — получать сообщения о загрузке устройства, что позволяет выполнять приложение при запуске;
WRITE_EXTERNAL_STORAGE — запись/удаление информации на карте памяти;
INSTALL_PACKAGES — приложение может устанавливать или обновлять пакеты;
DELETE_PACKAGES — приложение может удалять пакеты;
READ_CONTACTS — доступ к контактам;
CALL_PHONE — осуществляет телефонные вызовы;
CALL_PRIVILEGED — осуществляет телефонные вызовы, в том числе по экстренным номерам;
GET_TASKS — получение данных о запущенных приложениях;
SYSTEM_ALERT_WINDOW — показывает сообщения поверх всех окон;
RESTART_PACKAGES — способно завершать фоновые процессы других приложений (официальное описание);
KILL_BACKGROUND_PROCESSES — способно завершать фоновые процессы других приложений (официальное описание); 
READ_LOGS — чтение конфиденциальных данных из журнала.
0
ASDFD12
46 / 46 / 11
Регистрация: 15.09.2012
Сообщений: 488
02.12.2013, 11:10  [ТС] #8
кто чем поможет?
0
ASDFD12
46 / 46 / 11
Регистрация: 15.09.2012
Сообщений: 488
05.12.2013, 21:34  [ТС] #9
Цитата Сообщение от ASDFD12 Посмотреть сообщение
кто чем поможет?
В чем ошыбка или дайте ссылку на пример, посоветуйте книгу.
0
lifestyle
Mobile Developer
232 / 228 / 4
Регистрация: 10.05.2009
Сообщений: 917
06.12.2013, 01:20 #10
Цитата Сообщение от ASDFD12 Посмотреть сообщение
В чем ошибка или дайте ссылку на пример, посоветуйте книгу.
Я же тебе ответил выше - используй AsyncTask и дал ссылку с примером реализации AsyncTask'a
0
06.12.2013, 01:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.12.2013, 01:20
Привет! Вот еще темы с ответами:

XML Парсинг (yml) - Программирование Android
Вопрос таков. Чем распарсить yml страницу http://ufa.farfor.ru/getyml/?key=ukAXxeJYZN Парсил XML с другого сайта, но таким образом не...

XML HTTP парсинг - Программирование Android
Здравствуйте. На сервере есть тестовый php файл с сontent-type: text/xml. Он выводит сообщения с базы....

Парсинг XML по URL - Программирование Android
Нужно взять строку из тега &lt;company&gt; отсюда xml. Можно как-то обойтись без циклов?

Парсинг большого xml - Программирование Android
Если есть большой JSON его можно парсить при помощи библиотеки gson, а если есть большой xml как этот https://lenta.ru/rss. Чем его лучше...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.