0
나는 안드로이드를 처음 접했다. 나는 이미지 처리를하려고 노력 중이다. 하지만이 메시지가 "이 응용 프로그램이 예기치 않게 중지되었습니다. 다시 시도하십시오."라는 메시지가 나타납니다. 내가 사용 adb logcat
android application near force close
package com.imagep.amit;
import java.io.BufferedOutputStream;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Bitmap.CompressFormat;
import android.graphics.BitmapFactory;
import android.os.Bundle;
import android.util.Log;
import android.widget.ImageView;
public class ImagepActivity extends Activity {
/** Called when the activity is first created. */
Bitmap myBitmap;
ImageView myImageView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
String imageFileName= "/sdcard/test_vga.jpg";
File imageFile= new File(imageFileName);
if (imageFile.exists()) {
// Load the image from file
myBitmap= BitmapFactory.decodeFile(imageFileName);
// Display the image in the image viewer
myImageView= (ImageView)findViewById(R.id.di);
if (myImageView!= null) {
myImageView.setImageBitmap(myBitmap);
}
}
this.processImage();
}
private void processImage() {
brighten(50);
try {
String outputPath= "/test_vga_output.jpg";
int quality = 75;
FileOutputStream fileOutStr= new FileOutputStream(outputPath);
BufferedOutputStream bufOutStr= new BufferedOutputStream(fileOutStr);
myBitmap.compress(CompressFormat.JPEG, quality, bufOutStr);
bufOutStr.flush();
bufOutStr.close();
} catch (FileNotFoundException exception) {
Log.e("debug_log", exception.toString());
} catch (IOException exception) {
Log.e("debug_log", exception.toString());
}
myImageView.setImageBitmap(myBitmap);
}
private void brighten(int i) {
int width = myBitmap.getWidth();
int height = myBitmap.getHeight();
int[] pix = new int[width * height];
myBitmap.getPixels(pix, 0, width, 0, 0, width, height);
// Apply pixel-by-pixel change
int index = 0;
for(int y = 0; y < height; y++) {
for (int x = 0; x < width; x++) {
int r = (pix[index] >> 16) & 0xff;
int g = (pix[index] >> 8) & 0xff;
int b = pix[index] & 0xff;
r = 0;
g = 0;
b = 0;
pix[index++] = 0xff000000| (r << 16) | (g << 8) | b;
} // x
} // y
// TODO Auto-generated method stub
}
}
}
안녕하세요, 귀하는 어떤 예외를 받고 어떤 라인이 있는지 알기 위해 LogCat 로그도 게시해야합니다. 이클립스를 사용하고 있다면 하단 하단에 있습니다. 그냥 복사하여 여기에 붙여 넣으십시오. – noob