浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

【androidStudio】※解決 cordova-plugin-barcodescannerがコミット後いきなり動かなくなった

cordova-plugin-barcodescannerプラグインを入れて実際にスキャナーをしようとボタンを

押したらと突然アプリがクラッシュした。

昨日までは普通にスキャンできていたのにも関わらず。

 

cordova platfoms rm androidをして再度cordova platfoms add androidをしたのでプラグインそのものが

入っていないわけではない。念のためcordova plugin lsをしてもpackage.jsonの中を見てもしっかり

cordova-plugin-barcodescannerプラグインは存在していた。

44:05.472 23560-23681/jp.co.cpointlab.myapp E/AndroidRuntime: FATAL EXCEPTION: pool-1-thread-2
Process: jp.co.cpointlab.myapp, PID: 23560
android.content.ActivityNotFoundException: Unable to find explicit activity class {jp.co.cpointlab.myapp/com.google.zxing.client.android.CaptureActivity}; have you declared this activity in your AndroidManifest.xml?
at android.app.Instrumentation.checkStartActivityResult(Instrumentation.java:1939)
at android.app.Instrumentation.execStartActivity(Instrumentation.java:1617)
at android.app.Activity.startActivityForResult(Activity.java:4472)
at org.apache.cordova.CordovaActivity.startActivityForResult(CordovaActivity.java:345)
at android.app.Activity.startActivityForResult(Activity.java:4430)
at org.apache.cordova.CordovaInterfaceImpl.startActivityForResult(CordovaInterfaceImpl.java:68)
at com.phonegap.plugins.barcodescanner.BarcodeScanner$1.run(BarcodeScanner.java:204)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)

 

渋々エラーを見るとアクティビティは見つからなかったのでこのプラグインを使うことができません。

みたいなことが書いており、どうやら何らかの理由でandroidStudioにcordova-plugin-barcodescannerプラグインが

認識されずそのままアプリがrunしてしまったみたいです。

ところがビルドの際はnpm run build→cordova prepare androidで必ずandroidStudioに中継をしているので動機のし忘れは考えにくい。

 

心当たりがあるとすればソースツリーで更新したpackage.jsonとconfig.xmlをコミットしたくらい

ですがコミット前は全然プラグイン周りはいじってないしプラグインがpackage.jsonを

入ったことを確認した上でnpm installを実行したのでこれだ!とは断言はしにくい。

恐らく無意識にpackage.json・package.lock.jsonをいじったかcordova prepare androidを

して同期している時に他のプラグインの依存系のエラーにはまってcordova-plugin-barcodescanner

プラグインがandroidStudioに入らなかったかのどちらかだと睨んでいます。

とりあえず原点に戻って再度cordova platfoms rm androidをして再度cordova platfoms add android

を実行。今度はしっかりとバーコードスキャナ―が動いた。

 

package.jsonにプラグインは入っていてもその過程でなにか他のプラグインが違う動きをしたと思ったら

一度立ち止まって解決してから確認をしましょう。

  • この記事いいね! (0)