FlatBuffer Android Sample Application
This app shows how fast flat buffer works when we compare it with json.
My Personal Blog - amitshekhar.me - High-quality content to learn Android concepts.
FlatBuffers Vs JSON
FlatBuffer is too much faster than JSON.
Fast Android Networking Library for easy and fast networking
TryAnother awesome library for debugging databases and shared preferences.
How to start with flatBuffers
$ git clone https://github.com/google/flatbuffers.git
$ cd flatbuffers
- Run the command on the basis of your platform
$ cmake -G "Unix Makefiles"
$ cmake -G "Visual Studio 10"
$ cmake -G "Xcode"
- now build for your platform as usual. This should result in a flatc executable
- Now create your schema file with extension .fbs. Guide to write a schema can be found here.And also have your sample json file.
$ ./flatc -j -b schema.fbs sample.json
- This will create few java file and one bin file. Java files are like model(POJO for flatBuffer) of your json.Place the java files in your application package and bin file in raw folder(bin file is only for testing as it is converted to byte that is to be passed to flatbuffer for testing).
- Now we have to get flatbuffer jar file.
$ cd flatbuffers
$ cd java
$ mvn install
// This will download all the dependencies.
$ cd target
- Here you will get the flatbuffers-java-1.3.0-SNAPSHOT.jar file that you have to put it in your libs folder of android project.
- For rest you can see my sample project.
Major steps:
- Prepare your schema.fbs.
- Have a sample json.
- Build flatBuffer google project to generate your java files to be used in main application.
- Generate java files.
❤️
Find this project useful ? - Support it by clicking the
⭐ button on the upper right of this page.✌️
You can connect with me on:
License
Copyright (C) 2022 Amit Shekhar
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.