1. skoschke, 24.06.2011 #1
    skoschke

    skoschke Threadstarter Erfahrener Benutzer

    Hallo,

    trotz intensiven Googlens habe ich nichts gefunden, vielleicht hat jemand einen Tip zu folgendem Problem:

    Meine Anwendung (zur Zeit Windows Mobile 6.1) soll auf Android portiert werden.
    Zur Lizensierung habe ich bisher (wie auch einige Naviprogramme) das Programm an die SD-KartenID (nicht die VolumeID der Karte!) gekoppelt.

    Damit kann der Anwender das Programm auf beliebigen PDA's benutzen, nur Karte einstecken und los geht's ;-)
    Eine Kopplung au die Seriennummer des Devices oder an die IMEI wird nicht gewünscht!

    So, aber wie komme ich unter Android an diese Nummer?
    Kann mir bitte jemand mit einem Codeschnipsel oder Link weiterhelfen?

    Danke
    Ciao
    Stefan
     
  2. Thyrion, 24.06.2011 #2
    Thyrion

    Thyrion Ehrenmitglied

    Meinst du evtl. die CID der SD-Karte?

    $ cat /sys/class/mmc_host/mmc1/mmc1:*/cid

    Die kannst du mit dem obigen Befehl ermitteln (mmc1 kann variieren). Wie sich das mit Androiden verhält, die eine interne SD-Karte haben (das sind in der Regel die Samsung Handys), kA.
     
  3. skoschke, 26.06.2011 #3
    skoschke

    skoschke Threadstarter Erfahrener Benutzer

    Hallo Thyrion,

    danke erst mal,
    ja, die CID meine ich.
    Wenn der von Dir angegebene Pfad variieren kann, ist das nicht unbedingt die "ultimative" Lösung:winki:
    Es geht immer um die externe SD-Karte, auf der sitzt mein Programm und soll den Programm-Schlüssel gegen die CID prüfen.

    Das (bei Windows Mobile geht es) soll auf allen Devices automatisch gehen, gibt es noch einen anderen Ansatz an die CID der SD-Karte zu kommen?

    Ciao
    Stefan
     
  4. Thyrion, 26.06.2011 #4
    Thyrion

    Thyrion Ehrenmitglied

    Dein Programm sitzt aber bei Android im internen Speicher und kann auf die SD-Karte hölchstens zugreifen und dort Daten ablegen/lesen - hier könnte dann dein Schlüssel ins Spiel kommen.

    Nur zum Verständnis. Wie kommt dein Schlüssel/Programm auf die ext. SD-Karte? Wie gesagt, es gibt Handys mit eingebauter SD-Karte.

    Der Befehl oben funktioniert so. Du musst evtl. lediglich mmc1 ersetzen. Jetzt müssen wir nur noch herausfinden, welcher mmc die externe SD-Karte ist.
     
  5. skoschke, 27.06.2011 #5
    skoschke

    skoschke Threadstarter Erfahrener Benutzer

    Hallo Thyrion,

    wie kommt der Schlüssel auf die SD-Karte?
    Unter Windows Mobile hatte ich folgenden Ablauf:
    Ein Spezialtool auf dem Device wird gestartet, mit jedem SD-Kartenwechsel wird die gelesene CID als Textdatei auf die SD geschrieben.
    Danach kommen die SD-Karten in einen Kartenleser am PC, ein Schlüsselprogramm am PC berechnet die Schlüsseldatei, schreibt diese auf die SD-Karte und kopiert danach alle erforderlichen Programminstallationsdateien.
    Der erste Schritt im PDA ist erforderlich, da per USB-Kartenleser am PC die CID nicht gelesen werden kann, zumindest habe ich keinerlei Möglichkeit dafür gefunden :angry:
    Das Programm selbst liest beim Starten die CID ebenfalls aus, verifiziert diese mit der Schlüsseldatei und startet, wenn alles paßt.
    Somit ist die erstellte SD-Karte in jedem beliebigen Gerät nutzbar, im Gegensatz zur Bindung an IMEI, Mac-Adresse oder ähnlichem...
    Das gleiche (oder eben analog dazu) möchte ich nun auch auf einem Android-Device machen.

    Wenn ich Dich nun richtig verstanden habe, ist nicht das "mmc1" nicht auf verschiedenen Devices unterschiedlich sondern ich muß nur das "richtige mmc#" für die externe SD-Karte benutzen?

    Interne SD-Karten (gibts die überhaupt oder meinst Du internen Flash-Speicher?) sollen, wie Du am obigen Verfahren siehst, auch nicht unterstützt werden.

    Ciao
    Stefan
     
  6. Thyrion, 27.06.2011 #6
    Thyrion

    Thyrion Ehrenmitglied

    Ob du die CID am PC auslesen kannst, hängt vom Kartenleser ab. Mit meinem FuSi Amilo Pro Laptop geht's :smile: -> jo0ls' .Net stuff: Read SD Card CID (serial number) und Mein Post hier
    Aber das ist eher die Ausnahme als die Regel.

    Das Verfahren kannst du im Prinzip genauso machen, nur dass du dein Programm vermutlich schon auf dem Handy haben musst, statt es auf die SD-Karte zu legen. Aber weitere Programmdaten können da ruhig liegen.

    Nein, ich meine nicht die Flash-ROMs (naja, eine SD-Karte ist ja strenggenommen auch nichts anderes). Samsung verbaut z.B. embedded SD-Cards. Davon stehen z.B. beim I7500 dem Benutzer 7 GB zur freien Verfügung, als wenn es eine SD-Karte wäre (und die wird an den Ort gemountet (/sdcard), wo bei anderen Handys die externen SD-Karten sind. Die externe SD-Karte liegt dort dann unter /sdcard/sd).

    Und richtig, du musst nur die richtige mmc# verwenden. mmc1 ist es z.B. beim HTC Desire - bei anderen Geräten muss ich spekulieren, aber ich vermute mal, bei den meisten Smartphones ohne fest verbaute SD-Karte ist das identisch.
     
    skoschke gefällt das.
  7. skoschke, 27.06.2011 #7
    skoschke

    skoschke Threadstarter Erfahrener Benutzer

    Hallo Thyrion,

    jetzt habe ich das mit der "internen/externen" SD-Karte verstanden :biggrin:
    Danke für den Link, genau diesen Weg über Net CF bin ich bei der Windows-Mobile-Variante auch gegangen.
    Leider habe ich immer nur USB-Kartenleser, denke aber, mich direkt mal auf die Suche nach PCI-Lösungen umzusehen, damit könnte der Zwischenschritt der Seriennummer-Ermittlung entfallen und die SD-Karte komplett am PC erstellt werden...

    Jetzt wo Du fragst, da merke ich einen Denkfehler:
    Wenn ich eine SD-Karte mit der Programm-apk und der Schlüsseldatei ausliefere, kann der Anwender ja nicht sofort loslegen wie bei meiner Windows-Variante, er müßte sich ja noch irgendeinen Datei-Explorer (z.B. ES-Dateiexplorer) installieren.

    Dafür sind unsere Kunden meist schon "zu unbedarft", die können meist nur "fertige Geräte bedienen..." :huh:

    Fällt Dir dazu etwas ein, wie man das lösen könnte?

    Ciao
    Stefan
     
