FlatBuffer Android Sample Application

Additional

Language
Java
Version
N/A
Created
Apr 17, 2016
Updated
Nov 17, 2022
Owner
AMIT SHEKHAR (amitshekhariitbhu)
Contributor
AMIT SHEKHAR (amitshekhariitbhu)
1
Activity
Badge
Generate
Download
Source code

Advertisement

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.

Try Fast Android Networking Library for easy and fast networking

Another 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:

Read all of my blogs here.

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.