jamercues
25/09/13, 17:22:05
Hola a todos.
Pues de antemano, hace mucho que no me pasaba por aqui y tal, bueno, he vuelto jeje
Os cuento, en el gs estamos aprendiendo a programar en android ahora, se programar en c++, java, php, pyton...
Ahora toca android y estoy haciendo una app simple, muy simple, de una linterna.
Se trata de 2 botones y un texto.
He estado leyendo y para poder utilizar el hardware del telefono, tengo que comprobar si esta disponible en el telefono.
Pero, donde compruebo si esta disponible?
se que tengo que poner esta linea
context.getPackageManager().hasSystemFeature(Packa geManager.FEATURE_CAMERA_FLASH);
pero donde? donde declaro los botones y tal en el mainactivity? creo un metodo? tengo que utilizar packageManager, como va? estoy echando un vistazo a la api y no veo ningun ejemplo.
El programa en si ya esta, he puesto los permisos en el xml tambien...
<permission
android:name="android.permission.FLASHLIGHT"
android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
android:protectionLevel="normal"
android:label="@string/permlab_flashlight"
android:description="@string/permdesc_flashlight" />
Alguna ayuda? aun estoy algo perdido.
Os pongo el codigo haber si veis algo raro.
package com.example.holausuario;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.os.Bundle;
import android.app.Activity;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText laFrase = (EditText)findViewById(R.id.frase);
final Button elBoton = (Button)findViewById(R.id.el_boton);
final Button elBoton2 = (Button)findViewById(R.id.el_boton2);
final Camera cam = null;
final Parameters param = cam.getParameters();
final PackageInfo context = new PackageInfo;
context.getPackageManager().hasSystemFeature(Packa geManager.FEATURE_CAMERA_FLASH);
elBoton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View e) {
laFrase.setText("Linterna Enchufada");
cam.setParameters(param);
cam.startPreview();
}
});
elBoton2.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View a) {
laFrase.setText("Linterna apagada");
cam.setParameters(param);
cam.stopPreview();
cam.release();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Gracias!
Pues de antemano, hace mucho que no me pasaba por aqui y tal, bueno, he vuelto jeje
Os cuento, en el gs estamos aprendiendo a programar en android ahora, se programar en c++, java, php, pyton...
Ahora toca android y estoy haciendo una app simple, muy simple, de una linterna.
Se trata de 2 botones y un texto.
He estado leyendo y para poder utilizar el hardware del telefono, tengo que comprobar si esta disponible en el telefono.
Pero, donde compruebo si esta disponible?
se que tengo que poner esta linea
context.getPackageManager().hasSystemFeature(Packa geManager.FEATURE_CAMERA_FLASH);
pero donde? donde declaro los botones y tal en el mainactivity? creo un metodo? tengo que utilizar packageManager, como va? estoy echando un vistazo a la api y no veo ningun ejemplo.
El programa en si ya esta, he puesto los permisos en el xml tambien...
<permission
android:name="android.permission.FLASHLIGHT"
android:permissionGroup="android.permission-group.HARDWARE_CONTROLS"
android:protectionLevel="normal"
android:label="@string/permlab_flashlight"
android:description="@string/permdesc_flashlight" />
Alguna ayuda? aun estoy algo perdido.
Os pongo el codigo haber si veis algo raro.
package com.example.holausuario;
import android.hardware.Camera;
import android.hardware.Camera.Parameters;
import android.os.Bundle;
import android.app.Activity;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText laFrase = (EditText)findViewById(R.id.frase);
final Button elBoton = (Button)findViewById(R.id.el_boton);
final Button elBoton2 = (Button)findViewById(R.id.el_boton2);
final Camera cam = null;
final Parameters param = cam.getParameters();
final PackageInfo context = new PackageInfo;
context.getPackageManager().hasSystemFeature(Packa geManager.FEATURE_CAMERA_FLASH);
elBoton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View e) {
laFrase.setText("Linterna Enchufada");
cam.setParameters(param);
cam.startPreview();
}
});
elBoton2.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View a) {
laFrase.setText("Linterna apagada");
cam.setParameters(param);
cam.stopPreview();
cam.release();
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
Gracias!