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

"В приложении произошла ошибка" при нажатии на кнопку перехода на какую-либо активность - Программирование Android

Войти
Регистрация
Восстановить пароль
Другие темы раздела
Программирование Android Нарезка картинки на блоки http://www.cyberforum.ru/android-dev/thread1697353.html
Доброго времени суток начал побывать писать программы на андроид, пытаюсь написать программу которая будет резать картинку на блоки 3х1, 3х2, 3х3 с последующим сохранением , есть ли аналоги кода в сети или похожие примеры кода? программа до ужаса простая и примитивная но без примера написать свою трудно, если будет ссылка с источником кода буду очень благодарен Добавлено через 1 час 7 минут...
Программирование Android Почему при выключении экрана в альбомной оринатции приложение перезапускается? Здравствуйте. В манифесте приложения прописана только альбомная ориентация. Но обнаружил такой эффект, при нажатии кнопки power экран гаснет и тут же вызывается OnCreate (это экран только стал чёрным), хотя в портретной ориентации такого не происходит. Почему так, и как это можно избежать? Т.к. это немного сбивает меня с толку в том плане, что не могу отделить восстановление приложение по... http://www.cyberforum.ru/android-dev/thread1697233.html
Программирование Android Неправильные формы в дизайне
Всем привет! Сегодня, пребывая в размышлениях о дизайне для нового приложения, порыскал маркет дабы оттуда что-то "позаимствовать". В одном из приложений нашел то, что мне пришлось по вкусу, но возникла проблема с реализацией одного момента, а именно - создание треугольной формы. Прикладываю скрин, подскажите плиз, как сделать такой же угол с фаб баттонами поверх картинки
Конвертировании ListActivity в Fragment Программирование Android
Здраствуйте, ребята пожалуйста помогите конвертировать Класс ListActivity в Fragment public class AlbumsActivity extends ListActivity { // Connection detector ConnectionDetector cd; // Alert dialog manager AlertDialogManager alert = new AlertDialogManager();
Программирование Android Две вьюшки для RecyclerView http://www.cyberforum.ru/android-dev/thread1696983.html
У меня проблема в том, что нужно создать лист в котором 2 вьюшки, то есть первый Итем как Header идет, а второй динамически увеличивается. Сперва думал первый сделать как обычный блок а второй в `RecyclerView`, но почему-то мне показалось это неправильным. Так вот решил сделать на `RecyclerView` и в инете покапался и нашел один метод. Но почему то пустой экран. Что мне нужно: У них один...
Программирование Android Программирования на Android У меня такая проблема, я не могу создать приложение на андроид , тк не знаю языка программирования .Выручайте. подробнее

Показать сообщение отдельно
Милашечка
0 / 0 / 0
Регистрация: 16.02.2013
Сообщений: 112

"В приложении произошла ошибка" при нажатии на кнопку перехода на какую-либо активность - Программирование Android

28.03.2016, 21:06. Просмотров 342. Ответов 3
Метки (Все метки)

Нужно было несколько функций в одно приложение соединить..Отдельно каждая из них как отдельная программа работает - запускается.. Создав активности, перенеся их туда в одну программу - так же запускается, но при нажатии на кнопку перехода на какую-либо активность - высвечивает что "В приложении labs1 произошла ошибка" и выбивает из него.Не пойму почему так происходит
в Манифесте все прописано...
логи, при нажатии на кнопку, для перехода на любую из заданных активностей:
XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
03-28 17:59:12.684: D/AndroidRuntime(592): Shutting down VM
03-28 17:59:12.684: W/dalvikvm(592): threadid=1: thread exiting with uncaught exception (group=0xb5f084f0)
03-28 17:59:12.688: E/AndroidRuntime(592): FATAL EXCEPTION: main
03-28 17:59:12.688: E/AndroidRuntime(592): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.labs1/com.example.labs1.Activity2}: java.lang.NullPointerException
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.ActivityThread.access$1500(ActivityThread.java:117)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.os.Handler.dispatchMessage(Handler.java:99)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.os.Looper.loop(Looper.java:130)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.ActivityThread.main(ActivityThread.java:3683)
03-28 17:59:12.688: E/AndroidRuntime(592):  at java.lang.reflect.Method.invokeNative(Native Method)
03-28 17:59:12.688: E/AndroidRuntime(592):  at java.lang.reflect.Method.invoke(Method.java:507)
03-28 17:59:12.688: E/AndroidRuntime(592):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
03-28 17:59:12.688: E/AndroidRuntime(592):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
03-28 17:59:12.688: E/AndroidRuntime(592):  at dalvik.system.NativeStart.main(Native Method)
03-28 17:59:12.688: E/AndroidRuntime(592): Caused by: java.lang.NullPointerException
03-28 17:59:12.688: E/AndroidRuntime(592):  at com.example.labs1.Activity2.onCreate(Activity2.java:40)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
03-28 17:59:12.688: E/AndroidRuntime(592):  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
03-28 17:59:12.688: E/AndroidRuntime(592):  ... 11 more
java-коды:

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
package com.example.labs1;
 
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
 
