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

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

Войти
Регистрация
Восстановить пароль
 
Best_Coder
0 / 0 / 0
Регистрация: 18.09.2014
Сообщений: 81
#1

Ошибка приложения - Программирование Android

05.11.2014, 15:39. Просмотров 427. Ответов 6
Метки нет (Все метки)

Подскажите,где ошибка?Работа приложения останавливается после нажатия на кнопку Старт.
Кликните здесь для просмотра всего текста
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
package ru.example.project.d;
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
 
public class MainActivity extends Activity implements OnClickListener{
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        View mStartButton = findViewById(R.id.start);
        mStartButton.setOnClickListener(this);
    }
    @Override 
    public void onClick(View view) {
        Intent intent = new Intent(this, App.class);
        startActivity(intent);
    }
}


Кликните здесь для просмотра всего текста
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
package ru.example.project.d;
import android.app.Activity;
import android.os.Bundle;
import android.text.Html;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.TextView;
 
public class App extends Activity implements OnClickListener{
 
    String mResult;
    float D;
    float x1 = 0;
    float x2 =0;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.app);
        View mResButton = findViewById(R.id.res);
        mResButton.setOnClickListener(this);
    }
    
    @Override public void onClick(View v) {
        showResult();
    } 
    
    private void showResult() {
        //Регистрируем поля для ввода данных
        EditText mEditA = (EditText) findViewById(R.id.a);
        EditText mEditB = (EditText) findViewById(R.id.b);
        EditText mEditC = (EditText) findViewById(R.id.c);
        //Получение введенных данных
        String mA = mEditA.getText().toString();
        String mB = mEditB.getText().toString();
        String mC = mEditC.getText().toString();
        //Получение подготовленного результата расчета
        getResult(mA, mB, mC);
        //Вывод данных
        TextView mResultField = (TextView) findViewById(R.id.resultField);
        mResultField.setText(Html.fromHtml(mResult));
    } 
   
    private void solveEquation(int a, int b, int c) {
        //Расчет дискриминанта
        D = (float) Math.pow(b, 2) - 4 * a * c;
        //Если D < 0, то расчет не требуется
        if (D >= 0) {
        x1 = (float) ((-b + Math.sqrt(D))/(2*a));
        x2 = (float) ((-b - Math.sqrt(D))/(2*a));
        } 
    }
    
    private void getResult(String a, String b, String c) {
        //Объявление переменных
        int mValueA; int mValueB; int mValueC;
        //Проверяем были ли введенны данные вообще
        if (a.length() == 0) {
            a = "1"; mValueA = 1;
        } else {
            mValueA = Integer.parseInt(a);
        }
        //Достаем из строки число типа int
        if (b.length() == 0) {
            b = "0"; mValueB = 0;
        } else {
            mValueB = Integer.parseInt(b);
        }
        if (c.length() == 0) {
            c = "0"; mValueC = 0;
        } else {
            mValueC = Integer.parseInt(c);
        }
        //Передаем числовые данные функции расчета уравнения
        solveEquation(mValueA, mValueB, mValueC);
        /*Собираем строку для вывода данных * Подготовка основного уравнения * a не должно равняться 0 */
        if (mValueA == 0)
            mResult = 1 + "x2";
        else
            mResult = a + "x2";
        if (mValueB < 0 )
            mResult += b + "x";
        else
            mResult += "+" + b + "x";
        if (mValueC < 0)
            mResult += c + " = 0";
        else
            mResult += "+" + c + "= 0";
        //Вывод уравнения расчета x1 и x2
        mResult += "x1,x2 = (-(" + b + ")&plusmnв€љ" + b + "2-4Г—" + a + "Г—" + c + ")/2Г—" + a + " = 0";
        /*В зависимости от значения дискриминанта добавляем данные. * D < 0 - строка c сообщением * D > 0 - результаты расчета x1 и x2 */
        if (D < 0) {
            mResult += "Уравнение не имеет решения, так как дискриминант меньше 0";
        } else {
            mResult += "x1 = -(" + b + ") + в€љ" + D + " = " + x1 + "";
            mResult += "x2 = -(" + b + ") - в€љ" + D + " = " + x2 + "";
        }
    } 
}


Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
<?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical"
        android:paddingLeft="20dip"
        android:paddingRight="20dip" >
 <Button android:id="@+id/start"
        android:text="@string/start_button"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true" />     
