Android Android.support.v4.Content.fileprovider No Show Turkish Characters

Android android.support.v4.content.fileprovider no show turkish characters

Android’de, dosyaları diğer uygulamalarla paylaşmak için android.support.v4.content.FileProvider sınıfını kullanabilirsiniz. Ancak, Türkçe karakterler içeren dosyaları paylaşırken sorun yaşayabilirsiniz. Bu sorun, FileProvider sınıfının varsayılan olarak UTF-8 karakter kodlamasını kullanmasından kaynaklanmaktadır. Türkçe karakterler UTF-8 karakter kodlamasında doğru şekilde temsil edilmediği için, diğer uygulamalar bu karakterleri doğru şekilde görüntüleyemeyebilir.

Bu sorunu çözmek için, FileProvider sınıfının setAuthorities yöntemini kullanarak, sağlayıcının yetkilerini belirleyebilirsiniz. Yetkileri belirlerken, FileProvider sınıfının URI_AUTHORITIES sabitini kullanmalı ve yetkilerin listesini bir dizi olarak geçirmelisiniz. Yetkiler dizisindeki her öğe, bir uygulama paketi adı ve bir dosya yolu içermelidir. Örneğin, aşağıdaki kod parçası, com.example.myapp uygulamasının “/storage/emulated/0/Download” dizinindeki dosyaları paylaşmak için bir FileProvider sınıfı oluşturur:

java
FileProvider fileProvider = new FileProvider();
fileProvider.setAuthorities(new String[]{
"com.example.myapp.fileprovider",
"/storage/emulated/0/Download"
});

Bu kodu AndroidManifest.xml dosyasına ekledikten sonra, FileProvider sınıfını kullanarak dosyaları diğer uygulamalarla paylaşabilirsiniz. Örneğin, aşağıdaki kod parçası, “/storage/emulated/0/Download/myfile.txt” dosyasını diğer uygulamalarla paylaşır:

java
Intent intent = new Intent(Intent.ACTION_SEND);
intent.setType("text/plain");
intent.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(this, "com.example.myapp.fileprovider", new File("/storage/emulated/0/Download/myfile.txt")));
startActivity(intent);

Bu kod parçasını çalıştırdığınızda, Android sisteminiz dosyayı paylaşmak için kullanabileceğiniz bir uygulama seçmenizi isteyecektir. Seçtiğiniz uygulama, dosyayı doğru şekilde görüntüleyecektir.

Faydalı Siteler

İlgili Dosyalar


Yayımlandı