• Stars
    star
    421
  • Rank 102,977 (Top 3 %)
  • Language
    Java
  • License
    Apache License 2.0
  • Created almost 9 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Modern XML Parser for Android

Work in Progress

Please note that this is still work in progress!, although quite stable and used in production. CircleCI

TikXML

A fast xml parser for android (and java)

implementation 'com.tickaroo.tikxml:annotation:0.8.15'
implementation 'com.tickaroo.tikxml:core:0.8.15'

annotationProcessor 'com.tickaroo.tikxml:processor:0.8.15'

For pure java project use this apt plugin

For koltin project (android or pure) use kotlin-kapt plugin and use kapt instead of annotationProcessor in dependencies section of build.gradle.

(NOTE: In IDEA for non-android project this won't run annotation processor if you didn't set project to delegate build to gradle)

For retrofit2:

implementation 'com.tickaroo.tikxml:retrofit-converter:0.8.15'

Also, an AutoValue extension is available:

annotationProcessor 'com.tickaroo.tikxml:auto-value-tikxml:0.8.15'

Latest snapshot 0.9.0_11-SNAPSHOT available:

repositories {
  mavenCentral()
  maven {
    url 'http://oss.sonatype.org/content/repositories/snapshots'
  }
}

Documentation

The documentation (<= 0.8.x) can be found here

The documentation (>= 0.9.x) can be found here

Benchmark

We did benchmark on this early version of TikXml to compare field's results with other popular xml parsers like SimpleXml and Jackson. TikXml is working around 1,9 times faster than jackson and 4,3 times faster than SimpleXml by also having a low memory footprint: Benchmark

TikXml has been built on top of Okio and therefore is highly optimized for Retrofit2.

License

Copyright 2015 Tickaroo

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.

Releasing on Maven Central

If you are a Tickaroo employee and you want to release a new version on Maven Central, take a look at this document