【Android Studio】ApkProvisionException: Error loading build artifacts from:~エラーが発生する

事象

作成したアプリを起動させようと、再生ボタン(Run ‘app’)をクリックしても、すぐに再生ボタンのマークに戻ってしまう。

コンソール出力を見ると、以下のように記載されていた。

Unable to determine application id: com.android.tools.idea.run.ApkProvisionException: Error loading build artifacts from: C:\temp\xxxxx\app\build\outputs\apk\debug\output-metadata.json

原因不明のため、Android StudioのメニューのFile→Invalidate Caches / Restartをクリック。以下のメッセージが表示されるので「Invalidate and Restart」をクリック。※Android Studioが再起動されます!

再起動後、普通にアプリが起動するようになった。

Eclipseの時もクリーンを使うタイミングが何度かあったので、こうなったときは何も考えずに「Invalidate Caches / Restart」すればいいかな。。。

 

 

【Android Studio】Failed to install the following Android SDK packages as some licences have not been accepted.エラーが発生する

Android Studio4.1.1を利用していたが、別PCに4.2.1を構築し、以前作成したソースを持ってきて実行しようとしたところ、以下のエラーが発生した

Failed to install the following Android SDK packages as some licences have not been accepted.
   build-tools;30.0.2 Android SDK Build-Tools 30.0.2
To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.
Alternatively, to transfer the license agreements from one workstation to another, see http://d.android.com/r/studio-ui/export-licenses.html

「licences have not been accepted」とあるので、調べたところ「sdkmanager –licenses」を実行すれば良いとあったが、効果が無かった。

原因が分からなかったが、4.2.1で新規に作成したソースだと動作しているため差を確認したところ、build.gradleのbuildToolsVersionが30.0.3となっていたため、ここを同じように30.0.2から30.0.3に書き換えることで動作した!

 

【Androidアプリ】電光ニュース(LED News)


Ver 1.2.1(2021/10/16公開)

YahooやNHKの最新ニュースを電光掲示板風に表示します。
机の横においてぼーっと眺めるのに最適です。
ダブルタップすれば、そのニュースがお使いのブラウザで表示されます。

タップすると設定画面が表示され、表示速度と文字色を変更できます。

ダウンロードはこちらからどうぞ。
Google Play で手に入れよう

 

 

 

広告付きの無料版はこちらから

Windowsアプリ版はこちらから

 

更新履歴(GooglePlayへの反映は数日遅れます)

  • Ver 1.2.1  2021/10/16
    広告付きの無料版公開開始
  • Ver 1.1.0  2021/07/19
    アイコンのデザインを変更しました(英語版のアプリタイトルであるLED NEWSのみに変更)
  • Ver 1.0.8  2021/04/29
    文字色で黄色を選択できるようになりました(緑、オレンジ、黄の3種類)
  • Ver 1.0.7  2021/04/28
    文字サイズの設定追加(大、中、小の3種類)
  • Ver 1.0.6  2021/04/24
    アプリのアイコンデザインを変更しました(電光ニュースのみから、英語版のアプリタイトルであるLED NEWS+電光ニュースの併記に変更)
  • Ver 1.0.5  2021/02/23
    設定画面を追加しました。タップすると速度と文字色を変更できます。
  • Ver 1.0.4  2021/02/05
    タップして変えた色を、次回起動時に復元する機能を追加しました。
  • Ver 1.0.3  2021/01/28
    タップするとオレンジ色、緑色に順番に変わる機能を追加しました。
  • Ver 1.0.2  2021/01/28
    アメリカ対応(The New York TimesのU.S.版を表示)
    イギリス対応(BBCを表示)
    中国(簡体字)対応(人民网を表示)
    ※Androidの地域と言語の設定にて自動で切り換えます。
  • Ver 1.0.1  2021/01/27
    英語対応(英語版のアプリタイトルはLED News)
    英語の場合は、The New York TimesのWorld版を表示します。
  • Ver 1.0.0  2021/01/18
    ダブルタップすると、ニュース内容がブラウザで表示される機能を追加しました。
    普段お使いのブラウザで表示されます。
  • Ver 0.0.1  2021/01/11
    新規公開を開始しました。

 

