All Projects → Tencent → Hardcoder

Tencent / Hardcoder

Licence: other
Hardcoder is a solution which allows Android APP and Android System to communicate with each other directly, solving the problem that Android APP could only use system standard API rather than the hardware resource of system.

Programming Languages

C++
36643 projects - #6 most used programming language
java
68154 projects - #9 most used programming language
c
50402 projects - #5 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to Hardcoder

Vconsole
A lightweight, extendable front-end developer tool for mobile web page.
Stars: ✭ 14,017 (+626.27%)
Mutual labels:  wechat, mobile
Flutter wechat assets picker
An assets picker in WeChat style, support multi assets picking.
Stars: ✭ 398 (-79.38%)
Mutual labels:  wechat, mobile
Wcdb
WCDB is a cross-platform database framework developed by WeChat.
Stars: ✭ 9,264 (+380%)
Mutual labels:  wechat, mobile
Imageviewer
A simple and customizable Android full-screen image viewer 一个简单且可自定义的Android全屏图像浏览器
Stars: ✭ 1,889 (-2.12%)
Mutual labels:  wechat
Cordova Plugin Console
[DEPRECATED] Apache Cordova Plugin console
Stars: ✭ 145 (-92.49%)
Mutual labels:  mobile
Yii2 Wx
这可能是yii2中最好用的微信SDK🔥🔥🔥
Stars: ✭ 148 (-92.33%)
Mutual labels:  wechat
Wechat Proxy
微信代理服务。提供简单易用的 HTTP 接口,简化微信公众号后台开发。
Stars: ✭ 151 (-92.18%)
Mutual labels:  wechat
Wechatbotengine
基于微信网页版 HTTP 协议的机器人引擎(含一些机器人)。WeChat bot engine based on WeChat HTTP protocol of WeChat Web Edition, several bots included.
Stars: ✭ 145 (-92.49%)
Mutual labels:  wechat
Magento Chatbot
Magento Chatbot Integration with Telegram, Messenger, Whatsapp, WeChat, Skype and wit.ai.
Stars: ✭ 149 (-92.28%)
Mutual labels:  wechat
Responsive Page
让你的页面轻松适配各种移动设备和PC端浏览器
Stars: ✭ 147 (-92.38%)
Mutual labels:  mobile
Wechat Playground
🐳 WeChat Playground - 开源微信调试工具
Stars: ✭ 147 (-92.38%)
Mutual labels:  wechat
Typewriter
Type safety + intellisense for your Segment analytics
Stars: ✭ 146 (-92.44%)
Mutual labels:  mobile
Wechat autojump game
用Golang实现微信跳一跳游戏自动玩
Stars: ✭ 148 (-92.33%)
Mutual labels:  wechat
Realm Java
Realm is a mobile database: a replacement for SQLite & ORMs
Stars: ✭ 11,232 (+481.97%)
Mutual labels:  mobile
Arcoreinsideouttrackinggearvr
Inside Out Positional Tracking (6DoF) for GearVR/Cardboard/Daydream using ARCore v1.6.0
Stars: ✭ 150 (-92.23%)
Mutual labels:  mobile
Panda Run
A panda parkour game, based on Cocos2d-js, running on Android / iOS
Stars: ✭ 145 (-92.49%)
Mutual labels:  mobile
Wechat Api
🗯 wechat-api by java7.
Stars: ✭ 1,813 (-6.06%)
Mutual labels:  wechat
Testowanieoprogramowania
Testowanie oprogramowania - Książka dla początkujących testerów
Stars: ✭ 146 (-92.44%)
Mutual labels:  mobile
Mpeditor
微信markdown编辑器
Stars: ✭ 146 (-92.44%)
Mutual labels:  wechat
Lazy
Kule Lazy4 / CSS Framework
Stars: ✭ 147 (-92.38%)
Mutual labels:  mobile

Hardcoder

licensePRs Welcome

中文版请见这里

Hardcoder is a solution which allows Android APP and Android System to communicate with each other directly, solving the problem that Android APP could only use system standard API rather than the hardware resources of the system. Through Hardcoder, Android APP can make good use of mobile phones hardware resources such as CPU frequency, Large Core, and the GPU to improve APP performance. Hardcoder allows Android system to get more information from APP in order to better provide system resources to Android APP. At the same time, for lack of implementation by the standard interface, the APP and the system can also realize the model adaptation and function expansion through the framework.

Hardcoder framework can averagely optimize the performance of Wechat by 10%-30% in terms of Wechat startup, video delivery, mini program startup, and other highly-loaded scenes. Furthermore, it could also averagely optimize the performance of Mobile QQ by 10%-50% in terms of mobile QQ startup, chatting Initialization, picture delivery, and other highly-loaded scenes. The framework now has been applied to mobile brands such as OPPO, vivo, Huawei, XIAOMI, Samsung, Meizu, etc and covers more than 460 millions devices.

readme

Getting started

  1. Read “Product introduction of Hardcoder” to learn about Hardcoder.

  2. Read “Technical introduction of Hardcoder” to know the implementation philosophy and technical framework.

  3. Use the testapp to quickly verify the performance of Hardcoder. For the further detail, please check ”Hardcoder testapp testing instruction“ and “Hardcoder Benchmark”.

  4. Please check the “Hardcoder Application Instruction” to learn how to use Hardcoder.

    1. Download Hardcoder repo and compline Hardcoder aar.
    2. Apply Hardcoder aar to “build.gradle”.
    3. Call initHardCoder to establish socket connection when process initializes (Generally, it needs to request resource when process initializes. That is the reason why to call initHardCoder when process initializes). Every process is individual and they all need to call initHardCoder to establish socket connection. Every process keeps a socket after the connection and the socket will disconnect if the process quits.
    4. Call checkPermission after the success of InitHardCoder call-back and transfer authentication values which are applied from different mobile brands by APP.
    5. Call startPerformance under the condition of resource request scenes and transfer parameters that request resource. If the scene is in the stage of process initiation, for example APP startup, startPerformance should not be called until it successfully calls back initHardCoder or it needs to verify whether socket is connected by examining isConnect() of HardCoderJNI.
    6. Actively call stopPerformance when scene stops and it needs to transfer the “hashCode" corresponding to the startPerformance in order to identify the corresponding scene. Then it can stop this request.
    7. Test the performance. To do the comparison between the situation in which “Hardcoder is on and off”.
  5. Apply the authentication from mobile brands. For the further detail, please check FAQ.

  6. Launch APP which has involved Hardcoder.

Document Support

  1. Product introduction of Hardcoder——https://github.com/Tencent/Hardcoder/wiki/Hardcoder-产品方案介绍
  2. Technical introduction of Hardcoder——https://github.com/Tencent/Hardcoder/wiki/Hardcoder-技术方案介绍
  3. Hardcoder testapp testing instruction——https://github.com/Tencent/Hardcoder/wiki/Hardcoder-Testapp测试指南
  4. Hardcoder Application Instruction——https://github.com/Tencent/Hardcoder/wiki/Hardcoder-接入指南
  5. FAQ——https://github.com/Tencent/Hardcoder/wiki/FAQ
  6. Hardcoder for Android API References——https://tencent.github.io/Hardcoder/
  7. Hardcoder Benchmark——https://github.com/Tencent/Hardcoder/wiki/Hardcoder-Benchmark

License

Hardcoder is under the BSD license. See the LICENSE file for details.

If you have any questions,welcome to join QQ group to contact us.

qqgroup_qrcode.png

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].