</RelativeLayout>


Кликните здесь для просмотра всего текста
XML
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
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@drawable/backgr"
android:paddingLeft="20dip"
android:paddingRight="20dip" >
<LinearLayout 
android:id="@+id/equation"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="10dip"
android:paddingBottom="10dip">
<EditText 
android:id="@+id/a"
android:hint="1"
android:inputType="numberSigned"
android:layout_width="40dip"
android:layout_height="wrap_content"/>
<TextView 
android:text="@string/xqudratic_text"
android:textSize="30dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<EditText 
android:id="@+id/b"
android:hint="0"
android:inputType="numberSigned"
android:layout_width="40dip"
android:layout_height="wrap_content"/>
<TextView 
android:text="@string/x_text"
android:textSize="30dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<EditText 
android:id="@+id/c"
android:layout_width="40dip"
android:layout_height="wrap_content"
android:background="@style/AppTheme"
android:hint="0"
android:inputType="numberSigned"/>
<TextView 
android:text="@string/equal_text"
android:textSize="30dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
 
</LinearLayout>
 
 
<Button 
android:id="@+id/res"
android:text="@string/res"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/equation"
android:layout_centerInParent="true"/>
 
<TextView android:id="@+id/resultField" 
    android:text="" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/solve" />
 
</RelativeLayout>


Фото ошибки

Добавлено через 1 минуту
скрин
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2014, 15:39     Ошибка приложения
Посмотрите здесь:

Ошибка при запуске приложения - Программирование Android
Сегодня запускал приложение, оно не запускается, выдает такую ошибку 08-17 18:39:37.012 10830-10830/? E/adsprpc:...

Ошибка при создании приложения - Программирование Android
Решил научиться работать в Android Studio. Установил её, запустил, решил запустить простейшее приложение с выводом &quot;Hello World&quot;, но все...

Ошибка в открытии приложения на эмуляторе - Программирование Android
package com.Yana.calc; import android.app.Activity; import android.os.Bundle; import android.view.View; import...

Ошибка при создание приложения на Андроид - Программирование Android
Делаю первое приложения в Netbias, вот такая ошибка при создание проекта

Ошибка при установке приложения Андроид - Программирование Android
Создана и протестированна программа eclipse+SDK. В AVD все работает. Таргет версия 4,0,0. При установке на планшет apk файла, версия...

Ошибка приложения при удалении Title - Программирование Android
Добрый день. Создал примитивное, но зато работающее приложение (Android Studio) -компилится , запускается как нужно. Но при попытки убрать...

После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
05.11.2014, 15:48     Ошибка приложения #2
Best_Coder, пытался разобраться в программе, но ошибку так и не нашёл. Сделайте так. Начните комментировать тела методов. Для начала закомментируйте всё внутри showResult. Запустите. Если снова выпадет без ошибки, закомментируйте внутри onCreate так:
Java
1
2
3
4
5
6
protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.app);
/*        View mResButton = findViewById(R.id.res);
        mResButton.setOnClickListener(this);*/
    }
Best_Coder
0 / 0 / 0
Регистрация: 18.09.2014
Сообщений: 81
05.11.2014, 22:09  [ТС]     Ошибка приложения #3
Ничего не получается убрал даже первое активити и всё равно не хочет работать пишет "Unfortunately,has stopped."

Добавлено через 2 минуты
Кликните здесь для просмотра всего текста
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
package ru.p;
import android.app.Activity;
import android.os.Bundle;
import android.text.Html;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.EditText;
import android.widget.TextView;
 
