質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Wear

Android Wearとは、Googleが発表した腕時計型ウェアラブルデバイス(スマートウォッチ)向けのプラットフォームです。GoogleのAndroid OSをベースにしており、情報の入手・管理などを行うことができます。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

485閲覧

Androidのセンサーリストの取得について

TokujiMine

総合スコア7

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Wear

Android Wearとは、Googleが発表した腕時計型ウェアラブルデバイス(スマートウォッチ)向けのプラットフォームです。GoogleのAndroid OSをベースにしており、情報の入手・管理などを行うことができます。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2018/03/26 00:43

前提・実現したいこと

Android Studio3.0.1用してセンサーリストの取得を勉強しています。
参考にしたテキストは「NIKKEI SOFTWARE 2015.12 Android アプリを5日で作れる本」になります。
テキストの通りに沿ってJAVAコードとレイアウトXMLと記載して実行したところ
以下のエラーが発生しました。
※こちらのエラーを解決したいです。

発生している問題・エラーメッセージ

エラーメッセージ
Error:(29, 5) エラー: 型の開始が不正です
Error:(29, 23) エラー: ')'がありません
Error:(29, 30) エラー: <identifier>がありません
Error:(38, 18) エラー: <identifier>がありません
Error:(38, 24) エラー: <identifier>がありません

該当のソースコード

MainActivity.java

package com.example.sample04app;

import android.content.Context;
import android.hardware.Sensor;
import android.hardware.SensorManager;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;
import android.widget.Toast;

import java.util.List;

public class MainActivity extends AppCompatActivity {

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } // センサーマネージャーの取得 SensorManager sm = (SensorManager)getSystemService(Context.SENSOR_SERVICE); // センサーリストの取得 List<Sensor> list = sm.getSensorList(Sensor.TYPE_ALL); StringBuilder slStr = new StringBuilder(); for (Sensor sensor : list) { slStr.append(sensor.getType()) ; // センサータイプの取得 slStr.append(", "); slStr.append(sensor.getName()) ; // センサー名の取得 slStr.append("\n"); } //  センサーリストの表示 TextView slTxt = (TextView)findViewById(R.id.text01); slTxt.setText(slStr);

}

activity_main.xml

<?xml version="1.0" encoding="utf-8"?>

<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.sample04app.MainActivity">

<TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Hello World!" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent" app:layout_constraintTop_toTopOf="parent" /> <TextView android:id="@+id/text01" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="TextView" tools:layout_editor_absoluteX="114dp" tools:layout_editor_absoluteY="131dp" />

</android.support.constraint.ConstraintLayout>

イメージ説明

試したこと

1.テキストのに見直しを行い、半角、全角の見直しを実施しまいた。
2.Virtual DevicesをAPI19、API26で試してみましたが状況は変わりません。

補足情報(FW/ツールのバージョンなど)

OSはWin10
Android Studioは3.0.1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

keicha_hrs

2018/03/26 07:37

中身検索できないかと思ったら付録かあ。本当に間違いなくこのコードが記述されていたのだとしたら、とんでもない本ですな。
keicha_hrs

2018/03/26 07:42

・・・とまで書いて思ったけど、書籍に記されていたのは「センサーマネージャーの取得」から「センサーリストの表示」までの部分コードで、それを自分の考えでどこに挿入すべきかを誤ったって話でしょうかね?
guest

回答1

0

ベストアンサー

Error:(29, 23) エラー: ')'がありません

テキストの通りにやっているのであれば
}の入れ方が間違っているようです
onCreateの中にいれましょう

ちなみに、意味を理解していないのでこのようなミスになったということでしょう

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } // ここで区切られて後のコードが不正になっている

投稿2018/03/26 06:32

aja

総合スコア3733

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問