中文字幕无码a片久久,亚洲日韩在线观看浪潮,人人超人人超碰超国产二区,国产人妻久久一区二区,国产人妻久久一区二区

福感科技有限公司 歡迎您!
聯(lián)系方式

    地址:北京市平谷區(qū)馬坊鎮(zhèn)金河北街17號(hào)院3號(hào)樓7層712

    電話:010-89968230

    網(wǎng)站:http://0743119.com

UNITY3D C#開發(fā)ANDROID APP調(diào)用串口

2024-8-11 10:40:16??????點(diǎn)擊:

查閱了很多Unity3D開發(fā)Android應(yīng)用調(diào)用串口的方法,很多資料介紹的都是用java調(diào)用serial_port庫,然后編寫jni供Unity3D調(diào)用。
Unity3D C#調(diào)用JNI庫


 void Update()
  {
    using (AndroidJavaClass cls_UnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer"))
    {
      using (AndroidJavaObject obj_Activity = cls_UnityPlayer.GetStatic("currentActivity"))
      {
        AndroidJavaClass cls_CompassActivity = new AndroidJavaClass("com.LB.UnityAndroid1.CompassActivity");
        cls_CompassActivity.CallStatic("openCom1", obj_Activity);
      }
    }
  }


對(duì)于很多C#程序員來說,配置java和android開發(fā)環(huán)境都很陌生,需要折騰很久。
然而,根本不用這么麻煩,android串口庫本來就是c語言寫的,而C#語言直接就可以調(diào)用C語言編寫的動(dòng)態(tài)鏈接庫(android的動(dòng)態(tài)庫擴(kuò)展名是.so),所有jni是沒有必要的。
Unity3D C#引用C語言動(dòng)態(tài)鏈接庫函數(shù)


#if  UNITY_ANDROID 
  [System.Runtime.InteropServices.DllImport("libserial_port.so")]
  protected static extern Int32 Serial_Open([MarshalAs(UnmanagedType.LPTStr)]String path, int baudrate, int flags);
  [System.Runtime.InteropServices.DllImport("libserial_port.so")]
  protected static extern void Serial_Close(Int32 port);
  [System.Runtime.InteropServices.DllImport("libserial_port.so")]
  protected static extern Int32 Serial_SendString(Int32 port, string str);
  [System.Runtime.InteropServices.DllImport("libserial_port.so")]
  protected static extern Int32 Serial_SendData(Int32 port, [MarshalAs(UnmanagedType.LPArray)]byte[] data, int size);
  [System.Runtime.InteropServices.DllImport("libserial_port.so")]
  protected static extern Int32 Serial_RecvData(Int32 port);
#endif


Int32 port = Serial_Open(portName, 9600, 0);
byte[] buff = { 0xFA, 0xFB, 0xFC, 0xFD, 0xFF };
int n = Serial_SendData(port, buff, buff.Length);
Serial_Close(port);


將libserial_port.so放入\Assets\Plugins\Android\libs目錄下,設(shè)置對(duì)應(yīng)CPU目錄



配置對(duì)應(yīng)的平臺(tái)和CPU

Copyright 2019 0743119.com

福感科技有限公司 版權(quán)所有 All Rights Reserved

京ICP備20002031號(hào)

010-89968230