Android PDF Açma Hk.

  1. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek

    Merhaba,

    Bir web sitesinde PDF dosyaları var, PDF dosyalarını webview ile yakalıyorum PDF url sini ayırıyorum.

    PDF e tıklandığında PDF olarak cihaza indiriyorum fakat indirdikten sonra PDF dosyasını açtıramadım.

    Android konusunda yeniyim, yardımcı olabilecek var mı ?

     

    PDF dosyasını açmak için kullandığım kodlar aşağıdadır;

    File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/test.pdf");
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.fromFile(file), "application/pdf");
    intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    startActivity(intent);

    Aşağıdaki hatayı alıyorum;

      android.os.FileUriExposedException: file:///storage/emulated/0/test.pdf exposed beyond app through Intent.getData()

     

    DE5TROY3R tarafından 14/Şub/18 07:01 tarihinde düzenlenmiştir
  2. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    DE5TROY3R bunu yazdı

    Merhaba,

    Bir web sitesinde PDF dosyaları var, PDF dosyalarını webview ile yakalıyorum PDF url sini ayırıyorum.

    PDF e tıklandığında PDF olarak cihaza indiriyorum fakat indirdikten sonra PDF dosyasını açtıramadım.

    Android konusunda yeniyim, yardımcı olabilecek var mı ?

     

    PDF dosyasını açmak için kullandığım kodlar aşağıdadır;

    File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/test.pdf");
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.fromFile(file), "application/pdf");
    intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    startActivity(intent);

    Aşağıdaki hatayı alıyorum;

      android.os.FileUriExposedException: file:///storage/emulated/0/test.pdf exposed beyond app through Intent.getData()

     

    Hocam androidi pek bilmiyorum fakat implicit ve explicit intent olayi var oyle hatirliyorum. Sen kullanicinin sececegi bir uygulama ile acmasini istiyorsun degil mi ?

    Yoksa kendi applicationun icinden mi acmak istiyorsun


    ...kib...
  3. KısayolKısayol reportŞikayet pmÖzel Mesaj
    SUPERBICO
    SUPERBICO's avatar
    Kayıt Tarihi: 13/Haziran/2008
    Erkek

    Yolda hata var gibi?

  4. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek
    dhmm bunu yazdı
    DE5TROY3R bunu yazdı

    Merhaba,

    Bir web sitesinde PDF dosyaları var, PDF dosyalarını webview ile yakalıyorum PDF url sini ayırıyorum.

    PDF e tıklandığında PDF olarak cihaza indiriyorum fakat indirdikten sonra PDF dosyasını açtıramadım.

    Android konusunda yeniyim, yardımcı olabilecek var mı ?

     

    PDF dosyasını açmak için kullandığım kodlar aşağıdadır;

    File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/test.pdf");
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.fromFile(file), "application/pdf");
    intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    startActivity(intent);

    Aşağıdaki hatayı alıyorum;

      android.os.FileUriExposedException: file:///storage/emulated/0/test.pdf exposed beyond app through Intent.getData()

     

    Hocam androidi pek bilmiyorum fakat implicit ve explicit intent olayi var oyle hatirliyorum. Sen kullanicinin sececegi bir uygulama ile acmasini istiyorsun degil mi ?

    Yoksa kendi applicationun icinden mi acmak istiyorsun

    Android in kendi pdf görüntüleyicisi var. Onunla seçmeden açtırmasını istiyorum.

    Aşağıdaki kod ile yukarıdaki hatadan kurtuldum, pdf görüntüleyiciyi açıyor fakat siyah ekran dosya gelmiyor.

     Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(
    Uri.parse("content:///storage/emulated/0/Download/test.pdf"),
    "application/pdf");
    startActivity(intent);

     

  5. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    DE5TROY3R bunu yazdı
    dhmm bunu yazdı
    DE5TROY3R bunu yazdı

    Merhaba,

    Bir web sitesinde PDF dosyaları var, PDF dosyalarını webview ile yakalıyorum PDF url sini ayırıyorum.

    PDF e tıklandığında PDF olarak cihaza indiriyorum fakat indirdikten sonra PDF dosyasını açtıramadım.

    Android konusunda yeniyim, yardımcı olabilecek var mı ?

     

    PDF dosyasını açmak için kullandığım kodlar aşağıdadır;

    File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/test.pdf");
    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(Uri.fromFile(file), "application/pdf");
    intent.setFlags(Intent.FLAG_ACTIVITY_NO_HISTORY);
    startActivity(intent);

    Aşağıdaki hatayı alıyorum;

      android.os.FileUriExposedException: file:///storage/emulated/0/test.pdf exposed beyond app through Intent.getData()

     

    Hocam androidi pek bilmiyorum fakat implicit ve explicit intent olayi var oyle hatirliyorum. Sen kullanicinin sececegi bir uygulama ile acmasini istiyorsun degil mi ?

    Yoksa kendi applicationun icinden mi acmak istiyorsun

    Android in kendi pdf görüntüleyicisi var. Onunla seçmeden açtırmasını istiyorum.

    Aşağıdaki kod ile yukarıdaki hatadan kurtuldum, pdf görüntüleyiciyi açıyor fakat siyah ekran dosya gelmiyor.

     Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(
    Uri.parse("content:///storage/emulated/0/Download/test.pdf"),
    "application/pdf");
    startActivity(intent);

     

    Uygulama izinleri fln dogru mu hocam ? Dosya erisimi veriyor musun ?


    ...kib...
  6. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek
    dhmm bunu yazdı

    Uygulama izinleri fln dogru mu hocam ? Dosya erisimi veriyor musun ?

    hocam izinleri vermiştimde. dosya erişimi nedir?

     

    ---

    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.READ_PHONE_STATE"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

    tanımlı ayrıca kod tarafındada tanımlı;
    protected boolean shouldAskPermissions() {
    return (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP_MR1);
    }
    @TargetApi(23)
    protected void askPermissions() {
    String[] permissions = {
    "android.permission.READ_EXTERNAL_STORAGE",
    "android.permission.WRITE_EXTERNAL_STORAGE"
    };
    int requestCode = 200;
    requestPermissions(permissions, requestCode);
    }

    on create:
    if (shouldAskPermissions()) {
    askPermissions();
    }
    ---
  7. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    DE5TROY3R bunu yazdı
    dhmm bunu yazdı

    Uygulama izinleri fln dogru mu hocam ? Dosya erisimi veriyor musun ?

    hocam izinleri vermiştimde. dosya erişimi nedir?

     

    ---







    tanımlı ayrıca kod tarafındada tanımlı;
    protected boolean shouldAskPermissions() {
    return (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP_MR1);
    }
    @TargetApi(23)
    protected void askPermissions() {
    String[] permissions = {
    "android.permission.READ_EXTERNAL_STORAGE",
    "android.permission.WRITE_EXTERNAL_STORAGE"
    };
    int requestCode = 200;
    requestPermissions(permissions, requestCode);
    }

    on create:
    if (shouldAskPermissions()) {
    askPermissions();
    }
    ---

    Hocam dedimya androidi pek bilmem. sen READ_EXTERNAL_STORAGE almissin. bunun READ_INTERNAL_STORAGE olanida olmasin sakin ?

     


    ...kib...
  8. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek
    dhmm bunu yazdı

    Hocam dedimya androidi pek bilmem. sen READ_EXTERNAL_STORAGE almissin. bunun READ_INTERNAL_STORAGE olanida olmasin sakin ?

     

    hocam denedim şimdi, öyle yetki çıkmadı.

  9. KısayolKısayol reportŞikayet pmÖzel Mesaj
    dhmm
    dhmm's avatar
    Kayıt Tarihi: 15/Eylül/2011
    Erkek
    DE5TROY3R bunu yazdı
    dhmm bunu yazdı

    Hocam dedimya androidi pek bilmem. sen READ_EXTERNAL_STORAGE almissin. bunun READ_INTERNAL_STORAGE olanida olmasin sakin ?

     

    hocam denedim şimdi, öyle yetki çıkmadı.

    Hocam FileUriExposedException hatasi sen bir uygulamaya ( burada pdf acici ) file://URL seklinde acma linki gonderipte gonderdigin uygulama bu yoldan okuyamazsa olusan bir exceptionmus.

    2 sey dene

    1) FLAG_GRANT_READ_URI_PERMISSION ekleyerek dene

    2) file:// yerine onune content://  koyarak bir dene.

     

     


    ...kib...
  10. KısayolKısayol reportŞikayet pmÖzel Mesaj
    DE5TROY3R
    DE5TROY3R's avatar
    Kayıt Tarihi: 04/Nisan/2007
    Erkek
    dhmm bunu yazdı
    DE5TROY3R bunu yazdı
    dhmm bunu yazdı

    Hocam dedimya androidi pek bilmem. sen READ_EXTERNAL_STORAGE almissin. bunun READ_INTERNAL_STORAGE olanida olmasin sakin ?

     

    hocam denedim şimdi, öyle yetki çıkmadı.

    Hocam FileUriExposedException hatasi sen bir uygulamaya ( burada pdf acici ) file://URL seklinde acma linki gonderipte gonderdigin uygulama bu yoldan okuyamazsa olusan bir exceptionmus.

    2 sey dene

    1) FLAG_GRANT_READ_URI_PERMISSION ekleyerek dene

    2) file:// yerine onune content://  koyarak bir dene.

     

     

    hocam content olarak deneyince yukarıdaki görsellerdeki gibi siyah ekran açılıyor. PDf görüntülemiyor, hatada vermiyor.

     

    Intent intent = new Intent(Intent.ACTION_VIEW);
    intent.setDataAndType(
    Uri.parse("content:///storage/emulated/0/Download/test.pdf"),
    "application/pdf");
    startActivity(intent);
  11. KısayolKısayol reportŞikayet pmÖzel Mesaj
    Berceste.
    MhmdAlmz
    MhmdAlmz's avatar
    Kayıt Tarihi: 09/Ağustos/2015
    Erkek

    FileProvider kullan hocam yada SDK yı 23 den aşağıya çek Target SDK yı .

    Intent i=new Intent(Intent.ACTION_VIEW, FileProvider.getUriForFile(this, AUTHORITY, file));
    
    i.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
    startActivity(i);



    MhmdAlmz tarafından 14/Şub/18 11:04 tarihinde düzenlenmiştir

    Fe Eyne Tezhebun?
Toplam Hit: 918 Toplam Mesaj: 16
android pdf açma görüntüleme