Java приложения для фонарика

Содержание
  1. Как програмно включить фонарик?
  2. Java приложения для фонарика
  3. Приложения Java
  4. ПРИЛОЖЕНИЯ JAVA ЖАНР ОБРАЗОВАНИЕ
  5. Фонарик 6280
  6. Описание
  7. Фонарик 6280 Java-приложение
  8. Рейтинги и Отзывы (0)
  9. Итоги обзора
  10. В настоящее время нет отзывов для этого приложения.
  11. Также в приложениях Java
  12. Он-лайн регистрация
  13. TorchFlashLight 240×320
  14. Он-лайн регистрация
  15. Оператор Opera Mini 4.4 Multi
  16. mksofts.wordpress.com
  17. Английский для Урдуский словарь
  18. Теги:
  19. доля:
  20. Вам также может понравиться:
  21. Банглайский календарь
  22. Flashlight Extreme
  23. Torch Flashlight
  24. Фонарик J2ME
  25. Flashlight
  26. J2ME Flashlight
  27. Блок SMS
  28. Color Flashlight
  29. Java Metronome
  30. iQ Quiz Game
  31. MegaMobi 240×320
  32. PhysicsDictionary
  33. Свободный полет
  34. Холли Коран
  35. MeraMobi 176×220 Nokia и LG
  36. Улучшите свои навыки убеждения
  37. Гитарные мобильные инструменты 2
  38. IQ Flashlight Java
  39. Mobile Malay Tajweed Quran
  40. Daily Scriptures
  41. Color Flashlight
  42. Карманная лампа 2.8
  43. Torch Flashlight LED HD Review
  44. Мой календарь
  45. Colored Flashlight
  46. IQ Flashlight Java German
  47. IQ Flashlight Java French
  48. ПРИЛОЖЕНИЯ JAVA JAVA ИГРЫ Приложения SYMBIAN ANDROID ПРИЛОЖЕНИЯ
  49. PHONEKY: РИНГТОНЫ И ОБОИ
  50. Загрузите свои любимые приложения Java бесплатно на PHONEKY!

Как програмно включить фонарик?

Добрый день. Мне надо добавить «фонарик» в своё приложение, пробовал добавить его, он не хочет работать. Как ни крути показывает мне мой же алерт «У вашего телефона отсутствует фонарик» хотя и камера и фонарик присутствуют. Никакой толковой информации в интернете по нему не нашел. Как же всё-таки включить и выключить фонарик? Код:

import java.util.List; import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.DialogInterface; import android.content.DialogInterface.OnClickListener; import android.content.pm.PackageManager; import android.hardware.Camera; import android.hardware.Camera.Parameters; import android.os.Bundle; import android.widget.CompoundButton; import android.widget.CompoundButton.OnCheckedChangeListener; import android.widget.ToggleButton; public class MainActivity extens Activity < Camera camera = null; ToggleButton toggleTorch; Parameters parameters; AlertDialog.Builder builder; AlertDialog alertDialog; private final int FLASH_NOT_SUPPORTED = 0; private final int FLASH_TORCH_NOT_SUPPORTED = 1; @Override protected void onCreate(Bundle savedInstanceState) < super.onCreate(savedInstanceState); setContentView(R.layout.main); toggleTorch = (ToggleButton) findViewById(R.id.toggleButton1); // если камера имеет вспышку if (getPackageManager().hasSystemFeature( PackageManager.FEATURE_CAMERA_FLASH)) < toggleTorch .setOnCheckedChangeListener(new OnCheckedChangeListener() < @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) < // включаем фонарик if (isChecked) < if (camera == null) < camera = Camera.open(); parameters = camera.getParameters(); List flashModes = parameters .getSupportedFlashModes(); if (flashModes .contains(Parameters.FLASH_MODE_TORCH)) < parameters .setFlashMode(Parameters.FLASH_MODE_TORCH); camera.setParameters(parameters); camera.startPreview(); >else < showDialog(MainActivity.this, FLASH_TORCH_NOT_SUPPORTED); >> > else < // выключаем фонарик parameters .setFlashMode(Parameters.FLASH_MODE_OFF); camera.setParameters(parameters); camera.stopPreview(); camera.release(); camera = null; >> >); > else < showDialog(MainActivity.this, FLASH_NOT_SUPPORTED); >> @Override protected void onStop() < super.onStop(); if (camera != null) < camera.release(); >> @Override protected void onPause() < super.onPause(); if (camera != null) < camera.release(); >> public void showDialog(Context context, int dialogId) < switch (dialogId) < case FLASH_NOT_SUPPORTED: builder = new AlertDialog.Builder(context); builder.setMessage("Ваше устройство не поддерживает вспышку") .setCancelable(false) .setNeutralButton("Close", new OnClickListener() < @Override public void onClick(DialogInterface dialog, int which) < finish(); >>); alertDialog = builder.create(); alertDialog.show(); break; case FLASH_TORCH_NOT_SUPPORTED: builder = new AlertDialog.Builder(context); builder.setMessage("Ваше устройство не поддерживает вспышку") .setCancelable(false) .setNeutralButton("Close", new OnClickListener() < @Override public void onClick(DialogInterface dialog, int which) < finish(); >>); alertDialog = builder.create(); alertDialog.show(); > > > 

