Java 如何添加串口api作为库并在android studio中使用它?
我正在使用android studio开发监控android应用程序。我想在我的应用程序中添加android serialport api()作为库,并在项目中实现串行通信。我使用SVN签出和Cygwin来下载源代码。我在串行端口api中编译NDK文件和JNI文件,然后复制了所有文件并附加到我项目中的库文件中。项目结构如下所示 然后我在android串行api中包含build.gradle文件,如下所示Java 如何添加串口api作为库并在android studio中使用它?,java,android,android-studio,android-ndk,serial-port,Java,Android,Android Studio,Android Ndk,Serial Port,我正在使用android studio开发监控android应用程序。我想在我的应用程序中添加android serialport api()作为库,并在项目中实现串行通信。我使用SVN签出和Cygwin来下载源代码。我在串行端口api中编译NDK文件和JNI文件,然后复制了所有文件并附加到我项目中的库文件中。项目结构如下所示 然后我在android串行api中包含build.gradle文件,如下所示 buildscript { repositories { mavenCentral
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.+'
}
}
apply plugin: 'android-library'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
minSdkVersion 15
targetSdkVersion 23
}
sourceSets {
main {
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
manifest.srcFile 'project/res/AndroidManifest.xml'
}
}
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android_serialport_api.sample"
android:versionCode="3"
android:versionName="1.2" >
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:name="Application" >
<activity
android:label="@string/app_name"
android:name="MainMenu" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="SerialPortPreferences" >
</activity>
<activity android:name="ConsoleActivity" >
</activity>
<activity android:name="LoopbackActivity" >
</activity>
<activity android:name="Sending01010101Activity"></activity>
</application>
<uses-sdk android:minSdkVersion="3" />
</manifest>
}
我将此包含在app/build.gradle中
compile project(':libraries:android-serialport-api')
在settings.gradle中,我也包含了这个
include ':libraries:android-serialport-api'
androidmanifest.xml文件最初是这样的
buildscript {
repositories {
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:0.12.+'
}
}
apply plugin: 'android-library'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
minSdkVersion 15
targetSdkVersion 23
}
sourceSets {
main {
java.srcDirs = ['src']
resources.srcDirs = ['src']
aidl.srcDirs = ['src']
renderscript.srcDirs = ['src']
res.srcDirs = ['res']
assets.srcDirs = ['assets']
manifest.srcFile 'project/res/AndroidManifest.xml'
}
}
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android_serialport_api.sample"
android:versionCode="3"
android:versionName="1.2" >
<application
android:icon="@drawable/icon"
android:label="@string/app_name"
android:name="Application" >
<activity
android:label="@string/app_name"
android:name="MainMenu" >
<intent-filter >
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="SerialPortPreferences" >
</activity>
<activity android:name="ConsoleActivity" >
</activity>
<activity android:name="LoopbackActivity" >
</activity>
<activity android:name="Sending01010101Activity"></activity>
</application>
<uses-sdk android:minSdkVersion="3" />
</manifest>
然而,当我做这个项目的时候。有很多错误。所以删除了大部分代码。所以现在库中的androidmanifest.xml是这样的
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="android_serialport_api.sample"
android:versionCode="3"
android:versionName="1.2" >
<uses-sdk android:minSdkVersion="3" />
</manifest>
在删除它们之后,我可以使项目和gradle同步化。但我不知道如何使用我导入的库中的serial.c源代码。如何修复程序?待办事项列表中有一些消息
请帮帮我 很简单!
- 使用以下命令:
- 从android sdk安装ndk
- android studio在此地址创建“.so”文件:“app\build\mediates\binaries\debug\lib”
- 在“app\src\main”中创建“jniLibs”文件夹
- 复制abi文件夹包含JNILBS文件夹中的.so文件
- 请阅读以下内容: