Android Studio Kotlin QR Code Scanner erweitern?

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")