2017-06-02 3 views
0

私がログにカメラを開きたいときに私はこれを参照してください。アンドロイド4.4.2でのJavaのAndroidイベントバス開いてカメラ

EventBus: Could not dispatch event: class pl.eltegps.smokkomunikator.event.PhotoRequestedEvent to subscribing class class pl.eltegps.smokkomunikator.ui.activity.MainActivity 
                    android.os.FileUriExposedException: file:///storage/emulated/0/Android/data/pl.eltegps.smokkomunikator/images/gps_TEMP.jpg exposed beyond app through ClipData.Item.getUri() 
                     at android.os.StrictMode.onFileUriExposed(StrictMode.java:1799) 
                     at android.net.Uri.checkFileUriExposed(Uri.java:2346) 
                     at android.content.ClipData.prepareToLeaveProcess(ClipData.java:832) 
                     at android.content.Intent.prepareToLeaveProcess(Intent.java:9483) 
                     at android.content.Intent.prepareToLeaveProcess(Intent.java:9468) 
                     at android.app.Instrumentation.execStartActivity(Instrumentation.java:1525) 
                     at android.app.Activity.startActivityForResult(Activity.java:4399) 
                     at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:48) 
                     at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:75) 
                     at android.app.Activity.startActivityForResult(Activity.java:4358) 
                     at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:871) 
                     at pl.eltegps.smokkomunikator.ui.activity.MainActivity.onPhotoRequestedEvent(MainActivity.java:399) 
                     at java.lang.reflect.Method.invoke(Native Method) 
                     at org.greenrobot.eventbus.EventBus.invokeSubscriber(EventBus.java:485) 
                     at org.greenrobot.eventbus.EventBus.postToSubscription(EventBus.java:416) 
                     at org.greenrobot.eventbus.EventBus.postSingleEventForEventType(EventBus.java:397) 
                     at org.greenrobot.eventbus.EventBus.postSingleEvent(EventBus.java:370) 
                     at org.greenrobot.eventbus.EventBus.post(EventBus.java:251) 
                     at pl.eltegps.smokkomunikator.ui.fragment.NewMessageFragment.photo(NewMessageFragment.java:259) 
                     at pl.eltegps.smokkomunikator.ui.fragment.NewMessageFragment$$ViewBinder$1.doClick(NewMessageFragment$$ViewBinder.java:28) 
                     at butterknife.internal.DebouncingOnClickListener.onClick(DebouncingOnClickListener.java:22) 
                     at android.view.View.performClick(View.java:6199) 
                     at android.view.View$PerformClick.run(View.java:23647) 
                     at android.os.Handler.handleCallback(Handler.java:751) 
                     at android.os.Handler.dispatchMessage(Handler.java:95) 
                     at android.os.Looper.loop(Looper.java:154) 
                     at android.app.ActivityThread.main(ActivityThread.java:6682) 
                     at java.lang.reflect.Method.invoke(Native Method) 
                     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1520) 
                     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1410) 

を私がチェックし、それがcorretly動作しますが、新しいAndroid上、それはdoesnの正確に動作している理由はわかりません...

+0

カメラにアクセスするために使用しているコードを貼り付けることはできますか? –

答えて

0

これは、7.0のテスト中に直面した問題です。 getUri()をコンテンツプロバイダを使用せずに7.0で直接使用することはできないようです。

takePictureIntent.putExtra(MediaStore.EXTRA_OUTPUT, 
          FileProvider.getUriForFile(getActivity(), getActivity().getApplicationContext().getPackageName() + ".provider", f)); 

これを使用して、プロジェクトのxmlディレクトリにprovider.xmlを追加する必要があります。

thisリンクは詳しい説明があります。

関連する問題