Expansion Files einsehbar für alle?

  • Hi Leute,


    ich bin gerade dabei eine App die es schon seit einiger Zeit für iOS gibt für Android zu entwickeln. In dieser App sind direkt Videos drinnen. Die iOS App hat somit 130mb. Bei der Android Version habe ich die Videos in das raw Verzeichnis der Ressourcen getan. Und jetzt glaube ich könnt ihr nachvollziehen was passiert: Das bläht meine APK auf 160mb (30 mehr da Grafiken für alle Größen) auf. Google Play lässt ja nur 50mb zu...


    Um zu erklären warum die Videos direkt in der App verbaut werden:
    1. Die Videos sind der Grund, die App zu kaufen. Sollte also jemand die Videos auf Youtube oder ähnliches laden, wäre das ein Disaster für meinen Auftraggeber.
    2. Mein Auftraggeber wirbt bei der App dafür, dass sie auch ohne Empfang komplett einsetzbar ist. Das bedeutet dass Streaming keine Lösung ist.


    Also mache ich mich an die Programmierung und Anpassung an Expansion Files und will die Videos Auslagern in das "main" file. Das File soll im zip Format gespeichert werden.


    Aber jetzt habe ich ein Problem: Die Videos sind somit für jeden einseh- /kopier- /verschiebbar... Das widerspricht wieder Punkt 1, undzwar dass die Videos wichtig sind und nicht einfach so zugreifbar sein sollten...


    Was mache ich nun?


    Ich kann mir nicht vorstellen dass google dafür nichts vorgesehen hat...


    leider stehe ich hier vor einer mehr oder minder großen Hürde.


    lg


    Artur

  • 1) Viel Spaß dabei. Packst Du die Videos in den Resources Ordner, liegen sie im .apk vor. Da es sich dabei nur um eine erweiterte .zip Datei handelt, hat jeder Hans und Franz sofortigen Zugriff auf die Videos, sofern er an das .apk ran kommt. Ich kann mir vorstellen, dass das nicht gewollt ist.
    Ich kann mir aber nicht vorstellen, dass sich das umgehen lässt. Das ist übrigens bei dem .ipa von iOS auch nicht großartig anders.


    2) Und selbst wenn wäre Streaming ziemlich blöd, da Streamen technisch nichts großartig Anderes ist als ein Download. Wenn also jemand die URL zu den Videos hat (welche sich auf einem gerooteten Gerät via Netzwerksniffer sehr sehr zügig herausfinden lässt) und über einen 'speziellen' Streamer laufen lässt (curl mit dem -o Flag zum Beispiel), landet das Video auf deren Platte und vielleicht wenig später auch auf Youtube.


    Also ganz generell ist die Anforderung überhaupt nicht erfüllbar.
    Sag mir, wie die iOS App heißt, und ich besorg Dir höchst wahrscheinlich die Videos daraus. :P


    Mir fällt nur eine einzige wirklich sinnvolle Lösung, ein Video ausschließlich und nur für die App zur Verfügung zu stellen. Eigenes Videoformat ausdenken, programmieren und einen eigenen Player implementieren. Wird allerdings ein bisschen mehr Aufwand mit der Komprimierung der Daten und so weiter.


    Wie gesagt, die von Dir aufgelisteten Anforderungen sind (nach meinem Kenntnisstand) nicht erfüllbar.
    Mit einem Hinweis auf die iOS Variante schaue ich gerne nach, ob (und ggf. wie) der iOS Entwickler versucht hat das Ganze hinzubekommen.


    Ich würde vermutlich ein von Android unterstütztes aber nicht allzu gängiges Komprimierungsverfahren nutzen (rar vielleicht) und die gepackte Datei einfach movies (ohne Dateiänderung) nennen. Der durchschnittliche Dieb wird den Braten der komprimierten Datei riechen und es in .zip umbenennen – und sicherlich scheitern.
    Sobald natürlich jemand in den Header schaut, hat sich das auch erledigt.


    Und mit Technologien wie einer Videokamera lässt sich auch das ganz einfach umgehen…


    Fazit: Willkommen in der digitalen Welt. Wer will, kommt an alle Daten ran.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

  • Hallo,


    danke für deine Antwort.


    dass ich die direkt aus der apk, eben so aus dem ipa ziehen kann ist mir klar. Trotzdem ist es für den Leihen eine gewisse Herausforderung. Und darum geht es mir. Dass ich es nie ganz sichern kann ist mir klar. Aber bei den gezippten expansion files wird es halt ein komplettes Scheunentor, da sie über einen Filebrowser ganz einfach erreichbar sind, schon als zip vorliegen, etc...


    Ich komme eigentlich aus der iOS Welt, in der ein normaler Benutzer auf solche Daten nur über Umwege zugreifen kann.


    Ich habe Zugriff auf die iOS sources und kann daher sagen dass es dort nichts anderes ist, als die Videos direkt in der App. Aber wie gesagt, der normale Benutzer hat gar keine Ahnung wie er an die Videos kommen könnte.


    Danke für deine Antwort!


    lg


    Artur

  • Wenn es nur gegen den normalen Benutzer geht, versuch das Archiv einfach nicht .zip zu nennen sondern die Dateiendung wegzulassen.
    Wenn es gegen etwas erfahrenere Benutzer geht, nimm ein anderes Archivierungsformat als zip und lass die Dateiendung weg.

    Je mehr Käse, desto mehr Löcher.
    Je mehr Löcher, desto weniger Käse.
    Daraus folgt: je mehr Käse, desto weniger Käse.


    »Dies ist ein Forum. Schreibt Eure Fragen in das Forum, nicht per PN!«

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!