기기의 카메라 플래시를 켤 수있는 앱을 만들려고합니다. 코드에서 오류를 표시하지 않지만 내 기기에서 앱을 실행하는 중에 충돌이 발생합니다. 보고 버그는 Unable to start activity
이고 어떤 것은 Fail to connect Camera Services
입니다. 나는 안드로이드 개발에 새로운 경험이 있기 때문에 충분한 지식이 없습니다. 나는 이것에 관한 몇 가지 질문을 이미 보았지만 유용한 정보를 찾을 수 없었다. 모든 대답은 대략 내가 이미 한 매니 페스트 파일에 사용 권한을 추가하는 것을 제안했습니다. 매니페스트 파일의Android : 활동을 시작할 수 없거나 카메라 서비스에 연결하지 못했습니다.
내용 : 주 활동 자바의
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.joshiyogesh.flashlight">
<uses-permission android:name="android.permission.CAMERA"/>
<uses-feature android:name="android.hardware.camera"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
내용 :
package com.example.joshiyogesh.flashlight;
import android.content.pm.PackageManager;
import android.graphics.Color;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.RelativeLayout;
import android.widget.Toast;
public class MainActivity extends AppCompatActivity {
Button btn;
android.hardware.Camera camera;
Camera.Parameters parameters;
boolean isFlash = false;
boolean isOn = false;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn = (Button)findViewById(R.id.button2);
if(getApplicationContext().getPackageManager().hasSystemFeature(PackageManager.FEATURE_CAMERA_FLASH))
{
camera = Camera.open();
parameters = camera.getParameters();
isFlash = true;
}
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(isFlash){
if(!isOn){
btn.setText("Off");
btn.setBackgroundColor(Color.GREEN);
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_TORCH);
camera.setParameters(parameters);
camera.startPreview();
isOn = true;
}
else{
btn.setText("ON");
btn.setBackgroundColor(Color.RED);
parameters.setFlashMode(Camera.Parameters.FLASH_MODE_OFF);
camera.setParameters(parameters);
camera.stopPreview();
isOn = false;
}
}
else{
Toast.makeText(MainActivity.this,"Camera Not detecting",Toast.LENGTH_LONG).show();
}
}
});
}
@Override
protected void onStop() {
super.onStop();
if(camera!=null){
camera.release();
camera = null;
}
}
}
I have uploaded image of report bug of my mobile device
답변을 이미지로 게시해야합니까? –
메인 페스트 파일 게시 –
올바르게 작성했는지 확인하십시오. http://stackoverflow.com/a/26842715/5156075 –