142.251.43.14] failed: Connection timed out: connect > Could not resolve com.android.tools.build:gradle-experimental Required by: project : > Could not resolve com.android.tools.build:gradle-experimental > Could not get resource 'https://maven.google.com/com/android/tools/build/gradle-experimental > Could not HEAD 'https://maven.google.com/com/android/tools/build/gradle-experimental/0.11.0 classpath 'com.android.tools.build:gradle:3.0.1' classpath 'com.android.tools.build:gradle-experimental
buildscript { repositories { jcenter() } dependencies { // 这里build:gradle改成gradle-experimental //其实gradle-experimental是有版本对应的,不过as后面会有提示,换一下就行 //classpath 'com.android.tools.build :gradle:2.3.3' classpath 'com.android.tools.build:gradle-experimental:0.9.3' } } allprojects
//classpath 'com.android.tools.build:gradle:3.2.1' classpath 'com.android.tools.build:gradle-experimental //classpath 'com.android.tools.build:gradle:3.2.1' classpath 'com.android.tools.build:gradle-experimental
然后生成对应的方法,可是不出意外的话生成的c文件只是有一个头文件的,并没有为我们生成对应的方法框架, #include <jni.h> 如果你熟悉Jni的语法可以自己去实现,但是太麻烦了,幸好谷歌为我们提供了一个插件gradle-experimental ,我们只需要在app下的gradle.build脚本里配置(仅仅在我们生成jni方法框架时添加,当我们全部添加完JNI方法框架之后,必须注释或者删除掉,否则run的时候就绝对报错) gradle-experimental 同年7月,在Android Studio 1.3版本上添加了 gradle-experimental插件,该插件支持NDK开发和调试,且带有代码不全和重构等高级功能。
/build.gradle替换build tools,使用gradle-experimental,如下 classpath"com.android.tools.build:gradle-experimental
替换 classpath 'com.android.tools.build:gradle:2.2.0' 为 classpath 'com.android.tools.build:gradle-experimental
//classpath 'com.android.tools.build:gradle:3.2.1' classpath 'com.android.tools.build:gradle-experimental
下面是实验性版本的官方用户使用指南: Experimental Plugin User Guide:http://tools.android.com/tech-docs/new-build-system/gradle-experimental
代码产生so文件的时候总结发现so文件的编译产生方式大概经历了3个阶段: 第一个阶段:通过Android.mk文件和Application.mk文件编译产生so文件; 第二个阶段:通过Gradle提供的gradle-experimental
png 八、使用experimental-plugin插件简介 我们在使用NDK开发有件比较麻烦的事情,就是编写Android.mk和Application.mk,儿Android Studio的插件gradle-experimental 所以使用gradle-experimental插件可以不用再编写.mk文件情况下进行NDK开发。 gradle-experimental是Android Studio的一个实验性的项目,是基于gradle的一个插件,主要用来自动化NDK的配置实现,无需自己编写Android.mk和Android.mk
/content/repositories/android"} } dependencies { classpath "com.android.tools.build:gradle-experimental
Android Plugin for Gradle)的版本 **/ dependencies { classpath 'com.android.tools.build:gradle-experimental