zoukankan      html  css  js  c++  java
  • 在Android Studio 0.5.2中使用ArcGIS Android SDK

    环境

    操作系统:Mac OSX 10.8.5
    Android Studio: 0.5.2
    ArcGIS Android SDK: 10.2.3

    操作步骤

    1. 在Android Studio中新建一个Module,例如:HelloArcGIS
    2. 打开ArcGIS Android SDK所在文件夹,将libs目录下的所有文件拷贝到HelloArcGIS下的libs文件夹
    3. 修改HelloArcGIS的build.gradle文件:
      1. 添加:
        task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') {
          destinationDir file("$buildDir/native-libs")
          baseName 'native-libs'
          extension 'jar'
          from fileTree(dir: 'libs', include: '**/*.so')
          into 'lib/'
        }
        
        tasks.withType(Compile) {
          compileTask -> compileTask.dependsOn(nativeLibsToJar)
        }
      2. 在dependences中添加:
        compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
      3. 在android中添加:
        packagingOptions {
          exclude 'META-INF/LGPL2.1'
          exclude 'META-INF/LICENSE'
          exclude 'META-INF/NOTICE'
        }

    最终的build.gradle应该类似于这样

    apply plugin: 'android'
    
    android {
    compileSdkVersion 18
    buildToolsVersion "19.0.3"
    
    defaultConfig {
    minSdkVersion 8
    targetSdkVersion 16
    versionCode 1
    versionName "1.0"
    }
    buildTypes {
    release {
    runProguard false
    proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
    }
    packagingOptions {
    exclude 'META-INF/LGPL2.1'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/NOTICE'
    }
    }
    
    
    dependencies {
    compile 'com.android.support:appcompat-v7:+'
    compile fileTree(dir: 'libs', include: ['*.jar'])
    compile fileTree(dir: "$buildDir/native-libs", include: 'native-libs.jar')
    }
    
    task nativeLibsToJar(type: Zip, description: 'create a jar archive of the native libs') {
    destinationDir file("$buildDir/native-libs")
    baseName 'native-libs'
    extension 'jar'
    from fileTree(dir: 'libs', include: '**/*.so')
    into 'lib/'
    }
    
    tasks.withType(Compile) {
    compileTask -> compileTask.dependsOn(nativeLibsToJar)
    }

    参考资料

    1. 解决.so引入的问题,思路是将.so文件打包为jar文件,程序安装后会解压jar,从而使.so文件能被访问

    http://stackoverflow.com/questions/16683775/include-so-library-in-apk-in-android-studio

    2. 解决local path doesn't exist错误
    http://stackoverflow.com/questions/18256177/android-studio-local-path-doesnt-exist

  • 相关阅读:
    4.9 省选模拟赛 圆圈游戏 树形dp set优化建图
    C#异步编程の-------异步编程模型(APM)
    C#异步编程の----Threadpool( 线程池)
    C#の----Func,Action,predicate在WPF中的应用
    C#常见委托のdelegate定义,Func,Action,Predicate总结
    c++のmap的遍历
    C#深度学习の----深拷贝与浅拷贝
    NSIS学习记录の----查找注册表某个键是否存在
    WPFの操作文件浏览框几种方式
    C#Url处理类
  • 原文地址:https://www.cnblogs.com/jubincn/p/3730609.html
Copyright © 2011-2022 走看看