public class MainActivity extends Activity implements OnClickListener {
 
  Button button1;
  Button button2;
  Button button3;
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
 
    button1 = (Button) findViewById(R.id.button1);//активность 2
    button1.setOnClickListener(this);
    
    button2 = (Button) findViewById(R.id.button2);//активность 3
    button2.setOnClickListener(this);
 
    button3 = (Button) findViewById(R.id.button3);//активность 4
    button3.setOnClickListener(this);
  
   }
 
  @Override
  public void onClick(View v) {
    switch (v.getId()) {
    case R.id.button1:
        Intent intent = new Intent(MainActivity.this, Activity2.class);//активность 2
        startActivity(intent);// TODO Call second activity
      break;
         
    case R.id.button2:
        Intent intent1 = new Intent(MainActivity.this, Activity3.class);//активность 3
        startActivity(intent1);// TODO Call second activity
      break;
    
      
      
    case R.id.button3:
        Intent intent2 = new Intent(MainActivity.this, Activity4.class);//активность 4
        startActivity(intent2);// TODO Call second activity
      break;
    default:
      break;
    }
  }
}
Activity2.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
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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
package com.example.labs1;
 
 
import java.io.IOException;
 
import android.app.Activity;
//import android.content.ContentUris;
import android.media.AudioManager;
import android.media.MediaPlayer;
import android.media.MediaPlayer.OnCompletionListener;
import android.media.MediaPlayer.OnPreparedListener;
//import android.net.Uri;
import android.os.Bundle;
//import android.os.Environment;
import android.util.Log;
import android.view.View;
import android.widget.CheckBox;
import android.widget.CompoundButton;
import android.widget.CompoundButton.OnCheckedChangeListener;
 
 
public class Activity2 extends Activity implements OnPreparedListener,
    OnCompletionListener {
 
  final String LOG_TAG = "myLogs";
 
 
 
 
  MediaPlayer mediaPlayer;
  AudioManager am;
  CheckBox chbLoop;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    am = (AudioManager) getSystemService(AUDIO_SERVICE);
    chbLoop = (CheckBox) findViewById(R.id.chbLoop);
    chbLoop.setOnCheckedChangeListener(new OnCheckedChangeListener() {
      @Override
      public void onCheckedChanged(CompoundButton buttonView,
          boolean isChecked) {
        if (mediaPlayer != null)
          mediaPlayer.setLooping(isChecked);
      }
    });
  }
 
  public void onClickStart(View view) throws IllegalArgumentException, SecurityException, IllegalStateException, IOException {
    releaseMP();
 
    switch (view.getId()) {
    
    
    case R.id.apocaliptica:
        Log.d(LOG_TAG, "start apocaliptica");
        mediaPlayer = MediaPlayer.create(this, R.raw.apocaliptica);
        mediaPlayer.start();
        break;
    case R.id.splin:
        Log.d(LOG_TAG, "start splin");
        mediaPlayer = MediaPlayer.create(this, R.raw.splin);
        mediaPlayer.start();
        break;
     
      case R.id.bon_jovi:
        Log.d(LOG_TAG, "start bon_jovi");
        mediaPlayer = MediaPlayer.create(this, R.raw.bon_jovi);
        mediaPlayer.start();
        break;
 
      }
    if (mediaPlayer == null)
      return;
 
    mediaPlayer.setLooping(chbLoop.isChecked());
    mediaPlayer.setOnCompletionListener(this);
  }
 
  private void releaseMP() {
    if (mediaPlayer != null) {
      try {
        mediaPlayer.release();
        mediaPlayer = null;
      } catch (Exception e) {
        e.printStackTrace();
      }
    }
  }
 
  public void onClick(View view) {
    if (mediaPlayer == null)
      return;
    switch (view.getId()) {
    case R.id.btnPause:
      if (mediaPlayer.isPlaying())
        mediaPlayer.pause();
      break;
    case R.id.btnResume:
      if (!mediaPlayer.isPlaying())
        mediaPlayer.start();
      break;
    case R.id.btnStop:
      mediaPlayer.stop();
      break;
    case R.id.btnBackward:
      mediaPlayer.seekTo(mediaPlayer.getCurrentPosition() - 3000);
      break;
    case R.id.btnForward:
      mediaPlayer.seekTo(mediaPlayer.getCurrentPosition() + 3000);
      break;
    case R.id.btnInfo:
      Log.d(LOG_TAG, "Playing " + mediaPlayer.isPlaying());
      Log.d(LOG_TAG, "Time " + mediaPlayer.getCurrentPosition() + " / "
          + mediaPlayer.getDuration());
      Log.d(LOG_TAG, "Looping " + mediaPlayer.isLooping());
      Log.d(LOG_TAG,
          "Volume " + am.getStreamVolume(AudioManager.STREAM_MUSIC));
      break;
 
    }
  }
 
  @Override
  public void onPrepared(MediaPlayer mp) {
    Log.d(LOG_TAG, "onPrepared");
    mp.start();
  }
 
  @Override
  public void onCompletion(MediaPlayer mp) {
    Log.d(LOG_TAG, "onCompletion");
  }
 
  @Override
  protected void onDestroy() {
    super.onDestroy();
    releaseMP();
  }
}
Activity3.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
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
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
package com.example.labs1;
 
