PMML evaluator library for the Android operating system (
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.


PMML evaluator library for the Android operating system (



  • Android 3.0 or newer.


Enter the project root directory and build using [Apache Maven] (

mvn clean install

The build produces two files:

  • pmml-android/target/pmml-android-1.0-SNAPSHOT.jar - Library JAR file.
  • pmml-android-example/target/pmml-android-example-1.0-SNAPSHOT.apk - Example App APK file.


Android does not provide its own JAXB runtime, and is generally unsuitable for working with standard JAXB runtimes such as GlassFish Metro or EclipseLink MOXy. Therefore, the org.dmg.pmml.PMML instance has to be obtained by other means.

The suggested workaround is to transmit models using Java Serialization.

Models can be converted from PMML data format to Java Serialization (SER) data format using the JPMML-Model Maven plugin:


The App can use the utility method to create a model evaluator instance based on a streamable SER asset or resource:

public ModelEvaluator<?> loadSer(String serName) throws Exception {
	AssetManager assetManager = getAssets();

	try(InputStream is ={

Extra caution is required to ensure that the SER producer (ie. the JPMML-Model Maven plugin) and the SER consumer (ie. the JPMML-Android library) are using exactly the same version of the JPMML-Model library at all times.


JPMML-Android is licensed under the [GNU Affero General Public License (AGPL) version 3.0] ( Other licenses are available on request.

Additional information

Please contact [] (