1

Ekran görüntülerini bir BroadcastReceiver kullanarak alan bir uygulama geliştiriyorum. yönteminde, ekran görüntüsünü alıyorum ve onu bir Screenshot/ dizinine kaydediyorum. Sorun şu ki, klasördeki ekran görüntüsünü görebiliyorum ama onu bir galeride göremiyorum. Belki de galeri yenilenmez mi? Benim BroadcastReceiverMediaScanner sınıfı veya sendBroadcast yöntemini kullanmayı denedim, ancak uygulama çöktüğü için çalışmıyor.Ekran görüntüsünü yakaladıktan sonra galeri nasıl yenilenir?

Resimleri kaydettikten sonra galeriyi nasıl yenileyebilirim?

+0

MediaScanner için kullandığınız kodu kaydeder misiniz? Ayrıca, uygulama çöktüğünde, günlükler ne diyor? – bryan

+0

MediaScannerConnection.scanFile (içerik, yeni Dize [] {file.toString()}, null, yeni MediaScannerConnection.OnScanCompletedListener() {public void onScanCompleted (Dize yolu, Uri uri) {Log.i ("ExternalStorage", "Taranan" + yol + ":"); Log.i ("ExternalStorage", "-> uri =" + uri);}}); –

+0

Uygulama çöküyor günlükleri diyor: java.lang.RuntimeException: Alıcı başlatılamıyor.example.projet: android.content.ReceiverCallNotAllowedException: BroadcastReceiver bileşenleri hizmetlere bağlanmasına izin verilmiyor –

cevap

1

Bu yöntemi deneyin. İzin sorunlarına sahip olmamalı.

sendBroadcast(new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, fileUri)); 
+0

Çok teşekkür ederim Bryan. İyi çalışıyor. Doğru dosyalamayı koymayı unuttum. –

İlgili konular