package com.xinyingpower.testcomm; import androidx.appcompat.app.AppCompatActivity; import android.os.Bundle; import android.os.Handler; import android.view.View; import android.widget.Button; import android.widget.TextView; import com.xinyingpower.testcomm.databinding.ActivityMainBinding; public class MainActivity extends AppCompatActivity { // Used to load the 'testcomm' library on application startup. static { System.loadLibrary("testcomm"); } private ActivityMainBinding binding; View.OnClickListener onButtonClicked = new View.OnClickListener() { @Override public void onClick(View view) { int viewId = view.getId(); switch (viewId) { case R.id.turnOn12V: turnOn12V(view); break; case R.id.turnOn485: turnOn485(view); break; case R.id.turnOn: turnOn(); break; case R.id.turnOff: turnOff(); break; case R.id.turnLeft: turnLeft(); break; case R.id.turnRight: turnRight(); break; case R.id.turnUp: turnUp(); break; case R.id.turnDown: turnDown(); break; case R.id.zoomIn: zoomIn(); break; case R.id.zoomOut: zoomOut(); break; case R.id.turnOnWipers: turnOnWipers(); break; case R.id.turnOffWipers: turnOffWipers(); break; case R.id.turnOnLight: turnOnLight(); break; case R.id.turnOffLight: turnOffLight(); break; case R.id.setSpeed: { int speed = 0; try { speed = Integer.parseInt(binding.speed.getText().toString()); } catch (Exception ex) { } setSpeed(speed); } break; case R.id.setPreset: case R.id.gotoPreset: { int preset = 0xFF; try { preset = Integer.parseInt(binding.preset.getText().toString()); } catch (Exception ex) { } if (viewId == R.id.setPreset) { setPreset(preset); } else { gotoPreset(preset); } } break; } } }; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); binding = ActivityMainBinding.inflate(getLayoutInflater()); setContentView(binding.getRoot()); binding.btnSpi.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String s = binding.edtPort.getText().toString(); // Integer integer = Integer.valueOf(s); String str = testSpi(0); } }); int viewIds[] = {R.id.turnOn, R.id.turnOff, R.id.turnLeft, R.id.turnRight, R.id.turnUp, R.id.turnDown, R.id.turnOn12V, R.id.turnOn485, R.id.turnOnWipers, R.id.turnOffWipers, R.id.turnOnLight, R.id.turnOffLight, R.id.setSpeed, R.id.setPreset, R.id.gotoPreset, R.id.zoomIn, R.id.zoomOut}; for (int viewId : viewIds) { Button btn = (Button)findViewById(viewId); btn.setOnClickListener(onButtonClicked); } Handler handler = new Handler(); Runnable runnable = new Runnable() { @Override public void run() { // binding.btnSpi.performClick(); } }; handler.postDelayed(runnable, 1000); } private void turnOn12V(View view) { setInt(133, 1); } private void turnOn485(View view) { setInt(131, 1); } public native String testSpi(int port); public native void setInt(int cmd, int val); public native void turnLeft(); public native void turnRight(); public native void turnUp(); public native void turnDown(); public native void turnOn(); public native void turnOff(); public native void zoomIn(); // 拉近 public native void zoomOut(); // public native void setSpeed(int speed); public native void setPreset(int preset); public native void gotoPreset(int preset); public native void turnOnWipers(); public native void turnOffWipers(); public native void turnOffLight(); public native void turnOnLight(); }