使用httpClient后apk包增加了1.3M
2015-11-02 18:43
465 查看
引擎:cocos2dx3.3
IDE:vs2012
在cocos2dx3.3 项目中轻量使用httpClient后apk包增加了1.3M,我在项目中只使用http请求和接收,https加密的功能(libssl.a模块;SSL在传输层对网络连接进行加密)和数据进行加密或数字签名没有用上(crypto模块)。因为我的http只需要libcurl.a,
所以我去掉无用的libcrypto.a和libssl.a即可。
但是编译时,发现libcurl.a 关联着libcrypto.a和libssl.a, 解决办法就是重新编译一个不关联libcrypto.a和libssl.a的libcurl.a。
以上提到的文件目录在:您的项目\cocos2d\external\curl\prebuilt\android下
我这提供两个不关联的libcurl.a,一个是android\x86的,一个是android\armeabi-v7a的。
相应的文件引入Android.mk也更改如下(#是注释掉的):
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := cocos_curl_static
LOCAL_MODULE_FILENAME := curl
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libcurl.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../include/android
#LOCAL_STATIC_LIBRARIES += cocos_ssl_static
#LOCAL_STATIC_LIBRARIES += cocos_crypto_static
include $(PREBUILT_STATIC_LIBRARY)
#include $(CLEAR_VARS)
#
#LOCAL_MODULE := cocos_crypto_static
#LOCAL_MODULE_FILENAME := crypto
#LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libcrypto.a
#include $(PREBUILT_STATIC_LIBRARY)
#
#LOCAL_MODULE := cocos_ssl_static
#LOCAL_MODULE_FILENAME := ssl
#LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libssl.a
#include $(PREBUILT_STATIC_LIBRARY)
重新编译就可以去掉libcrypto.a和libssl.a,包将减小1.1M左右。
IDE:vs2012
在cocos2dx3.3 项目中轻量使用httpClient后apk包增加了1.3M,我在项目中只使用http请求和接收,https加密的功能(libssl.a模块;SSL在传输层对网络连接进行加密)和数据进行加密或数字签名没有用上(crypto模块)。因为我的http只需要libcurl.a,
所以我去掉无用的libcrypto.a和libssl.a即可。
但是编译时,发现libcurl.a 关联着libcrypto.a和libssl.a, 解决办法就是重新编译一个不关联libcrypto.a和libssl.a的libcurl.a。
以上提到的文件目录在:您的项目\cocos2d\external\curl\prebuilt\android下
我这提供两个不关联的libcurl.a,一个是android\x86的,一个是android\armeabi-v7a的。
相应的文件引入Android.mk也更改如下(#是注释掉的):
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := cocos_curl_static
LOCAL_MODULE_FILENAME := curl
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libcurl.a
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../include/android
#LOCAL_STATIC_LIBRARIES += cocos_ssl_static
#LOCAL_STATIC_LIBRARIES += cocos_crypto_static
include $(PREBUILT_STATIC_LIBRARY)
#include $(CLEAR_VARS)
#
#LOCAL_MODULE := cocos_crypto_static
#LOCAL_MODULE_FILENAME := crypto
#LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libcrypto.a
#include $(PREBUILT_STATIC_LIBRARY)
#
#LOCAL_MODULE := cocos_ssl_static
#LOCAL_MODULE_FILENAME := ssl
#LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libssl.a
#include $(PREBUILT_STATIC_LIBRARY)
重新编译就可以去掉libcrypto.a和libssl.a,包将减小1.1M左右。
相关文章推荐
- ASP.NET MVC Web API HttpClient简介
- 使用httpclient实现免费的google翻译api
- PHP封装的HttpClient类用法实例
- Android 中HttpURLConnection与HttpClient使用的简单实例
- Android通过HttpURLConnection和HttpClient接口实现网络编程
- HttpClient 在Java项目中的使用详解
- 谈谈HttpClient使用详解
- java实现HttpClient异步请求资源的方法
- 调用图灵机器人接口的问题
- volley框架下发送和读取cookie
- 浅谈HttpClient
- HttpClient不保存、发送Cookie
- HttpClient获取服务器JSON数据问题处理
- 学习 HTTP协议挺不错的一个类
- 通过Http协议下载文件、访问接口等等
- Apache HttpClient
- HttpClient 使用
- 了解HttpParser
- httpclient完全支持ssl连接方式