Я немного новичок в Java и Android. Я разрабатываю программу для android, чтобы одна из необходимых функций заключалась в том, чтобы иметь возможность сделать снимок с правильным именем.
мой основной класс - AmplaCoordenadasActivity
поэтому я сделал внутри него следующий код:
public void tirarFoto(String arquivo)
{
Intent camera = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
Uri uriSavedImage=Uri.fromFile(new File(arquivo));
camera.putExtra("output", uriSavedImage);
startActivityForResult(camera, 1);
}
и он отлично работает.
Но когда я пытаюсь поместить его в другой класс и назову его, он бросает множество исключений. Класс:
package ampla.giesta.coordenadas;
import java.io.File;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
public class Photo extends Activity{
public void tirarFoto(String arquivo){
Intent camera = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
Uri uriSavedImage=Uri.fromFile(new File(arquivo));
camera.putExtra("output", uriSavedImage);
startActivityForResult(camera, 1);
}
}
И я пишу в основном классе
public void Camera(){
Photo camera = new Photo();
camera.tirarFoto("/sdcard/x.jpg");
}
Может ли кто-нибудь помочь?
Вам нужно включить новую активность в манифест андроида.
Прочитайте это здесь http://developer.android.com/guide/topics/manifest/manifest-intro.html
Это хорошее введение в разрешения, которые необходимо установить в манифесте android. Этот манифест контролирует, какие другие функции приложения могут вызывать и реагировать на них, вы должны объявлять службы и получатели в своем манифесте, любые специальные разрешения, которые необходимо использовать вашему приложению, должны быть объявлены в вашем манифесте и, наконец, любые дополнительные действия, помимо основного приложения активность также должна быть заявлена здесь.
Вы также управляете фильтрами намерений для своей деятельности в манифесте.
попробуйте добавить
<activity android:name=".Photo" android:label="@string/app_name" />
в файл manifest.xml
extends Activity
классextends Activity
Photo
. А как вы вызываете методCamera()
?