質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

Q&A

解決済

1回答

661閲覧

らくらくスマートフォンF-06Fでの開発について

ths

総合スコア21

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Android Studio

Android Studioは、 Google社によって開発された、 Androidのネイティブアプリケーション開発に特化した統合開発ツールです。

0グッド

0クリップ

投稿2017/12/02 07:19

編集2017/12/02 07:39

Android開発で実機を持っていなかったので、中古で安かったF-06Fを購入しました。
開発するアプリはカメラアプリです。
友達の端末では実行できたのですが、F-06Fだとエラーが出てクラッシュしました。
OSは両方同じAndroid4.4です。
やはりらくらくスマートフォンとあって、カメラなどを使用することはできないのでしょうか?
ちゃんとカメラのパーミッションを許可してます。
どなたか原因分かる方いらっしゃいましたらご教授お願い致します。。

補足
ソースコードです
AutoCamera.java

package a.camera; import android.app.Activity; import android.bluetooth.BluetoothAdapter; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.hardware.Camera; import android.os.Bundle; import android.os.Environment; import android.os.Handler; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.view.View; import android.view.Window; import android.view.WindowManager; import android.widget.Toast; import java.io.FileOutputStream; public class AutoCamera extends Activity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(new CameraView(this)); getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); } }

CameraPreview.java

package a.camera; import android.annotation.TargetApi; import android.content.Context; import android.graphics.PixelFormat; import android.hardware.Camera; import android.os.Build; import android.os.Handler; import android.util.Log; import android.view.SurfaceHolder; import android.view.SurfaceView; import android.widget.Toast; import java.io.BufferedOutputStream; import java.net.Socket; import static android.content.ContentValues.TAG; public class CameraView extends SurfaceView implements SurfaceHolder.Callback{ private SurfaceHolder holder; private Camera camera; private static final int WIDTH = 480; private static final int HEIGHT = 320; private static final int PORT = 49152; private static final String IP_ADDR = "192.168.11.2"; private static boolean is_save; public CameraView(Context context) { super(context); holder=getHolder(); holder.addCallback(this); holder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); } @Override public void surfaceCreated(SurfaceHolder holder) { try { camera = Camera.open(0); camera.setPreviewDisplay(holder); } catch (Exception e) { } } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { Camera.Parameters parameters=camera.getParameters(); parameters.setPictureSize(WIDTH, HEIGHT); camera.setParameters(parameters); camera.startPreview(); faceDetection(); } @Override public void surfaceDestroyed(SurfaceHolder holder) { camera.setPreviewCallback(null); camera.stopPreview(); camera.release(); camera=null; } @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH) public void faceDetection(){ final int standardFaceScore = 60000; try {camera.startFaceDetection(); } catch (IllegalArgumentException e) { } catch (RuntimeException e) {} camera.setFaceDetectionListener(new Camera.FaceDetectionListener() { @Override public void onFaceDetection(Camera.Face[] faces, Camera camera) { Log.d(TAG, "faces count: " + faces.length); for (Camera.Face face : faces) { Log.d(TAG, "face id: " + face.id); Log.d(TAG, "face score: " + face.score); Log.d(TAG, "face rect: " + face.rect.left + "," + face.rect.top + " - " + face.rect.right + "," + face.rect.bottom); if (face.mouth != null) { Log.d(TAG, "face mouth: " + face.mouth.x + "," + face.mouth.y); Log.d(TAG, "face leftEye: " + face.leftEye.x + "," + face.leftEye.y); Log.d(TAG, "face rightEye: " + face.rightEye.x + "," + face.rightEye.y); } if(face.score > standardFaceScore && !is_save){ takePicture(); } } } }); } public void takePicture() { // カメラのスクリーンショットの取得 camera.takePicture(null, null,new Camera.PictureCallback() { public void onPictureTaken(byte[] data,Camera camera) { Toast.makeText(getContext(), "撮影しました", Toast.LENGTH_LONG).show(); is_save = true; sendData(getContext(), data); new Handler().postDelayed(new Runnable() { @Override public void run() { is_save = false; } }, 3000); } }); } private void sendData(Context context, byte[] data){ // ソケットの作成 Socket socket; BufferedOutputStream out; try{ socket = new Socket(IP_ADDR, PORT); out = new BufferedOutputStream(socket.getOutputStream()); out.write(data); if(out != null) out.close(); if(socket != null) socket.close(); } catch (Exception ex){ ex.printStackTrace(); } } }

基本このエラーです。

12-02 16:16:33.598 1305-17957/? E/HCEOutdoorUtil: (413) int HCEView_ManagerSensor::getIdent() Error(ALooper_pollAll returns TIMEOUT. Set Initialized Values)

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yona

2017/12/02 07:24

エラーログを載せてください。
yona

2017/12/02 08:16

エラーログは省略しないでください。
guest

回答1

0

自己解決

yonaさん回答していただき大変ありがとうございました。
surfaceChanged()メソッドの中のプレービューサイズを端末がサポートするサイズに変更したらカメラが起動しました。
これからも詰まったら質問させていただきます。

投稿2017/12/02 08:48

ths

総合スコア21

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問