Merhabalar,
Sanırım sıkıntı buymuş. Önerilenleri uyguladım ama olmuyor! Deneyimi
olan var mıdır?
https://inthecheesefactory.com/blog/how-to-share-access-to-file-with-fileprovider-on-android-nougat/en
Kolay gelsin,
Mucip:)
28.05.2019 13:46 tarihinde Dr. Mucibirahman İLBUĞA yazdı:
Merhablar,
Android Studio ile çekilen resmin SD Kart içine kaydedilmesini istiyor
ve dosya lokasyonunuve ismini belirlemek istiyorum. Bu anlamda da
aşağıdaki kodu buldum. Her ne kadar kodun başında SD kart lokasyonunu
bulacağı söylense de "file:///storage/emulated/0/CSI/CSI0103-0015.jpg"
şekliden bir yola yazıyor. Bunu çözemedim. Bu diğer bir konu ama asıl
önemlisi Android 5.1 tablette çalışan aşağıdaki fonksiyon Android 8
telefonda hata vererek program kendini sonlandırıyor.
Hata mesajı da aşağıda.
private File getFile() {
String extStorageDirectory =
Environment.getExternalStorageDirectory().getAbsolutePath();
//Toast.makeText(getApplicationContext(),extStorageDirectory,
Toast.LENGTH_SHORT).show(); File folder =new File(extStorageDirectory+"/CSI");
if(!folder.exists())
{
folder.mkdir();
}
barkod = (EditText)findViewById(R.id.editTextPaketNo);
File resimDosyasi =new File(folder,barkod.getText().toString()+".jpg");
return resimDosyasi;
}
Hata mesajı:
E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.csisevkiyat, PID: 5676
java.lang.IllegalStateException: Could not execute method for
android:onClick
at
android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:293)
at android.view.View.performClick(View.java:6935)
at android.widget.TextView.performClick(TextView.java:12742)
at android.view.View$PerformClick.run(View.java:26211)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:7000)
at java.lang.reflect.Method.invoke(Native Method)
at
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
Caused by: java.lang.reflect.InvocationTargetException
at java.lang.reflect.Method.invoke(Native Method)
at
android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288)
at android.view.View.performClick(View.java:6935)
at android.widget.TextView.performClick(TextView.java:12742)
at android.view.View$PerformClick.run(View.java:26211)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:7000)
at java.lang.reflect.Method.invoke(Native Method)
at
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
Caused by: android.os.FileUriExposedException:
file:///storage/emulated/0/CSI/CSI0103-0015.jpg exposed beyond app
through ClipData.Item.getUri()
at android.os.StrictMode.onFileUriExposed(StrictMode.java:1960)
at android.net.Uri.checkFileUriExposed(Uri.java:2356)
at
android.content.ClipData.prepareToLeaveProcess(ClipData.java:945)
at android.content.Intent.prepareToLeaveProcess(Intent.java:10604)
at android.content.Intent.prepareToLeaveProcess(Intent.java:10589)
at
android.app.Instrumentation.execStartActivity(Instrumentation.java:1618)
at android.app.Activity.startActivityForResult(Activity.java:4621)
at
android.support.v4.app.BaseFragmentActivityApi16.startActivityForResult(BaseFragmentActivityApi16.java:54)
at
android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:67)
at android.app.Activity.startActivityForResult(Activity.java:4579)
at
android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:720)
at
com.example.csisevkiyat.MainActivity.resimCek(MainActivity.java:179)
at java.lang.reflect.Method.invoke(Native Method)
at
android.support.v7.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:288)
at android.view.View.performClick(View.java:6935)
at android.widget.TextView.performClick(TextView.java:12742)
at android.view.View$PerformClick.run(View.java:26211)
at android.os.Handler.handleCallback(Handler.java:790)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:7000)
at java.lang.reflect.Method.invoke(Native Method)
at
com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
V/MediaPlayer-JNI: native_finalize
release
Application terminated.
--
Kolay gelsin,
Mucip:)
_______________________________________________
Linux-programlama mailing list
Linux-programlama@liste.linux.org.tr
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php