相机拍照后方向发生变化

时间:2018-03-07 16:09:56

标签: android

我可以使用默认相机应用拍照。 但是在获得onActivityResult方向内的图像数据后,更改并且所有数据都消失(图像数据)。我不想强迫用户在横向模式下使用应用程序。

那么即使方向发生变化,如何存储来自相机意图的图像路径

@Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
 if(resultCode==RESULT_OK) {
if (requestCode == CAPTURE) {

                if(Build.VERSION.SDK_INT<21){
                    lastPath=data.getStringExtra("path");
                }else{
                    lastPath=getRealPathFromURI(data.getData()) // set lastPath
                }
}

然后我尝试存储 lastPath

@Override
protected void onSaveInstanceState(Bundle outState) {
    super.onSaveInstanceState(outState);

    if(lastPath!=null){
        outState.putString("path",lastPath);

    }

}

最后我尝试在重新启动应用后从onSaveInstanceState发送 lastPath

 @Override
protected void onRestoreInstanceState(Bundle savedInstanceState) {
    super.onRestoreInstanceState(savedInstanceState);

    String path=savedInstanceState.getString("path");

    Log.v("path",path);

    // --> throws NullPointerException

}

如你所见它抛出异常

0 个答案:

没有答案