diff --git a/src/app/src/main/java/wificar/MyMainFrm.java b/src/app/src/main/java/wificar/MyMainFrm.java index 01742cc..89bb0b3 100644 --- a/src/app/src/main/java/wificar/MyMainFrm.java +++ b/src/app/src/main/java/wificar/MyMainFrm.java @@ -18,6 +18,7 @@ import android.view.Window; import android.view.WindowManager; import android.widget.Button; import android.widget.EditText; +import android.widget.LinearLayout; import android.widget.Toast; import java.util.Random; @@ -28,8 +29,8 @@ public class MyMainFrm extends Activity { public static String CameraIp; EditText CameraIP, ControlIP, Port; - Button Button_go; - Button Button_set; + LinearLayout Button_go; + LinearLayout Button_set; String videoUrl, controlUrl, port; /* * 以下为按一下返回键后,提示“再按一次退出程序” @@ -83,7 +84,6 @@ public class MyMainFrm extends Activity { intent.setClass(MyMainFrm.this, MyVideo.class); //通过Intent对象启动另外一个Activity startActivity(intent); - finish(); }); Button_set.setOnClickListener(v -> { @@ -100,7 +100,6 @@ public class MyMainFrm extends Activity { intent.setClass(MyMainFrm.this, SettingsActivity.class); //通过Intent对象启动另外一个Activity startActivity(intent); - finish(); }); } diff --git a/src/app/src/main/java/wificar/MyVideo.java b/src/app/src/main/java/wificar/MyVideo.java index 5304063..8af031f 100644 --- a/src/app/src/main/java/wificar/MyVideo.java +++ b/src/app/src/main/java/wificar/MyVideo.java @@ -12,6 +12,7 @@ import android.view.View.OnClickListener; import android.view.Window; import android.view.WindowManager; import android.widget.Button; +import android.widget.ImageButton; import android.widget.LinearLayout; import android.widget.RelativeLayout; import android.widget.Toast; @@ -23,6 +24,9 @@ import java.net.InetAddress; import java.net.Socket; import java.net.URL; import java.net.UnknownHostException; +import java.sql.Time; +import java.util.Timer; +import java.util.TimerTask; import my.wificar.R; @@ -33,9 +37,8 @@ public class MyVideo extends Activity { URL videoUrl; MySurfaceView r; OutputStream socketWriter; - private Button TakePhotos; - private Button ViewPhotos; - private Button BtnForward, BtnBackward, BtnLeft, BtnRight, BtnStop; + private ImageButton TakePhotos; + private ImageButton ViewPhotos; private Socket socket; private RockerView rockerView; private long exitTime = 0; @@ -54,12 +57,6 @@ public class MyVideo extends Activity { TakePhotos = findViewById(R.id.TakePhoto); ViewPhotos = findViewById(R.id.ViewPhoto); - BtnForward = findViewById(R.id.button_forward); - BtnBackward = findViewById(R.id.button_backward); - BtnLeft = findViewById(R.id.button_left); - BtnRight = findViewById(R.id.button_right); - BtnStop = findViewById(R.id.button_stop); - Intent intent = getIntent(); //从Intent当中根据key取得value CameraIp = intent.getStringExtra("CameraIp"); @@ -72,57 +69,6 @@ public class MyVideo extends Activity { rockerView = new RockerView(this,socketWriter,this.getApplicationContext(),null); RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(1000,1000); addContentView(rockerView,params); - BtnForward.setOnClickListener(arg0 -> { - // TODO Auto-generated method stub - try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x01, (byte) 0x00, (byte) 0xff}); - socketWriter.flush(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - }); - - BtnBackward.setOnClickListener(arg0 -> { - // TODO Auto-generated method stub - try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x02, (byte) 0x00, (byte) 0xff}); - socketWriter.flush(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - }); - BtnRight.setOnClickListener(arg0 -> { - // TODO Auto-generated method stub - try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x03, (byte) 0x00, (byte) 0xff}); - socketWriter.flush(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - }); - BtnLeft.setOnClickListener(arg0 -> { - // TODO Auto-generated method stub - try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x04, (byte) 0x00, (byte) 0xff}); - socketWriter.flush(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - }); - BtnStop.setOnClickListener(arg0 -> { - // TODO Auto-generated method stub - try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x00, (byte) 0x00, (byte) 0xff}); - socketWriter.flush(); - } catch (Exception e) { - // TODO Auto-generated catch block - e.printStackTrace(); - } - }); TakePhotos.setOnClickListener(arg0 -> { // TODO Auto-generated method stub if (null != Constant.handler) { @@ -140,7 +86,6 @@ public class MyVideo extends Activity { MyVideo.this.startActivity(intent1); }); - } public void InitSocket() { diff --git a/src/app/src/main/java/wificar/RockerView.java b/src/app/src/main/java/wificar/RockerView.java index f272efb..f36a4ef 100644 --- a/src/app/src/main/java/wificar/RockerView.java +++ b/src/app/src/main/java/wificar/RockerView.java @@ -45,9 +45,9 @@ public class RockerView extends View{ bubblePaint.setAntiAlias(true); bubblePaint.setColor(grayColor); - rectfPaint.setAntiAlias(true); - rectfPaint.setColor(Color.parseColor("red")); - rectfPaint.setAlpha(144); +// rectfPaint.setAntiAlias(true); +// rectfPaint.setColor(Color.parseColor("red")); +// rectfPaint.setAlpha(144); } @Override protected void onDraw(Canvas canvas) { @@ -82,24 +82,24 @@ public class RockerView extends View{ case "LEFT": // TODO Auto-generated method stub try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x04, (byte) 0x00, (byte) 0xff}); + socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x03, (byte) 0x00, (byte) 0xff}); socketWriter.flush(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } - canvas.drawArc(mRectF, 135, 90, true, rectfPaint); + canvas.drawArc(mRectF, -45, 90, true, rectfPaint); break; case "RIGHT": // TODO Auto-generated method stub try { - socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x03, (byte) 0x00, (byte) 0xff}); + socketWriter.write(new byte[]{(byte) 0xff, (byte) 0x00, (byte) 0x04, (byte) 0x00, (byte) 0xff}); socketWriter.flush(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } - canvas.drawArc(mRectF, -45, 90, true, rectfPaint); + canvas.drawArc(mRectF, 135, 90, true, rectfPaint); break; case "STOP": // TODO Auto-generated method stub diff --git a/src/app/src/main/java/wificar/SettingsActivity.java b/src/app/src/main/java/wificar/SettingsActivity.java index 604262b..d84c09b 100644 --- a/src/app/src/main/java/wificar/SettingsActivity.java +++ b/src/app/src/main/java/wificar/SettingsActivity.java @@ -2,9 +2,12 @@ package wificar; import androidx.appcompat.app.AppCompatActivity; +import android.content.Intent; import android.os.Bundle; +import android.view.View; import android.view.Window; import android.view.WindowManager; +import android.widget.Button; import my.wificar.R; @@ -16,5 +19,8 @@ public class SettingsActivity extends AppCompatActivity { this.requestWindowFeature(Window.FEATURE_NO_TITLE);//隐去标题(应用的名字必须要写在setContentView之前,否则会有异常) this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); setContentView(R.layout.activity_settings); + + Button back = findViewById(R.id.back); + back.setOnClickListener(view -> finish()); } } \ No newline at end of file diff --git a/src/app/src/main/res/drawable-hdpi/look.png b/src/app/src/main/res/drawable-hdpi/look.png new file mode 100644 index 0000000..4e8e4b4 Binary files /dev/null and b/src/app/src/main/res/drawable-hdpi/look.png differ diff --git a/src/app/src/main/res/drawable-hdpi/settings.png b/src/app/src/main/res/drawable-hdpi/settings.png new file mode 100644 index 0000000..562680a Binary files /dev/null and b/src/app/src/main/res/drawable-hdpi/settings.png differ diff --git a/src/app/src/main/res/drawable-hdpi/snapshot.png b/src/app/src/main/res/drawable-hdpi/snapshot.png new file mode 100644 index 0000000..53b5cfc Binary files /dev/null and b/src/app/src/main/res/drawable-hdpi/snapshot.png differ diff --git a/src/app/src/main/res/drawable-hdpi/start.png b/src/app/src/main/res/drawable-hdpi/start.png new file mode 100644 index 0000000..1888d32 Binary files /dev/null and b/src/app/src/main/res/drawable-hdpi/start.png differ diff --git a/src/app/src/main/res/drawable/circle.xml b/src/app/src/main/res/drawable/circle.xml new file mode 100644 index 0000000..c890721 --- /dev/null +++ b/src/app/src/main/res/drawable/circle.xml @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/src/app/src/main/res/layout/mymainfrm.xml b/src/app/src/main/res/layout/mymainfrm.xml index fc1f319..865c357 100644 --- a/src/app/src/main/res/layout/mymainfrm.xml +++ b/src/app/src/main/res/layout/mymainfrm.xml @@ -1,45 +1,116 @@ - - - - + - + android:layout_width="0dp" + android:layout_height="50dp" + android:text="http://192.168.1.1:8080/?action=stream" + app:layout_constraintBottom_toBottomOf="@+id/textViewIP" + app:layout_constraintStart_toEndOf="@id/textViewIP" + app:layout_constraintTop_toTopOf="@+id/textViewIP" + app:layout_constraintWidth_percent="0.6" /> + + - + app:layout_constraintWidth_percent="0.6" + android:layout_width="0dp" + android:layout_height="50dp" + android:text="192.168.1.1" + app:layout_constraintStart_toEndOf="@+id/textViewIP" + app:layout_constraintTop_toBottomOf="@+id/editIP" /> + + + android:layout_width="0dp" + android:layout_height="50dp" + android:text="2001" + app:layout_constraintStart_toStartOf="@+id/editIP" + app:layout_constraintTop_toBottomOf="@+id/ip" + app:layout_constraintWidth_percent="0.6" /> -