文档章节

Android Studio:正确引入so文件的方法

乐搏学院
 乐搏学院
发布于 2016/11/15 14:51
字数 281
阅读 15
收藏 0

方法一:

 

将libs文件夹下的so文件,通过gradle配置任务编译成jar文件。

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

apply plugin: 'com.android.library'

 

android {

    compileSdkVersion rootProject.ext.compileSdkVersion

    buildToolsVersion rootProject.ext.buildToolsVersion

 

    defaultConfig {

        minSdkVersion rootProject.ext.minSdkVersion

        targetSdkVersion rootProject.ext.targetSdkVersion

    }

 

 

    /** 导入so文件 */

    task nativeLibsToJar(type: Zip, description: "create a jar archive of the native libs") {

        destinationDir file("$projectDir/libs")

        baseName "Native_Libs2"

        extension "jar"

        from fileTree(dir: "libs", include: "**/*.so")

        into "lib"

    }

 

    tasks.withType(JavaCompile) {

        compileTask -> compileTask.dependsOn(nativeLibsToJar)

    }

 

 

}

 

dependencies {

    provided fileTree(dir: 'libs', include: ['*.jar'])

}

 

参考资料:http://blog.csdn.NET/wulianghuan/article/details/44567001

 

方法二:

通过插件将so文件依赖到jniLibs文件夹。

 

参考资料:http://www.jcodecraeer.com/a/anzhuokaifa/Android_Studio/2015/0804/3256.html

插件/开源项目 :https://github.com/nhachicha/Android-native-dependencies

 

 

方法三:

最佳方法。

1

2

3

4

5

6

7

8

9

10

11

12

android {

    sourceSets.main.jniLibs.srcDirs = ['libs']

 

    compileSdkVersion rootProject.ext.compileSdkVersion

    buildToolsVersion rootProject.ext.buildToolsVersion

 

    defaultConfig {

        minSdkVersion rootProject.ext.minSdkVersion

        targetSdkVersion rootProject.ext.targetSdkVersion

    }

 

}

 

结束语

 

免费学习更多精品课程,登录乐搏学院官网http://h.learnbo.cn/

或关注我们的官方微博微信,还有更多惊喜哦~

 

本文出自 “天空没有痕迹但我飞过” 博客,请务必保留此出处http://glblong.blog.51cto.com/3058613/1694567

© 著作权归作者所有

共有 人打赏支持
乐搏学院
粉丝 7
博文 526
码字总数 707467
作品 0
丰台
程序员
私信 提问

暂无文章

CentOS配置Tomcat监听80端口,虚拟主机

Tomcat更改默认端口为80 更改的配置文件是: /usr/local/tomcat/conf/server.xml [root@test-a ~]# vim /usr/local/tomcat/conf/server.xml # 找到 Connector port="8080" protocol="HTTP/1......

野雪球
今天
5
0
《稻盛和夫经营学》读后感心得体会3180字范文

《稻盛和夫经营学》读后感心得体会3180字范文: 一代日本经营之圣稻盛和夫凭借刻苦勤奋的精神以及深植于佛教的商业道德准则,成为了“佛系”企业家的代表人物。在《稻盛和夫经营学》“领导人...

原创小博客
今天
3
0
java框架学习日志-5(常见的依赖注入)

依赖注入(dependency injection) 之前提到控制反转(Inversion of Control)也叫依赖注入,它们其实是一个东西,只是看的角度不同,这章详细说一下依赖注入。 依赖——指bean对象创建依赖于...

白话
今天
4
0
红外接收器驱动开发

背景:使用系统的红外遥控软件没有反应,然后以为自己接线错误,反复测试,结果烧坏了一个红外接收器,信号主板没有问题。所以自己开发了一个红外接收器的python驱动。接线参见https://my.os...

mbzhong
今天
2
0
ActiveMQ消息传送机制以及ACK机制详解

AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的。 一. ActiveMQ消息传送机...

watermelon11
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部