OSDN Git Service

FUJI X対応準備その4。デバッグ前。
authorMRSa <mrsa@myad.jp>
Sun, 2 Jun 2019 15:21:53 +0000 (00:21 +0900)
committerMRSa <mrsa@myad.jp>
Sun, 2 Jun 2019 15:21:53 +0000 (00:21 +0900)
app/src/main/java/net/osdn/gokigen/a01d/camera/fujix/wrapper/command/FujiXCommandIssuer.java
app/src/main/java/net/osdn/gokigen/a01d/camera/fujix/wrapper/command/messages/FujiXCommandBase.java
app/src/main/java/net/osdn/gokigen/a01d/camera/fujix/wrapper/connection/FujiXCameraConnectSequence.java

index d2b68f8..0e887d5 100644 (file)
@@ -265,7 +265,15 @@ public class FujiXCommandIssuer implements IFujiXCommandIssuer, IFujiXCommunicat
             if (is != null)
             {
                 int read_bytes = is.read(byte_array, 0, BUFFER_SIZE);
-                byte[] receive_body = Arrays.copyOfRange(byte_array, 0, read_bytes);
+                byte[] receive_body;
+                if (read_bytes > 4)
+                {
+                    receive_body = Arrays.copyOfRange(byte_array, 0, read_bytes);
+                }
+                else
+                {
+                    receive_body = new byte[1];
+                }
                 if (isDumpReceiveLog)
                 {
                     // ログに受信メッセージを出力する
index 0405278..7a75776 100644 (file)
@@ -27,7 +27,7 @@ public class FujiXCommandBase implements IFujiXCommand
     @Override
     public int receiveDelayMs()
     {
-        return (50);
+        return (100);
     }
 
     @Override
index 72dd92b..05b003e 100644 (file)
@@ -102,6 +102,7 @@ public class FujiXCameraConnectSequence implements Runnable, IFujiXCommandCallba
     @Override
     public void receivedMessage(int id, byte[] rx_body)
     {
+        Log.v(TAG, "receivedMessage : " + id + "[" + rx_body.length + " bytes]");
         switch (id)
         {
             case SEQ_REGISTRATION:
@@ -119,7 +120,9 @@ public class FujiXCameraConnectSequence implements Runnable, IFujiXCommandCallba
                 if (rx_body.length == (int)rx_body[0])
                 {
                     // なぜかもうちょっとデータが飛んでくるので待つ
-                    commandIssuer.enqueueCommand(new StartReceiveOnly(this));
+                    //commandIssuer.enqueueCommand(new StartReceiveOnly(this));
+
+                    commandIssuer.enqueueCommand(new StartMessage3rd(this));
                 }
                 else
                 {