Источник

Читайте также:  Set hours in calendar java

Java приложения для фонарика

Сегодня мы возьмемся за интересный и полезный урок, а именно — научимся создавать приложение «Фонарик» для Android устройств. Приложение будет предельно простым: главное окно программы с кнопкой включить/выключить фонарик.

По поводу внешнего вида приложения, то используемая графика будет не запредельно сложной, а всего лишь фоновое изображение и пару изображений для кнопки во включенном и выключенном состоянии. Можете подготовить эти изображения сами по собственному желанию, если хотите внести в приложение свою собственную лепту, так сказать. Но если вам не хочется этого делать (мне тоже), то воспользуемся уже готовыми красивыми изображениями. Я их сам резал, поэтому возможно (так и будет) картинка включенной и выключенной кнопки немного не совпадут по своему местоположению из за неодинаковых границ границ изображений. Если вы хотите попытаться сделать лучше, вот вам оригинальное изображение для вырезания:

Изображения для фонарика

В архиве с изображениями, те что помечены цифрой 1 — это hdpi, 2- mdpi, 3 — ldpi.

Теперь можно переходить к созданию нового проекта, выберем Blank Activity. Для того, чтоб наш фонарик заработал, нужно в файле манифеста получить разрешения на использование вспышки камеры. Там нет такого разрешения непосредственно, так как вспышка входит в функционал камеры, поэтому нужно получить разрешение на работу с камерой и ее возможностями. Открываем файл AndroidManifest.xml и добавляем туда парочку разрешений на камеру:

uses-permission android:name="android.permission.CAMERA" /> uses-feature android:name="android.hardware.camera"/> 

Теперь нужно добавить изображения кнопок в папку res/drawable, а точнее изображения hdpi, mdpi и ldpi в соответствующие папки drawable-hdpi, drawable-mdpi, drawable-ldpi. Только уберите те циферки в именах изображений (1,2,3) и проследите, чтобы в разных папках изображения включенной и выключенной кнопки имели одинаковые названия. Фон нашего приложения будет белого цвета и, будем надеяться, красиво сольется с изображениями кнопок.

Открываем файл activity_main.xml и добавим туда кнопочку ImageView, которая и будет в итоге включать и выключать фонарик:

RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity" android:background="#FFFFFF"> ImageButton android:id="@+id/btnSwitch" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_centerHorizontal="true" android:layout_marginTop="100dip" android:src="@drawable/turn_on" android:background="@null" android:contentDescription="@null"/> /RelativeLayout> 

Теперь откроем MainActivity.java и объявим необходимые переменные:

import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.pm.PackageManager; import android.hardware.Camera; import android.hardware.Camera.Parameters; import android.media.MediaPlayer; import android.media.MediaPlayer.OnCompletionListener; import android.os.Bundle; import android.util.Log; import android.view.View; import android.widget.ImageButton; public class MainActivity extends Activity < ImageButton btnSwitch; private Camera camera; private boolean isFlashOn; private boolean hasFlash; Parameters params; MediaPlayer mp; @Override protected void onCreate(Bundle savedInstanceState) < super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Кнопка включения фонарика btnSwitch = (ImageButton) findViewById(R.id.btnSwitch); > > 

Программу нужно оборудовать возможностью проверять, поддерживается ли работа фонарика на данном устройстве, присутствует ли там вспышка вообще. Если ее нету, то будет показываться соответствующее сообщение и приложение будет закрываться. Для того, чтобы реализовать это, тут же в MainActivity.java добавим следующий код, который в случае отсутствия на устройстве вспышки будет показывать сообщение в виде Alert Dialog и закрывать приложение:

 /* * Проверяем, поддерживает ли устройство вспышку или нет */ hasFlash = getApplicationContext().getPackageManager() .hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH); if (!hasFlash) < //Устройство не поддерживает функцию вспышки //Показываем печальное сообщение и закрываем приложение: AlertDialog alert = new AlertDialog.Builder(MainActivity.this) .create(); alert.setTitle("Ошибка"); alert.setMessage("Ваше устройство не поддерживает работу с вспышкой!"); alert.setButton("OK", new DialogInterface.OnClickListener() < public void onClick(DialogInterface dialog, int which) < //Закрываем приложение: finish(); > >); alert.show(); return; > 

Если сейчас запустить приложение на устройстве без вспышки, то вы увидите Alert Dialog с ошибкой.

Включение фонарика происходит с помощью установки режима работы камеры FLASH_MODE_TORCH. Настройка процесса включения будет происходить с помощью 2-х функций getCamera и turnOnFlash. Добавим их к коду в MainActivity.java:

//Получаем параметры камеры: private void getCamera() < if (camera == null) < try < camera = Camera.open(); params = camera.getParameters(); > catch (RuntimeException e) < Log.e("Ошибка, невозможно запустить: ", e.getMessage()); > > > /* * Включаем вспышку */ private void turnOnFlash() < if (!isFlashOn) < if (camera == null || params == null) < return; > //Проигрываем звук playSound(); params = camera.getParameters(); params.setFlashMode(Parameters.FLASH_MODE_TORCH); camera.setParameters(params); camera.startPreview(); isFlashOn = true; //Меняем изображение кнопки при переключении: toggleButtonImage(); > > 

Для выключения фонарика будет использоваться настройка на режим FLASH_MODE_OFF:

 /* * Выключаем фонарик */ private void turnOffFlash() < if (isFlashOn) < if (camera == null || params == null) < return; > //Проигрываем звук: playSound(); params = camera.getParameters(); params.setFlashMode(Parameters.FLASH_MODE_OFF); camera.setParameters(params); camera.stopPreview(); isFlashOn = false; //Меняем картинку кнопки: toggleButtonImage(); > > 

Теперь осталось только добавить обработчик нажатий по кнопке ImageView:

 /* * Обработчик события нажатий по кнопке */ btnSwitch.setOnClickListener(new View.OnClickListener() < @Override public void onClick(View v) < if (isFlashOn) < //Выключаем фонарик: turnOffFlash(); > else < //Включаем фонарик: turnOnFlash(); > > >); 

Когда пользователь будет включать и выключать фонарик, изображение кнопки должно меняться. Для этого добавим метод переключения изображений при нажатии на кнопку:

/* * Переключатель смены изображения */ private void toggleButtonImage()< if(isFlashOn)< btnSwitch.setImageResource(R.drawable.turn_on); >else< btnSwitch.setImageResource(R.drawable.turn_off); > > 

В принципе, уже сейчас приложение готово к работе, но нам хочется еще сделать так, чтобы при переключении кнопки проигрывался звук включения/выключения фонарика. Для этого звук сначала нужно скачать. Можете взять это, можете найти что то получше и покороче, я не нашел. Для работы со звуком, создайте в проекте новую папке res/raw и закиньте туда звуковой файл. В код файла MainActivity.java добавляем следующий код:

 /* * Проигрывание звука */ private void playSound()< if(isFlashOn)< mp = MediaPlayer.create(MainActivity.this, R.raw.sound); >else< mp = MediaPlayer.create(MainActivity.this, R.raw.sound); > mp.setOnCompletionListener(new OnCompletionListener() < @Override public void onCompletion(MediaPlayer mp) < mp.release(); > >); mp.start(); > 

Остается только добавить несколько важных методов, которые будут способствовать корректной работе приложения:

onPause() — метод выключает фонарик и вводит приложение в фоновый режим работы;

onResume() — метод включает фонарик обратно;

onStop() — закрываем камеру.

@Override protected void onDestroy() < super.onDestroy(); > @Override protected void onPause() < super.onPause(); //Временно выключаем фонарик: turnOffFlash(); > @Override protected void onRestart() < super.onRestart(); > @Override protected void onResume() < super.onResume(); //Продолжаем работу фонарика: if(hasFlash) turnOnFlash(); > @Override protected void onStart() < super.onStart(); //Получаем для приложения параметры камеры: getCamera(); > @Override protected void onStop() < super.onStop(); //Закрываем работу камеры: if (camera != null) < camera.release(); camera = null; > > 

Все! Теперь остается только протестировать приложение:

Фонарик включенФонарик выключен

Очень неплохо, оказалось, что смещение изображений вкл/выкл оказалось еле заметным, но это на дисплее 4,5 дюйма.

Ну и перед тестированием не забудьте, что тестировать приложение работы фонарика есть смысл на устройстве, в котором есть фонарик :). Удачи!

Источник

Приложения Java

ПРИЛОЖЕНИЯ JAVA ЖАНР ОБРАЗОВАНИЕ

Фонарик 6280

Описание

Фонарик 6280 Java-приложение

Рейтинги и Отзывы (0)

Итоги обзора

В настоящее время нет отзывов для этого приложения

регистр Зарегистрируйте учетную запись PHONEKY, чтобы отправлять отзывы с вашим именем, загружать и хранить ваши любимые мобильные приложения, игры, рингтоны и обои.

Зарегистрируйтесь или Подпишите в в PHONEKY

В настоящее время нет отзывов для этого приложения.

Также в приложениях Java

Он-лайн регистрация

TorchFlashLight 240×320

Он-лайн регистрация

Оператор Opera Mini 4.4 Multi

mksofts.wordpress.com

Английский для Урдуский словарь

Теги:

доля:

Вам также может понравиться:

Банглайский календарь

Flashlight Extreme

Torch Flashlight

Фонарик J2ME

Flashlight

J2ME Flashlight

Блок SMS

Color Flashlight

Java Metronome

iQ Quiz Game

MegaMobi 240×320

PhysicsDictionary

Свободный полет

Холли Коран

MeraMobi 176×220 Nokia и LG

Улучшите свои навыки убеждения

Гитарные мобильные инструменты 2

IQ Flashlight Java

Mobile Malay Tajweed Quran

Daily Scriptures

Color Flashlight

Карманная лампа 2.8

Torch Flashlight LED HD Review

Мой календарь

Colored Flashlight

IQ Flashlight Java German

IQ Flashlight Java French

ПРИЛОЖЕНИЯ JAVA JAVA ИГРЫ Приложения SYMBIAN ANDROID ПРИЛОЖЕНИЯ

PHONEKY: РИНГТОНЫ И ОБОИ

Получите его на GOOGLE PLAY!

Загрузите свои любимые приложения Java бесплатно на PHONEKY!

Download app for mobiles Фонарик 6280Download app for mobiles — одно из лучших приложений Java бесплатно! Вам непременно понравятся его увлекательные черты. В бесплатном Java App Store от PHONEKY вы можете бесплатно скачать мобильные приложения для любого мобильного телефона, поддерживаемого Java. хороший и полезные функции этого приложения привлекут вас в течение очень долгого времени. В PHONEKY вы найдете множество других приложений и игр разных жанров: от образования и развлечений до приложений для обеспечения безопасности и навигации Java. Чтобы увидеть Топ-10 лучших программ Java для мобильных телефонов, просто сортируйте приложения по популярности.

Источник

Оцените статью