我正在编写一个应用程序,当按下按钮时会打开闪光灯。问题是该应用程序无法检测到我的手机上的闪光灯。我在互联网上搜索了很多资料,确实有其他人遇到了这个问题,我也尝试了那些解决方案,但它们似乎都不起作用。我不知道是什么原因导致了这个问题。以下是代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_starting_point);
if(! getApplicationContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH)) // checking if flash light is available inn android phone
{
Toast.makeText(StartingPoint.this, "Sorry this app can't work without flash light", Toast.LENGTH_LONG).show();
finish();
}
cam = Camera.open();
param = cam.getParameters();
}
@Override
public void onClick (View v)
{
if(!flashOn)
{
i=0;
flashOn=true;
param.setFlashMode(Parameters.FLASH_MODE_TORCH);
cam.setParameters(param);
cam.startPreview();
}
else{
i=0;
flashOn=false;
param.setFlashMode(Parameters.FLASH_MODE_OFF);
cam.setParameters(param);
cam.stopPreview();
}
我已经在 Android Manifest 中添加了这些权限。
<uses-permission android:name="android.permission.FLASHLIGHT"/>
<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
敬礼