我对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");
}
有人可以帮忙吗?
答案 0 :(得分:0)
您需要在Android清单中包含新活动。
在这里阅读 http://developer.android.com/guide/topics/manifest/manifest-intro.html
这是您需要在Android清单中设置的权限的简介。清单控制您的应用程序可以调用和响应的其他应用程序的功能,您必须在清单中声明服务和接收者,您的应用程序需要在清单中声明的任何特殊权限,最后,除主应用程序之外的任何其他活动活动也需要在这里宣布。
您还可以在清单中管理活动的意图过滤器。
尝试添加
<activity android:name=".Photo" android:label="@string/app_name" />
到您的manifest.xml文件