import java.io.File;
import java.io.FileOutputStream;
 
import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.PictureCallback;
import android.media.CamcorderProfile;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.Environment;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.View;
 
public class Activity3 extends Activity {
 
  SurfaceView surfaceView;
  Camera camera;
  MediaRecorder mediaRecorder;
 
  File photoFile;
  File videoFile;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
 
    File pictures = Environment
        .getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES);
    photoFile = new File(pictures, "myphoto.jpg");
    videoFile = new File(pictures, "myvideo.3gp");
 
    surfaceView = (SurfaceView) findViewById(R.id.surfaceView);
 
    SurfaceHolder holder = surfaceView.getHolder();
    holder.addCallback(new SurfaceHolder.Callback() {
      @Override
      public void surfaceCreated(SurfaceHolder holder) {
        try {
          camera.setPreviewDisplay(holder);
          camera.startPreview();
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
 
      @Override
      public void surfaceChanged(SurfaceHolder holder, int format,
          int width, int height) {
      }
 
      @Override
      public void surfaceDestroyed(SurfaceHolder holder) {
      }
    });
 
  }
 
  @Override
  protected void onResume() {
    super.onResume();
    camera = Camera.open();
  }
 
  @Override
  protected void onPause() {
    super.onPause();
    releaseMediaRecorder();
    if (camera != null)
      camera.release();
    camera = null;
  }
 
  public void onClickPicture(View view) {
    camera.takePicture(null, null, new PictureCallback() {
      @Override
      public void onPictureTaken(byte[] data, Camera camera) {
        try {
          FileOutputStream fos = new FileOutputStream(photoFile);
          fos.write(data);
          fos.close();
        } catch (Exception e) {
          e.printStackTrace();
        }
      }
    });
 
  }
 
  public void onClickStartRecord(View view) {
    if (prepareVideoRecorder()) {
      mediaRecorder.start();
    } else {
      releaseMediaRecorder();
    }
  }
 
  public void onClickStopRecord(View view) {
    if (mediaRecorder != null) {
      mediaRecorder.stop();
      releaseMediaRecorder();
    }
  }
 
  private boolean prepareVideoRecorder() {
 
    camera.unlock();
 
    mediaRecorder = new MediaRecorder();
 
    mediaRecorder.setCamera(camera);
    mediaRecorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
    mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
    mediaRecorder.setProfile(CamcorderProfile
        .get(CamcorderProfile.QUALITY_HIGH));
    mediaRecorder.setOutputFile(videoFile.getAbsolutePath());
    mediaRecorder.setPreviewDisplay(surfaceView.getHolder().getSurface());
 
    try {
      mediaRecorder.prepare();
    } catch (Exception e) {
      e.printStackTrace();
      releaseMediaRecorder();
      return false;
    }
    return true;
  }
 
  private void releaseMediaRecorder() {
    if (mediaRecorder != null) {
      mediaRecorder.reset();
      mediaRecorder.release();
      mediaRecorder = null;
      camera.lock();
    }
  }
 
}
Activity4.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
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
package com.example.labs1;
 
import java.io.File;
 
import android.app.Activity;
import android.media.MediaPlayer;
import android.media.MediaRecorder;
import android.os.Bundle;
import android.os.Environment;
import android.view.View;
 
public class Activity4 extends Activity {
 
  private MediaRecorder mediaRecorder;
  private MediaPlayer mediaPlayer;
  private String fileName;
 
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
 
    fileName = Environment.getExternalStorageDirectory() + "/record.3gpp";
  }
 
  public void recordStart(View v) {
    try {
      releaseRecorder();
 
      File outFile = new File(fileName);
      if (outFile.exists()) {
        outFile.delete();
      }
 
      mediaRecorder = new MediaRecorder();
      mediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
      mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
      mediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
      mediaRecorder.setOutputFile(fileName);
      mediaRecorder.prepare();
      mediaRecorder.start();
    } catch (Exception e) {
      e.printStackTrace();
    }
 
  }
 
  public void recordStop(View v) {
    if (mediaRecorder != null) {
      mediaRecorder.stop();
    }
  }
 
  public void playStart(View v) {
    try {
      releasePlayer();
      mediaPlayer = new MediaPlayer();
      mediaPlayer.setDataSource(fileName);
      mediaPlayer.prepare();
      mediaPlayer.start();
    } catch (Exception e) {
      e.printStackTrace();
    }
  }
 
  public void playStop(View v) {
    if (mediaPlayer != null) {
      mediaPlayer.stop();
    }
  }
 
  private void releaseRecorder() {
    if (mediaRecorder != null) {
      mediaRecorder.release();
      mediaRecorder = null;
    }
  }
 
  private void releasePlayer() {
    if (mediaPlayer != null) {
      mediaPlayer.release();
      mediaPlayer = null;
    }
  }
 
  @Override
  protected void onDestroy() {
    super.onDestroy();
    releasePlayer();
    releaseRecorder();
  }
 
}
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru