原因
在SerialPort.c的程式碼中有使用到「tcgetattr」方法
而「tcgetattr」方法存在於「termios.h」標頭檔案中在api 19 之後的「termios.h」 裡面的函式有調整,api版本設定不對會導致在不相容的android版本下出現這個錯誤。
我編譯.so庫時把minSdkVersion設定成21了,在android4.4的工控機上出現了這個錯誤。
解決辦法
只需要將module下的build.gradle檔案裡的minSdkVersion設定成19或以下,再進行編譯,就OK了。
Tips:NDK版本在17以後就不支援armeabi了,所以想要支援到更多的ABI,使用16的NDK版本就好了,