zoukankan      html  css  js  c++  java
  • Android Studio下添加引用jar文件和so文件

    博客: 安卓之家
    微博: 追风917
    CSDN: 蒋朋的家
    简书: 追风917
    博客园: 追风917

    安卓开发中我们常会遇到jar文件和so文件的引用,下面介绍下在as下如何添加使用,这里以百度地图sdk所需的文件为例。

    添加jar


    1 在本地复制jar文件,然后到as界面,project标签下,找到app/libs,ctrl+v粘贴到libs文件夹下,结果如下:

    libs

    2 添加到依赖库

    之前可以右键jar包,“Add As Library”的,这个1.3.2版本给删除了吗?我们可以这样:ctrl+shift+alt+s进入project structure设置界面,然后添加包,操作如下:

    add

    在弹出的对话框中,找到libs下的三个jar包,依次添加即可,只能一次添加一个,不知google怎么想的:

    libs

    添加完成后,项目会自动同步,完成后,会在gradle.build脚本里看到添加了依赖。

    dep

    添加so


    没有so文件或添加路径不对,会出现下面类似错误:

    java.lang.UnsatisfiedLinkError: Native method not found: 
        com.baidu.platform.comjni.map.commonmemcache.JNICommonMemCache.Create:()
    

    添加时有个注意点就是添加的路径要设置正确,Android Studio 默认的so文件路径是app/src/main/jniLibs/armeabi,和eclipse是不一样的,要注意哦。

    按照添加jar文件的方法,复制粘贴就可以,没有jniLibs文件夹的新建一个,添加后的结果如下:

    so

    好了,这样就ok的,有时还需要添加armeabi-v7a,x86文件夹,视平台酌情增删。

    20150930补充:

    当然这个so文件的目录是可以指定的,比如在gradle脚本里这样配置:

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

    这样配置的话,so文件位置就和jar文件目录一致,也就是和eclipse一样,但是我还是推荐使用as默认的文件目录结构,而我在这里也犯了一个错误,请看我的另一篇文章:安卓百度地图开发so文件引用失败问题研究

    enjoy!

    悦分享,越快乐_

    欢迎交流,转载请注明出处,谢谢!

  • 相关阅读:
    js学习
    console用法
    Oracle 数据库加密
    Oracle 内存结构
    Oracle 锁
    Oracle 索引
    怎么理解“平均负载”
    Oracle分区表
    Oracle 数据库表(常见的表)
    PostgreSQL 监控磁盘使用
  • 原文地址:https://www.cnblogs.com/jp1017/p/4878319.html
Copyright © 2011-2022 走看看