【Android】開発環境をEclipseからAndroid Studioに移行したときにハマった内容メモ

2011年に作成したアプリを、2020年の今になってバージョンアップすることにしました。以前はEcliseで開発していたので、Android Studioに移行した際にハマった点をメモします(もう皆さんとっくに移行済みだと思うので、自分の備忘として記載)

Android Studio

日本語化しない方がいいです。問題が発生したとき、英語のエラーメッセージでそのまま検索し、翻訳した方がゴールへ近いです。

起動してから2~3分は何もしないで放置しておいた方がよいです。起動してすぐにデバッグしようとしたら謎のエラーが出て困ったのですが、しばらく放置していたら自然と消えました。
ちょっと面倒ですが、Eclipseより断然安定してデバッグできます。

プロジェクトの移行

Android Studioの移行機能は使わない方がよいです。謎のエラーにハマります。新規プロジェクトでActivityなしを選択し、作成されたプロジェクトに既存のJavaソースを入れた方がよいです。
Javaソースはそのまま使えました。
※ソースのフォルダパス中に日本語が含まれるとエラーになります。

ActivityやRなどの仕組みもそのままでした。懐かしい。。。

AndroidManifest.xmlも引き続き存在していますが、ただ、Sdkのバージョン等の指定はこのファイルではなく、build.gradleというファイル内で行うように変わっています。
2020/10/11現在、minSdkVersionは14(Android 4.0)以上しか指定できません。
SDKのバージョンはこちらのWikiを参考にしました。

DatePicker

日付選択に利用していたDatePickerのデザインが大きく変わっていました。年月日をそれぞれ指定するコントロールだったのですが、カレンダー形式になっています。

次の2つのプロパティを指定することで、これまでと同じデザインに戻せました。

android:calendarViewShown="false"
android:datePickerMode="spinner"

Activityの背景色

黒色がデフォルトだったのですが、白色に変わっていました。
元の色に戻れば良いので、「setBackgroundColor(Color.BLACK)」にて色を変更しました。

ネットからデータのダウンロードはメインスレッドでは不可

実行時エラーになってしまうようになりました。
このサイトを参考に非同期に変更しました。

GPSの取得

これは未だに良くわかっていませんが、以下のように指定したところ、以前作成したよりもGPSの受信頻度が格段に上がりました(2種類指定する)。これで様子を見ようかと思います。

mLocationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER, 500, 1, this);
mLocationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 500, 1, this);

パーミッションのリクエスト

以前はAndroidMarketからダウンロードする際に、必要な権限の承諾が求められたはずですが、これがアプリ起動時の承諾に変わっています。

そのため、いきなりActivityを表示するとエラーになってしまいます。
権限を承諾してくれない場合も考慮する必要があります(といっても、承諾してくれなければアプリが使えないので、「許可してください」といったメッセージを表示するくらいしかできないのですが・・・)

こちらのサイトを参考に、承諾画面の表示と、承諾された場合のイベントを実装することで対処できました。

アプリのアイコン

以前はサイズ違いのファイルを用意して、それぞれのフォルダに配置していって面倒だった記憶がありますが、今はとても楽になりました。

こちらのサイトを参照ください。

終わりに

ずっとバージョンアップできずにいたのですが、一度やり始めてしまえば何とかなりました。日本語のサイトが少なくなっている気がしますので、眠っているソースがあれば早めに以降した方がよさそうです。

【LINE】「この写真は破損しているため表示できません」と表示され、投稿できない

現象

LINEグループのアルバムに写真を投稿しようとして、写真を選択すると「この写真は破損しているため表示できません」と表示され、投稿できなかった。 続きを読む 【LINE】「この写真は破損しているため表示できません」と表示され、投稿できない