Androidアプリ開発中につまづいたこと – カーネルバージョンが表示されない

Androidアプリ開発初心者のしゃちょうさん。

Javaでこんなコードを書きました。

String version = null;
 try {
 BufferedReader reader =
 new BufferedReader(
 new FileReader("/proc/version"));
 version = reader.readLine();
 } catch (FileNotFoundException e) {
 Log.e("tag", e.toString());
 } catch (IOException e) {
 Log.e("tag", e.toString());
 }

TextView text = (TextView)findViewById(R.id.textView);
 String str = "カーネルのバージョン:" + version;
 text.setText(str);

AVD(エミュレーター)で実行しても「null」(つまり例外であるcatchに当てはまっている)としか表示されません。
本来「カーネルのバージョン:Linux version 3.10.0+(略」などと表示されなければなりません。なりません!

コードにミスはないのです。

あれれ?
権限が必要なのかな……
Linuxの脆弱性がどうのこうのと最近ありました。

パーミッションを加えなければならないのか……でもその宣言が見当たりません。

簡単に確かめよう!そうしよう!
そんなわけで AVDのAPIレベルを22(Lollipop)に下げてみました。

表示されるではありませんか!

根本的な解決にはなりませんでしたが、Javaのプログラミング自体はうまくいっていることが分かりました。

しゃちょうさんはここで力尽き、解決策(パーミッションの問題なのかどうなのか)を見いだせないまま、次のステップに進むのです。

今日、シャインさんはGW明けで出勤してきました。
隣で連休明けなのに一所懸命作業してくれています。
ヘッドホンで音楽聴きながらも頑張っています。

「シャインさん、おつかれさまです」
「……」シャンシャン
「シャインさん、お疲れなのかな……」
「……」シャンシャン
「じゃましてごめんね、お互いがんばろうね」
「……」シャンシャン

あとできいたら、バンドリというアプリにはまっているそうで、お仕事はしなかったそうです。
バンドリがなにかはわからないけど、きっと役に立つアプリなんですね!
しゃちょうさんもそんなアプリを開発できるようにがんばります。

あっと

あっと

どこかのしゃちょうさん。 いろんなことがすき。 140さいまでいきるのがもくひょう。

「Androidアプリ開発中につまづいたこと – カーネルバージョンが表示されない」への2件のフィードバック

  1. ありがとうございます。おなじげんしょうでした。。。命令がふるいのか、、フォルダが違うのか・・・

    なんにせよ助かりました。。

    1. まさお様
      お役に立てて光栄です!
      結局どういうことだったのか、解決策がわからないままで申し訳ないです。。
      なにより、わざわざコメントを頂けてとっても嬉しかったです!ありがとうございます♪
      まさお様のアプリ開発、応援しています!

あっと へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です