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

Android.os.networkonmainthreadexception - Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Java ME Почему значения переменных не перезаписывается? http://www.cyberforum.ru/android-dev/thread1396158.html
Таймер. Мне нужно задавать время таймера. Команда putCommand это и делает. Но значения не запоминаются. Подскажите, пожалуйста, в чем моя ошибка? /* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ import javax.microedition.midlet.*; import...
Java ME Java ME IDE для запуска на мобильном устройства Всем привет. В прошлом несколько раз краем уха слышал, что умудрялись кодить проги для звонилок на них же. Кто нибудь из вас встречал подобное? В сети пока никаких утилит не нашлось(ну, кроме просто текстовых редакторов). Влезет ли вообще там компилятор, или возможно только редактирование исходников? Добавлено через 2 минуты Кстати, помню инфу, что была одна IDE на паскале вообще. http://www.cyberforum.ru/android-dev/thread1396095.html
Как можно визуализировать работу таймера? Java ME
Подскажите, пожалуйста, как можно визуализировать работу таймера
Java ME Выбор платформы при создании приложения в NetBeans
Здравствуйте. Можете помочь с созданием проекта Java ME Embedded в среде NetBeans? Проблема в том, что в пункте "Платформа Java ME" нельзя ничего выбрать (т.е. там пусто, нет ни одного пункта), хотя в Platform Micro Edition SDK в диспетчере платформ добавил. Или нужно еще что-то устанавливать или настраивать? Просто в первый раз с NetBeans работаю, могу тупить. Ах да, пытался еще S40...
Java ME Как установить программы на телефоны Samsung http://www.cyberforum.ru/android-dev/thread1380829.html
Как установить свое приложение на телефон Samsung c3322? Желательно без перепрошивки (тел не мой) Пробовал уже на через файлообменик скачать, все равно ругается. :wall:
Java ME BigInteger для Java ME Подскажите пожалуйста библиотеку для работы с большими числами в Java ME. Всем спасибо! подробнее

Показать сообщение отдельно
MRabaev
7 / 7 / 1
Регистрация: 27.09.2014
Сообщений: 43

Android.os.networkonmainthreadexception - Android

21.03.2015, 00:37. Просмотров 1752. Ответов 6
Метки (Все метки)

Суть дела:
Написал методы для того, чтобы отпарсить xml по url. Вроде бы все ок, но выскакивает ошибка android.os.networkonmainthreadexception Как ее пофиксить?
Читал про onPreExecute(), но не понял, как его реализовать.

Подскажите, кто решал уже такие проблемы.

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
98
99
100
101
102
103
package com.rabaev.xmlpullparser.app;
 
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.TextView;
import org.apache.http.HttpResponse;
import org.apache.http.client.ClientProtocolException;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpPost;
import org.apache.http.impl.client.DefaultHttpClient;
import org.xmlpull.v1.XmlPullParser;
import org.xmlpull.v1.XmlPullParserFactory;
 
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.URISyntaxException;
import java.net.URL;
import java.util.ArrayList;
 
 
public class MainActivity extends ActionBarActivity {
 
    ListView ecbList;
    TextView messageText;
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
 
        ecbList = (ListView) findViewById(R.id.ecbListView);
        messageText = (TextView)findViewById(R.id.messageText);
 
        ecbList.setAdapter(getAdapter());
 
    }
 
 
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
 
        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }
 
        return super.onOptionsItemSelected(item);
    }
 
    public ArrayAdapter<String> getAdapter(){
        ArrayList<String> list = new ArrayList<String>();
 
        try{
            XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
            factory.setNamespaceAware(true);
            XmlPullParser parser = factory.newPullParser();
            parser.setInput(new InputStreamReader(getUrlData("http://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml")));
            while (parser.getEventType() != XmlPullParser.END_DOCUMENT) {
 
                if (parser.getEventType() == XmlPullParser.START_TAG
                        && parser.getName().equals("Cube")) {
                    list.add(parser.getAttributeValue(0) + " = "
                            + parser.getAttributeValue(1) + "\n");
                }
 
                parser.next();
            }
 
        }catch (Throwable exc){
            ecbList = null;
            messageText.setText(exc.toString());
        }
 
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1, list);
 
        return  adapter;
    }
 
    public InputStream getUrlData(String urlString)throws URISyntaxException, IOException {
        DefaultHttpClient client = new DefaultHttpClient();
        HttpPost method = new HttpPost(String.valueOf(new URL(urlString)));
        HttpResponse res = client.execute(method);
        return res.getEntity().getContent();
    }
 
 
}
Manifest
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.rabaev.xmlpullparser.app" >
 
    <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=".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>
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 21:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru