android jni 调用 libcurl
来源:互联网 发布:windows xp好还是7好 编辑:程序博客网 时间:2024/04/28 22:59
在JNI下新建目录header
拷贝libcurl 头文件到header 中
新建目录prebuilt 存放 libcurl.so
这里用到了其他库 所以一起放在下面 建立Android.mk 文件
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := database_sqlcipherLOCAL_SRC_FILES := libdatabase_sqlcipher.soinclude $(PREBUILT_SHARED_LIBRARY)include $(CLEAR_VARS)LOCAL_MODULE := sqlcipher_androidLOCAL_SRC_FILES := libsqlcipher_android.soinclude $(PREBUILT_SHARED_LIBRARY)include $(CLEAR_VARS)LOCAL_MODULE := stlport_sharedLOCAL_SRC_FILES := libstlport_shared.soinclude $(PREBUILT_SHARED_LIBRARY)include $(CLEAR_VARS)LOCAL_MODULE := curlLOCAL_SRC_FILES := libcurl.soinclude $(PREBUILT_SHARED_LIBRARY)
回到jni目录下 编辑Android.mk
LOCAL_PATH := $(call my-dir)include $(CLEAR_VARS)LOCAL_MODULE := InfoClientLOCAL_SRC_FILES := InfoClient.cppLOCAL_LDLIBS += -L$(SYSROOT)/usr/lib -llogLOCAL_SHARED_LIBRARIES += libcurlLOCAL_C_INCLUDES += $(LOCAL_PATH)/header/include $(BUILD_SHARED_LIBRARY)include $(LOCAL_PATH)/prebuilt/Android.mk
这样在编译时 库文件自动拷贝到 libs/armeabi/下
使用时 只需要在cpp文件中 加入#include "header/curl.h"
int http_post_file(const char *url, const char *filepath){CURLcode res;CURL *curl = curl_easy_init();if(curl == NULL){return -1;}struct curl_httppost *post=NULL;struct curl_httppost *last=NULL;struct curl_slist *headerlist=NULL;if(filepath == NULL || url == NULL)return -1;if( curl_formadd(&post, &last, CURLFORM_COPYNAME, "upfile",CURLFORM_FILE, filepath,CURLFORM_CONTENTTYPE, "application/octet-stream",CURLFORM_END) != 0){curl_formfree(post);return -1;}curl_easy_setopt(curl, CURLOPT_URL, url); /*Set URL*/curl_easy_setopt(curl, CURLOPT_HTTPPOST, post);res = curl_easy_perform(curl);if(res != CURLE_OK){curl_formfree(post);return -1;}curl_easy_cleanup(curl);curl_formfree(post);return 1;}
0 0
- android jni 调用 libcurl
- Android JNI 调用
- Android JNI调用
- android JNI 调用
- Android JNI 调用DLL
- Android平台JNI调用
- Android JNI 调用DLL
- Android中的jni调用
- Android中JNI调用
- Android JNI调用
- android JNI 调用
- Android jni调用
- Android JNI调用
- Android Jni 调用
- android jni调用
- Android调用jni全过程
- android jni 调用
- android JNI 调用步骤
- Git笔记
- FUN_SYS_GET_CALENDAR_WEEK(3)
- Cocos2d-x 3.2中的三种缓存类
- 汽车导航中,导航引擎与导航地图的关系
- Js进阶知识(三)
- android jni 调用 libcurl
- Beautiful Soup(二)--遍历文档树
- PHP 常用的header头部定义
- (NoSql之HBase)Hbase原理、基本概念、基本架构
- Timer和TimerTask详解
- org.apache.jasper.JasperException: Unable to compile class for JSP:
- 第二周 项目一:三角形类1
- Linux - 文件 /dev/null 和 /dev/zero
- Android16_WebView