2016-04-13 7 views
0

Ich versuche, eine Methode aus einer anderen Klasse in meiner Steuerungsmethode für die Kamera von smarteyeglass zu verwenden, und ich bekomme einen Fehler. Es sagt mir, dass Methode in der Klasse nicht auf smarteyeglass.extension.Samplecamera.SamplecameraControl angewendet werden kann. Dies ist meine Definition für Methode, die ich in der Kamerasteuerungsmethode verwenden möchte.Methode in der Klasse kann nicht auf smarteyeglass.extension (android)

public DatabaseHelper(Context context) { 
    super(context, DB_NAME, null, 10); 
    this.myContext = context; 
    this.DB_PATH = "/data/data/" + context.getPackageName() + "/" + "databases/"; 
    Log.e("Path 1", DB_PATH); 
} 

Dies ist, wo ich die Methode in der Kamera Steuerklasse verwenden.

case SmartEyeglassControl.Intents.CAMERA_MODE_JPG_STREAM_HIGH_RATE: 

      if (cameraStarted) { 



       DatabaseHelper myDbHelper = new DatabaseHelper(SampleCameraControl.this); 

       try { 
       myDbHelper.createDataBase(); 
       } catch (IOException ioe) { 
        throw new Error("Unable to create database"); 
       } 
       try { 
        myDbHelper.openDataBase(); 
       } catch (SQLException sqle) { 
        throw sqle; 
       } 
       d = myDbHelper.query("Rota", null, null, null, null, null, null); 
       if (d.moveToFirst()) { 
        do { 
         canvas.drawText("Alınacak Parça " + d.getString(0) + " " + "Raf Adresi:" + d.getString(1), pointBaseX, pointY, paint); 
        } while (d.moveToNext()); 





       } else { 
        canvas.drawText("Başlamak için dokun ", pointBaseX, pointY, paint); 
       } 

       break; 

        canvas.drawText("wrong recording type.", pointBaseX, pointY, paint); 
      } 
     default: 
      utils.showBitmap(displayBitmap); 

Antwort

0

Ich denke, dass die Antwort hängt davon ab, was Sie suchen, was Sie hier tun möchten. Es sieht so aus, als ob Sie mit dem SampleCameraControl-Beispiel beginnen, was ein guter Anfang ist. Wenn Sie nur den Anwendungskontext benötigen, können Sie diesen aus dem Konstruktor der SampleCameraControl.java-Klasse abrufen.

public SampleCameraControl(final Context context, final String hostAppPackageName) { 

Wenn Sie versuchen, eine Aktion mit dem SmartEyeglass Dienstprogramm ausführen dann DatabaseHelper Konstruktor benötigt die SmartEyeglass Steuerungserweiterung abzurufen. Etwas wie dieses:

import com.sonyericsson.extras.liveware.extension.util.control.ControlExtension; 
public DatabaseHelper(Context context, ControlExtension smartEyeglassControl) { 

Lassen Sie mich wissen, wenn dies hilft!

+0

Es funktioniert. Danke Robert. –

+0

Ich habe versucht, Daten aus tadabase zu extrahieren und zu SmartEyeGlass Bildschirm zu drucken. Es gibt diesen Fehler, der diesmal angezeigt wird; _24162-24162/com.beispiel.sony.smarteyeglass.extension.hellowworld E/Pfad 1: /data/data/com.example.sony.smarteyeglass.extension.helloworld/databases/_ Ich weiß nicht, was das bedeutet. @Robert - Sony –