Advertisement
Pavle_nis

Sensors Info Android Java

Nov 5th, 2017
148
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.12 KB | None | 0 0
  1. public class SensorsInfo extends Fragment
  2. {
  3.     private ListView lvSensorsInfo;
  4.     private DeviceListAdapter adapter;
  5.     private List<Device> mSensorsInfoList;
  6.     private TextView sensorsCount;
  7.  
  8.     private SensorManager mSensorManager;
  9.     private SensorEventListener mSensorListener;
  10.     private Sensor mSensor;
  11.  
  12.     public SensorsInfo()
  13.     {
  14.         // Required empty public constructor
  15.     }
  16.  
  17.  
  18.     @Override
  19.     public View onCreateView(LayoutInflater inflater, ViewGroup container,
  20.                              Bundle savedInstanceState)
  21.     {
  22.         // Inflate the layout for this fragment
  23.         return inflater.inflate(R.layout.fragment_sensors_info, null);
  24.     }
  25.  
  26.     @Override
  27.     public void onViewCreated(View view, @Nullable Bundle savedInstanceState)
  28.     {
  29.         super.onViewCreated(view, savedInstanceState);
  30.  
  31.         mSensorManager = (SensorManager) getActivity().getSystemService(Context.SENSOR_SERVICE);
  32.         mSensorListener = new SensorEventListener()
  33.         {
  34.             @Override
  35.             public void onAccuracyChanged(Sensor arg0, int arg1)
  36.             {
  37.             }
  38.  
  39.             @Override
  40.             public void onSensorChanged(SensorEvent event)
  41.             {
  42.                 Sensor sensor = event.sensor;
  43.             }
  44.         };
  45.  
  46.         lvSensorsInfo = (ListView) view.findViewById(R.id.sensorsList);
  47.         sensorsCount = (TextView) view.findViewById(R.id.sensorsCount);
  48.  
  49.         mSensorsInfoList = new ArrayList<>();
  50.         adapter = new DeviceListAdapter(getActivity().getApplicationContext(), mSensorsInfoList);
  51.         lvSensorsInfo.setAdapter(adapter);
  52.  
  53.         sensorsinfo();
  54.  
  55.         sensorsCount.setText(String.valueOf("Sensors count: " + mSensorsInfoList.size()));
  56.     }
  57.  
  58.     private String sensorsinfo()
  59.     {
  60.         int i = 0;
  61.         for (Sensor sensor : listSensors())
  62.         {
  63.             mSensorsInfoList.add(new Device(i, getSensorTitle(sensor), ""));
  64.             i++;
  65.         }
  66.         adapter.notifyDataSetChanged();
  67.  
  68.         return "";
  69.     }
  70.  
  71.     public List<Sensor> listSensors()
  72.     {
  73.         return ((SensorManager) getContext().getSystemService("sensor")).getSensorList(-1);
  74.     }
  75.  
  76.     public String getSensorInfo(Sensor sensor)
  77.     {
  78.         StringBuilder stringBuilder = new StringBuilder();
  79.         stringBuilder.append(sensor.getName()).append("\n");
  80.         stringBuilder.append("Vendor: ").append(sensor.getVendor()).append("\n");
  81.         stringBuilder.append("Version: ").append(sensor.getVersion()).append("\n");
  82.         stringBuilder.append("Power usage: ").append(sensor.getPower()).append(" mA").append("\n");
  83.         stringBuilder.append("Resolution: ").append(sensor.getResolution()).append("\n");
  84.         stringBuilder.append("Range: ").append(sensor.getMaximumRange()).append("\n");
  85.  
  86.         return stringBuilder.toString();
  87.     }
  88.  
  89.     public String getSensorTitle(Sensor sensor)
  90.     {
  91.         StringBuilder stringBuilder = new StringBuilder();
  92.         stringBuilder.append(sensor.getName()).append(" - ");
  93.         stringBuilder.append(sensor.getVendor());
  94.  
  95.         return stringBuilder.toString();
  96.     }
  97. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement