Я работаю над приложением, в котором мне нужно быть в состоянии включить фонарный свет телефона Android нажатием кнопки. Я написал какой -то код. Однако на кнопке нажмите свет, не включается. Ниже приведен соответствующий код. Обратите внимание, что это делается в рамках фрагмента. Я попробовал автономное приложение с теми же проблемами. < /p>
public class Flashlight extends Fragment implements View.OnClickListener {
// in global
private Camera camera;
private Button button;
Button FlashLightBTN
// end global
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.udp_commands, container, false);
FlashLightBTN = (Button) rootView.findViewById(R.id.flashlightBTN);
Context context = getActivity().getApplicationContext();
PackageManager pm = context.getPackageManager();
if (!pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) {
// Log.e("err", "Device has no camera!");
Toast.makeText(getActivity().getApplicationContext(), "Your device doesn't have camera!", Toast.LENGTH_SHORT).show();
return;
}
camera = Camera.open();
final Parameters p = camera.getParameters();
FlashLightBTN.setTag(1);
FlashLightBTN.setText("Turn Flashlight On");
FlashLightBTN.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button b = (Button) v;
String buttonText = b.getText().toString();
final int status = (Integer) v.getTag();
if (status == 1) {
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
camera.startPreview();
FlashLightBTN.setText("Turn Flashlight Off");
v.setTag(0);
}
if (status == 0) {
p.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(p);
camera.stopPreview();
camera.release(); FlashLightBTN.setText("Turn Flashlight On");
v.setTag(1);
}
}
});
// other code
return rootView;
}
}
< /code>
ниже мой файл манифеста: < /p>
< /code>
logcat: < /p>
09-04 00:50:25.279: I/Adreno-EGL(11871): : EGL 1.4 QUALCOMM Build: I0404c4692afb8623f95c43aeb6d5e13ed4b30ddbDate: 11/06/13
09-04 00:50:25.299: D/OpenGLRenderer(11871): Enabling debug mode 0
09-04 00:50:25.329: D/dalvikvm(11871): GC_FOR_ALLOC freed 218K, 2% free 16986K/17236K, paused 11ms, total 11ms
09-04 00:50:28.909: D/dalvikvm(11871): GC_FOR_ALLOC freed 387K, 3% free 17113K/17532K, paused 14ms, total 14ms
09-04 00:50:33.659: D/dalvikvm(11871): GC_FOR_ALLOC freed 510K, 4% free 17117K/17660K, paused 15ms, total 15ms
09-04 00:50:35.999: D/AndroidRuntime(11871): Shutting down VM
09-04 00:50:35.999: W/dalvikvm(11871): threadid=1: thread exiting with uncaught exception (group=0x41cf2ba8)
09-04 00:50:36.009: E/AndroidRuntime(11871): FATAL EXCEPTION: main
09-04 00:50:36.009: E/AndroidRuntime(11871): Process: com.example.flashlight, PID: 11871
09-04 00:50:36.009: E/AndroidRuntime(11871): java.lang.RuntimeException: Method called after release()
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.hardware.Camera.native_setParameters(Native Method)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.hardware.Camera.setParameters(Camera.java:1650)
09-04 00:50:36.009: E/AndroidRuntime(11871): at com.example.flashlight.flash$11.onClick(UDP_Commands.java:225)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.view.View.performClick(View.java:4438)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.view.View$PerformClick.run(View.java:18422)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.os.Handler.handleCallback(Handler.java:733)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.os.Handler.dispatchMessage(Handler.java:95)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.os.Looper.loop(Looper.java:136)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.app.ActivityThread.main(ActivityThread.java:5017)
09-04 00:50:36.009: E/AndroidRuntime(11871): at java.lang.reflect.Method.invokeNative(Native Method)
09-04 00:50:36.009: E/AndroidRuntime(11871): at java.lang.reflect.Method.invoke(Method.java:515)
09-04 00:50:36.009: E/AndroidRuntime(11871): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
09-04 00:50:36.009: E/AndroidRuntime(11871): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
09-04 00:50:36.009: E/AndroidRuntime(11871): at dalvik.system.NativeStart.main(Native Method)
09-04 00:50:37.869: I/Process(11871): Sending signal. PID: 11871 SIG: 9
< /code>
Любая помощь или руководство о том, где я ошибаюсь, была бы очень благодарна. Кроме того, если это имеет значение, я тестирую это с помощью Nexus 5. Я также загрузил образец приложения фонарика из игрового магазина, и это работает нормально, так что аппаратное обеспечение хорошо. < /p>
Заранее спасибо за < /p>
Подробнее здесь: https://stackoverflow.com/questions/256 ... lly-button
Android включите программную кнопку фонарика ⇐ Android
Форум для тех, кто программирует под Android
-
Anonymous
1750597555
Anonymous
Я работаю над приложением, в котором мне нужно быть в состоянии включить фонарный свет телефона Android нажатием кнопки. Я написал какой -то код. Однако на кнопке нажмите свет, не включается. Ниже приведен соответствующий код. Обратите внимание, что это делается в рамках фрагмента. Я попробовал автономное приложение с теми же проблемами. < /p>
public class Flashlight extends Fragment implements View.OnClickListener {
// in global
private Camera camera;
private Button button;
Button FlashLightBTN
// end global
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(R.layout.udp_commands, container, false);
FlashLightBTN = (Button) rootView.findViewById(R.id.flashlightBTN);
Context context = getActivity().getApplicationContext();
PackageManager pm = context.getPackageManager();
if (!pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) {
// Log.e("err", "Device has no camera!");
Toast.makeText(getActivity().getApplicationContext(), "Your device doesn't have camera!", Toast.LENGTH_SHORT).show();
return;
}
camera = Camera.open();
final Parameters p = camera.getParameters();
FlashLightBTN.setTag(1);
FlashLightBTN.setText("Turn Flashlight On");
FlashLightBTN.setOnClickListener(new Button.OnClickListener() {
public void onClick(View v) {
Button b = (Button) v;
String buttonText = b.getText().toString();
final int status = (Integer) v.getTag();
if (status == 1) {
p.setFlashMode(Parameters.FLASH_MODE_TORCH);
camera.setParameters(p);
camera.startPreview();
FlashLightBTN.setText("Turn Flashlight Off");
v.setTag(0);
}
if (status == 0) {
p.setFlashMode(Parameters.FLASH_MODE_OFF);
camera.setParameters(p);
camera.stopPreview();
camera.release(); FlashLightBTN.setText("Turn Flashlight On");
v.setTag(1);
}
}
});
// other code
return rootView;
}
}
< /code>
ниже мой файл манифеста: < /p>
< /code>
logcat: < /p>
09-04 00:50:25.279: I/Adreno-EGL(11871): : EGL 1.4 QUALCOMM Build: I0404c4692afb8623f95c43aeb6d5e13ed4b30ddbDate: 11/06/13
09-04 00:50:25.299: D/OpenGLRenderer(11871): Enabling debug mode 0
09-04 00:50:25.329: D/dalvikvm(11871): GC_FOR_ALLOC freed 218K, 2% free 16986K/17236K, paused 11ms, total 11ms
09-04 00:50:28.909: D/dalvikvm(11871): GC_FOR_ALLOC freed 387K, 3% free 17113K/17532K, paused 14ms, total 14ms
09-04 00:50:33.659: D/dalvikvm(11871): GC_FOR_ALLOC freed 510K, 4% free 17117K/17660K, paused 15ms, total 15ms
09-04 00:50:35.999: D/AndroidRuntime(11871): Shutting down VM
09-04 00:50:35.999: W/dalvikvm(11871): threadid=1: thread exiting with uncaught exception (group=0x41cf2ba8)
09-04 00:50:36.009: E/AndroidRuntime(11871): FATAL EXCEPTION: main
09-04 00:50:36.009: E/AndroidRuntime(11871): Process: com.example.flashlight, PID: 11871
09-04 00:50:36.009: E/AndroidRuntime(11871): java.lang.RuntimeException: Method called after release()
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.hardware.Camera.native_setParameters(Native Method)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.hardware.Camera.setParameters(Camera.java:1650)
09-04 00:50:36.009: E/AndroidRuntime(11871): at com.example.flashlight.flash$11.onClick(UDP_Commands.java:225)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.view.View.performClick(View.java:4438)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.view.View$PerformClick.run(View.java:18422)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.os.Handler.handleCallback(Handler.java:733)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.os.Handler.dispatchMessage(Handler.java:95)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.os.Looper.loop(Looper.java:136)
09-04 00:50:36.009: E/AndroidRuntime(11871): at android.app.ActivityThread.main(ActivityThread.java:5017)
09-04 00:50:36.009: E/AndroidRuntime(11871): at java.lang.reflect.Method.invokeNative(Native Method)
09-04 00:50:36.009: E/AndroidRuntime(11871): at java.lang.reflect.Method.invoke(Method.java:515)
09-04 00:50:36.009: E/AndroidRuntime(11871): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
09-04 00:50:36.009: E/AndroidRuntime(11871): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
09-04 00:50:36.009: E/AndroidRuntime(11871): at dalvik.system.NativeStart.main(Native Method)
09-04 00:50:37.869: I/Process(11871): Sending signal. PID: 11871 SIG: 9
< /code>
Любая помощь или руководство о том, где я ошибаюсь, была бы очень благодарна. Кроме того, если это имеет значение, я тестирую это с помощью Nexus 5. Я также загрузил образец приложения фонарика из игрового магазина, и это работает нормально, так что аппаратное обеспечение хорошо. < /p>
Заранее спасибо за < /p>
Подробнее здесь: [url]https://stackoverflow.com/questions/25657815/android-turn-on-flashlight-programmatically-button[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия