Salam alaikum,
Die App ist einfach beeindruckend, möge Allah Sie segnen. Ich habe mich nur gefragt, warum nicht alle "التلاوات" lückenlos sein sollen? Ich denke, hier ist eine Möglichkeit, wie Sie eine solche Funktion implementieren können:
Ich bin ein Java-Entwickler und kann in diesem Teil helfen. Hier ist mein Twitter-Account: @EngineerFouad
Beste Grüße~
wa3laikum alsalam,
jazakAllah khairan. Der Download ist nicht das Problem, da „Herunterladen“ der Standardmodus ist (was bedeutet, dass alle Dateien heruntergeladen werden, bevor wir mit dem Streaming beginnen).
Ich glaube, jemand hat uns eine ähnliche Lösung zu dem gegeben, was Sie vorgeschlagen haben, aber wir haben sie nicht verwendet, weil die MediaPlayer-Objekte im Allgemeinen ziemlich schwer sind. Die Lösung, die ich implementieren wollte, ist die Verwendung von setNextMediaPlayer-Methoden in MediaPlayer, der ab API-Level 16 eingeführt wurde.
Also denke ich, dass wir diesen Ansatz insha'Allah wählen sollten, da er einfacher und leichter ist.
walsalam 3alaikum.
Danke für die schnelle Antwort. Zunächst einmal bin ich mit setNextMediaPlayer() in API 16 nicht vertraut, aber ich denke, es benötigt eine Datenquelle, die die Datei der nächsten Ayah ist, die zum Zeitpunkt des Aufrufs von setNextMediaPlayer() vorhanden sein muss. Zweitens, können Sie setNextMediaPlayer() verwenden, während die App auf Ebene API 8 ausgeführt wird?
Schließlich, wie Sie sagten, werden die Dateien heruntergeladen, bevor sie gestreamt werden, daher sind keine Bedenken hinsichtlich des Arbeitsspeichers erforderlich, da wir uns nur mit Dateien befassen. Mit anderen Worten, die Warteschlange würde Instanzen einer Wrapper-Klasse enthalten, die Informationen über die Ayah und den Dateipfad enthält. Sie würden nur eine Instanz von MediaPlayer verwenden.
Danke.
Ich glaube nicht, dass viel verarbeitet wird - der Grund für den Platz (glaube ich) liegt am MediaPlayer selbst und daran, wie er die Dateien auslagert (da die Datei zu diesem Zeitpunkt bereits heruntergeladen ist, also theoretisch es sollte sehr schnell mit dem Abspielen beginnen, besonders wenn es sich nicht um eine externe SD-Karte handelt).
Mögliches Duplikat von #231
Salam alaikum,
Ich bin beeindruckt von der Arbeit, die an der App geleistet wurde.
Ich möchte nur vorschlagen, Exoplayer zu verwenden, um lückenloses Audio zu erhalten. Es ist wirklich ein fortschrittliches Audio-Framework. Ich habe die Quran-App entwickelt, die von Quran Android inspiriert ist und Exoplayer verwendet, um mehrere Ayat abzuspielen. Das Aufklaffen ist beim Rezitieren fast nicht wahrnehmbar. Ich werde einen Link zum Testen der App einfügen. Klicken Sie einfach auf die Aya-Nummer in der App und drücken Sie die Wiedergabetaste.
https://drive.google.com/file/d/1auO-B9aMJlSWd846CylRg9G-ciRnO1u0/view?usp=sharing
Ich kann den Link zum App-Repository auf GitHub geben, wenn mir das Ergebnis gefällt.
Danke für deine Bemühungen.
Wa alaikum assalam @vipafattal.
Klingt nach einem tollen Upgrade. Getestet mit "Maher Al Muaiqly", Lücken werden gnädiger behandelt.
Bitte PN senden.
wa3laikum alsalam,
masha'Allah, das ist großartig - wenn Sie Zeit haben, an einer PR zu arbeiten, fühlen Sie sich bitte frei, sonst wird in sha'Allah versuchen, dies zu tun.
walsalam 3alaikum.
Galt es hat euch gefallen!
Es tut mir wirklich leid, aber derzeit habe ich keine Zeit, PR zu erstellen.
Wie auch immer, ich habe mich entschieden, Musahf Open Source zu machen, hier ist ein Link zum Repository:
Musahf
Sehen Sie, wie ich es geschafft habe, eine Medienquelle für jeden Reciter-Link für die Offline-Streaming-Wiedergabe von der Datei Play MediaSourceBuilder.kt zu erstellen. Dann übergebe ich die erstellte Medienquelle in ReciterPlayer.kt (siehe Funktion „onDownloadingCompleted“) an ReadQuranActivity.kt .
Hilfreiche Links zu Exoplayer:
Google-Codelab
Google Exolpayer Pub auf Medium
heute sind alle außer 5 qaris lückenlos. wahrscheinlich ist es sinnvoller, diese qaris stattdessen an dieser Stelle zu lücken und die lückenhafte Unterstützung vollständig zu entfernen.
Ich habe auch einen Zweig, der auf Exoplayer umschaltet (Stand Ende Dezember 2019), obwohl ich keine spezielle Übergangslogik für Gap-Audio hineingesteckt habe. kann in Betracht ziehen, dies als Hauptakteur in der Zukunft in sha'Allah voranzutreiben.
Hilfreichster Kommentar
heute sind alle außer 5 qaris lückenlos. wahrscheinlich ist es sinnvoller, diese qaris stattdessen an dieser Stelle zu lücken und die lückenhafte Unterstützung vollständig zu entfernen.
Ich habe auch einen Zweig, der auf Exoplayer umschaltet (Stand Ende Dezember 2019), obwohl ich keine spezielle Übergangslogik für Gap-Audio hineingesteckt habe. kann in Betracht ziehen, dies als Hauptakteur in der Zukunft in sha'Allah voranzutreiben.