Android Studio Kotlin QR Code Scanner erweitern?
Moin,
ich habe mir einen QR Code Scanner runtergeladen. Dieser zeigt immer den Inhalt des QR Codes an. Dieser beinhaltet immer einen Text und dann kommt die Ticketnummer (Beispiel: "Ticket: e101").
Nun will ich das "e101" rauslesen und in eine Liste reinschreiben. Die Liste soll somit kontinuierlich erweitert werden. Dies soll in einem extra Fenster in der App umgestzt werden und kontinuierlich angezeigt werden.
Wie könnte ich das umsetzten? Kann mir da jemand helfen?
1 Antwort
Analysiere erst einmal das Format der Zeichenfolgen, die du erhältst, um ein gemeinsames Muster auszumachen bzw. Orientierungspunkte, mit Hilfe derer du die für dich relevante Information herausfiltern kannst.
Sollte jede Zeichenfolge tatsächlich so aufgebaut sein:
Ticket: e101
könntest du sie bspw. anhand eines Separators auftrennen:
val value = "Ticket: e101"
val ticketNumber = value.split(": ")[1]
oder anhand der Position:
val value = "Ticket: e101"
val ticketNumber = value.substring(8)
oder anhand eines regulären Ausdrucks:
val value = "Ticket: e101"
val regex = """Ticket: ([a-zA-Z0-1]{4})""".toRegex()
val matches = regex.find(value)!!
if (matches.size > 1) {
val ticketNumber = matches[1]
print(ticketNumber)
}
Die Information über die Ticketnummer kannst du in einem Intent-Objekt speichern, welches du an die Activity übergibst, die sie anzeigen soll.
// in Activity 1
val ticketNumber = // get ticket number ...
val intent = Intent(/* ... */)
intent.putExtra("ticketNumber", ticketNumber)
startActivity(intent)
// in Activity 2
val ticketNumber = intent.getStringExtra("ticketNumber")