public class MainActivity extends Activity implements OnClickListener{
 
    String mResult;
    float D;
    float x1 = 0;
    float x2 =0;
    
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        View mResButton = findViewById(R.id.res);
        mResButton.setOnClickListener(this);
    }
    
    @Override public void onClick(View v) {
        showResult();
    } 
    
    private void showResult() {
        //Регистрируем поля для ввода данных
        EditText mEditA = (EditText) findViewById(R.id.a);
        EditText mEditB = (EditText) findViewById(R.id.b);
        EditText mEditC = (EditText) findViewById(R.id.c);
        //Получение введенных данных
        String mA = mEditA.getText().toString();
        String mB = mEditB.getText().toString();
        String mC = mEditC.getText().toString();
        //Получение подготовленного результата расчета
        getResult(mA, mB, mC);
        //Вывод данных
        TextView mResultField = (TextView) findViewById(R.id.resultField);
        mResultField.setText(Html.fromHtml(mResult));
    } 
   
    private void solveEquation(int a, int b, int c) {
        //Расчет дискриминанта
        D = (float) Math.pow(b, 2) - 4 * a * c;
        //Если D < 0, то расчет не требуется
        if (D >= 0) {
        x1 = (float) ((-b + Math.sqrt(D))/(2*a));
        x2 = (float) ((-b - Math.sqrt(D))/(2*a));
        } 
    }
    
    private void getResult(String a, String b, String c) {
        //Объявление переменных
        int mValueA; int mValueB; int mValueC;
        //Проверяем были ли введенны данные вообще
        if (a.length() == 0) {
            a = "1"; mValueA = 1;
        } else {
            mValueA = Integer.parseInt(a);
        }
        //Достаем из строки число типа int
        if (b.length() == 0) {
            b = "0"; mValueB = 0;
        } else {
            mValueB = Integer.parseInt(b);
        }
        if (c.length() == 0) {
            c = "0"; mValueC = 0;
        } else {
            mValueC = Integer.parseInt(c);
        }
        //Передаем числовые данные функции расчета уравнения
        solveEquation(mValueA, mValueB, mValueC);
        /*Собираем строку для вывода данных * Подготовка основного уравнения * a не должно равняться 0 */
        if (mValueA == 0)
            mResult = 1 + "x2";
        else
            mResult = a + "x2";
        if (mValueB < 0 )
            mResult += b + "x";
        else
            mResult += "+" + b + "x";
        if (mValueC < 0)
            mResult += c + " = 0";
        else
            mResult += "+" + c + "= 0";
        //Вывод уравнения расчета x1 и x2
        mResult += "x1,x2 = (-(" + b + ")&plusmnв€љ" + b + "2-4Г—" + a + "Г—" + c + ")/2Г—" + a + " = 0";
        /*В зависимости от значения дискриминанта добавляем данные. * D < 0 - строка c сообщением * D > 0 - результаты расчета x1 и x2 */
        if (D < 0) {
            mResult += "Уравнение не имеет решения, так как дискриминант меньше 0";
        } else {
            mResult += "x1 = -(" + b + ") + в€љ" + D + " = " + x1 + "";
            mResult += "x2 = -(" + b + ") - в€љ" + D + " = " + x2 + "";
        }
    } 
}


Кликните здесь для просмотра всего текста
XML
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
ngRight="20dip" >
<LinearLayout 
android:id="@+id/equation"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:paddingTop="10dip"
android:paddingBottom="10dip">
<EditText 
android:id="@+id/a"
 
android:inputType="numberSigned"
android:layout_width="40dip"
android:layout_height="wrap_content"/>
<TextView 
android:text="@string/xqudratic_text"
android:textSize="30dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<EditText 
android:id="@+id/b"
android:hint="0"
android:inputType="numberSigned"
android:layout_width="40dip"
android:layout_height="wrap_content"/>
<TextView 
android:text="@string/x_text"
android:textSize="30dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<EditText 
android:id="@+id/c"
android:layout_width="40dip"
android:layout_height="wrap_content"
android:background="@style/AppTheme"
android:hint="0"
android:inputType="numberSigned"/>
<TextView 
android:text="@string/equal_text"
android:textSize="30dip"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
 
