前提・実現したいこと
Android StudioでQRコードの認識システムアプリを作っているのですが、コードを読み取った直後にアプリケーションが終了してしまいます。
特に目立ったエラーメッセージも表示されておらず、原因の検討がつかなくて頭を悩ませています。
以下のようなコードで実装しています。言語はKotlinを使用しています。
該当のソースコード
class MainActivity : AppCompatActivity() { private var qrScanIntegrator: IntentIntegrator? = null override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) qrScanIntegrator = IntentIntegrator(this) // 画面の回転をさせない (今回は縦画面に固定) qrScanIntegrator?.setOrientationLocked(false) // QR 読み取り後にビープ音がなるのを止める qrScanIntegrator?.setBeepEnabled(false) // スキャン開始 (QR アクティビティ生成) qrScanIntegrator?.initiateScan() } override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) { // 結果の取得 val result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data) if (result != null) { // result.contents で取得した値を参照できる Toast.makeText(applicationContext, result.contents, Toast.LENGTH_LONG).show() } else { super.onActivityResult(requestCode, resultCode, data) } } }
apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' android { compileSdkVersion 30 buildToolsVersion "30.0.0" defaultConfig { applicationId "com.websarva.wings.android.qr_ja1" minSdkVersion 26 targetSdkVersion 26 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } dependencies { implementation fileTree(dir: "libs", include: ["*.jar"]) implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" implementation 'androidx.core:core-ktx:1.3.0' implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'androidx.constraintlayout:constraintlayout:1.1.3' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.1' androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0' implementation 'com.journeyapps:zxing-android-embedded:4.0.2' implementation 'androidx.appcompat:appcompat:1.1.0' implementation 'com.google.zxing:core:3.4.0' }
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.websarva.wings.android.qr_ja1"> <application android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme" android:hardwareAccelerated="true"> <activity android:name="com.journeyapps.barcodescanner.CaptureActivity" android:screenOrientation="fullSensor" tools:replace="screenOrientation" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
試したこと
gladleのターゲット情報を変更しましたが、特に変わりありませんでした。
補足情報(FW/ツールのバージョンなど)
こちらのHPの情報を利用しました。
→https://qiita.com/Toya-Onodera/items/7311e03917dea78f67ee
使用機器はHUAWEI MediaPad T5
AndroidのバージョンはOreo(26)です。
回答1件
あなたの回答
tips
プレビュー