Die Seite wird geladen...
Ähnliche Themen Forum Datum
[ERLEDIGT] Wie kann ich feststellen ob eine SD-Karte migriert wurde Android App Entwicklung Freitag um 13:42 Uhr
[ERLEDIGT] RFID Karten Kommunikation? Android App Entwicklung 18.06.2017
Wie binde ich Openstreetmap Karten ein ? Android App Entwicklung 19.02.2017
Speichern auf SD-Card Android App Entwicklung 02.12.2016
Benutzer mit Hardware Tocken (NFC Karte) Indentifizieren? Android App Entwicklung 20.10.2016
Textdatei auf SD Karte auslesen funktioniert nicht (Oneplus One) Android App Entwicklung 24.08.2016

Users found this page by searching for:

  1. sdkarte seriennummer auslesen

    ,
  2. sd karte cid auslesen

    ,
  3. sd karte seriennummer

    ,
  4. sd kartennummer auslesen,
  5. ID daten auslesen sd,
  6. schlussel sd karte,
  7. sd-karte Seriennummer,
  8. sd karten entwicklung,
  9. doppeltbespielte sd card auslesen,
  10. sd karte cid kopieren,
  11. id von sd karte auslesen,
  12. sd karten id auslesen
Du betrachtest das Thema "SD-Karte: KartenID ermitteln" im Forum "Android App Entwicklung",