0

修正できないように見える問題があります。私のOnCreate中にはCameraActivity、画像がある場合は最初に削除します。これが行われる状況がある場合、画像ファイルは作成されますが、画像は空白になります。(そのため、最初にファイルが存在しない場合にのみ、画像が正常に作成されます)。ファイルを削除して正常に作成するにはどうすればよいですか?

MyCameraActivityは次のように定義されます。

    public class CameraActivity extends Activity
{   
    final int PICTURE_ACTIVITY = 1; 
    @Override
    public void onCreate(Bundle savedInstanceState)
    {  


        Intent h = getIntent();
        String filename = h.getStringExtra("string") + ".jpg";

        String dir = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_PICTURES) + "/" + getString(R.string.app_name)+ "/"; 
        File newdir = new File(dir); 
        try{
            newdir.mkdirs();
        }
        catch(Exception e){}
        String file = dir + filename;
        File newfile = new File(file);
        boolean deleted = newfile.delete();

        try {
            System.out.println("creating:");
            newfile.createNewFile();
        } catch (IOException e) {} 

        Uri outputFileUri = Uri.fromFile(newfile);
        Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
        cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri);
        super.onCreate(savedInstanceState);
        startActivityForResult(cameraIntent, PICTURE_ACTIVITY);
    }

}
4

1 に答える 1

0

ときどき保存されない理由は、保存する前に SD カードを携帯電話から取り出していたことが原因であることに気付きました。

于 2012-01-03T16:09:06.590 に答える