</LinearLayout>
 
 
<Button 
android:id="@+id/res"
android:text="@string/res"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/equation"
android:layout_centerInParent="true"/>
 
<TextView android:id="@+id/resultField" 
    android:text="" 
    android:layout_width="fill_parent" 
    android:layout_height="wrap_content" 
    android:layout_below="@+id/solve" />
 
</RelativeLayout>


Добавлено через 3 минуты
подскажите пожалуйста чего ему не хватает то?
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
05.11.2014, 22:54     Ошибка приложения #4
Best_Coder, загрузил IDEA, создал новый проект (com.example.myapp), вставил ваш код для Явы и xml (немного его поменял). Запустил, работает.
Проверьте, пожалуйста, всё ли правильно в AndroidManifest.xml, можете даже выложить его сюда.
Также хотел спросить, а другие программы у вас запускались? На эмуляторе не пробовали? Может быть, забыли в смартфоне выставить режим отладки по USB? Смартфон какой версии Android?
У меня такой AndroidManifest.
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
          package="com.example.myapp"
          android:versionCode="1"
          android:versionName="1.0">
    <uses-sdk android:minSdkVersion="10"/>
    <application android:label="@string/app_name">
        <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>
Best_Coder
0 / 0 / 0
Регистрация: 18.09.2014
Сообщений: 81
06.11.2014, 09:24  [ТС]     Ошибка приложения #5
я здесь тестирую manymo.com

манифест
Кликните здесь для просмотра всего текста
XML
1
2
3
4
5
6
7
8
9
10
11
12
 <?xml version="1.0" encoding="utf-8" ?> 
- <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="ru.p" android:versionCode="1" android:versionName="1.0">
  <uses-sdk android:minSdkVersion="16" android:targetSdkVersion="16" /> 
- <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>


Добавлено через 4 минуты
такой же результат тестирования и в эмуляторе bluestakes

у меня просто пока нет возможности потестировать на живом аппарате
CoolMind
418 / 401 / 65
Регистрация: 06.10.2012
Сообщений: 1,727
06.11.2014, 10:09     Ошибка приложения #6
Best_Coder, явных ошибок нет. Установите другую IDE, например, Android Studio, IntelliJ IDEA. Обновите SDK.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
06.11.2014, 23:31     Ошибка приложения
Еще ссылки по теме:

Ошибка приложения, при изменении эмулятора - Программирование Android
Суть проблемы: запускаю приложение на эмуляторе под разрешение показанное на скрине, все отлично работает. Меняю разрешение на более...

Ошибка при создании приложения под андроид - Программирование Android
Здравствуйте, уже неделю не пойму как исправить несколько ошибок в коде. Изучать стал недавно, поэтому еще очень тяжело... первая ошибка...

Почему после выхода из приложения выскакивает ошибка? - Программирование Android
Я начал писать программу для андроид (плеер) Скомпилировал, установил на свое андроид - устройство. Все работает но когда я закрываю...

Ошибка при загрузке приложения на Google Play - Программирование Android
Здравствуйте. При попытке загрузки приложения на Google Play возникает ошибка: В AndroidManifest.xml прописано: &lt;application...


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

Или воспользуйтесь поиском по форуму:
dubok79
323 / 121 / 11
Регистрация: 01.11.2012
Сообщений: 586
06.11.2014, 23:31     Ошибка приложения #7
Очистите проект сначала. Было у меня такое разок. Сейчас, например, после смены порядка в xml всегда сначала чищу проект иначе белиберда. Кэш, падла, где то хранит.
Yandex
Объявления
06.11.2014, 23:31     Ошибка приложения
Ответ Создать тему
Опции темы

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