Update android documentation
This commit is contained in:
parent
73382d85ca
commit
4fb588d7a6
7
pom.xml
7
pom.xml
|
@ -1646,7 +1646,6 @@
|
||||||
<artifactId>maven-scm-api</artifactId>
|
<artifactId>maven-scm-api</artifactId>
|
||||||
<version>1.9.5</version>
|
<version>1.9.5</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<!-- <dependency> <groupId>org.apache.maven.doxia</groupId> <artifactId>doxia-core</artifactId> <version>1.7</version> </dependency> -->
|
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.maven.doxia</groupId>
|
<groupId>org.apache.maven.doxia</groupId>
|
||||||
<artifactId>doxia-module-markdown</artifactId>
|
<artifactId>doxia-module-markdown</artifactId>
|
||||||
|
@ -1686,17 +1685,11 @@
|
||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
</plugin>
|
</plugin>
|
||||||
<!-- <plugin> <groupId>com.github.github</groupId> <artifactId>site-maven-plugin</artifactId> <version>0.12</version> <configuration> <message>Building site for ${project.version}</message> <server>github</server>
|
|
||||||
</configuration> <executions> <execution> <goals> <goal>site</goal> </goals> <phase>site-deploy</phase> </execution> </executions> </plugin> -->
|
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
<reporting>
|
<reporting>
|
||||||
<plugins>
|
<plugins>
|
||||||
<!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-checkstyle-plugin</artifactId> <reportSets> <reportSet> <reports><report>checkstyle-aggregate</report></reports> </reportSet>
|
|
||||||
</reportSets> <configuration> <configLocation>config/sun_checks.xml</configLocation> <includes> hapi-fhir-base/src/main/java/**/*.java </includes> </configuration> </plugin> -->
|
|
||||||
<!-- <plugin> <groupId>org.jacoco</groupId> <artifactId>jacoco-maven-plugin</artifactId> <version>0.7.7.201606060606</version> <reportSets> <reportSet> <reports> <report>report</report> </reports> <configuration>
|
|
||||||
<dataFileIncludes>${baseDir}/hapi-fhir-base/target/jacoco.exec</dataFileIncludes> </configuration> </reportSet> </reportSets> </plugin> -->
|
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-changes-plugin</artifactId>
|
<artifactId>maven-changes-plugin</artifactId>
|
||||||
|
|
|
@ -7,6 +7,17 @@
|
||||||
</properties>
|
</properties>
|
||||||
<body>
|
<body>
|
||||||
<release version="3.1.0" date="TBD">
|
<release version="3.1.0" date="TBD">
|
||||||
|
<action type="fix">
|
||||||
|
The Android client module has been restored to working order, and no longer
|
||||||
|
requires a special classifier or an XML parser to be present in order to
|
||||||
|
work. This means that the hapi-fhir-android library is much less likely
|
||||||
|
to cause conflicts with other libraries imported into an Android application
|
||||||
|
via Gradle.
|
||||||
|
<![CDATA[<br/><br/>]]>
|
||||||
|
See the
|
||||||
|
<![CDATA[<a href="http://hapifhir.io/doc_android.html">HAPI FHIR Android Documentation</a>]]>
|
||||||
|
for more information.
|
||||||
|
</action>
|
||||||
<action type="add">
|
<action type="add">
|
||||||
A performance to the JPA server has been made which reduces the number
|
A performance to the JPA server has been made which reduces the number
|
||||||
of writes to index tables when updating a resource with contents that
|
of writes to index tables when updating a resource with contents that
|
||||||
|
|
|
@ -11,16 +11,32 @@
|
||||||
<section name="Android Client Development">
|
<section name="Android Client Development">
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
HAPI now has a specially built binary (JAR) which can be used on Android. Android developers
|
HAPI now has a specially built module for use on Android. Android developers
|
||||||
may use this JAR to take advantage of the FHIR model classes, and the FHIR client (running a FHIR server
|
may use this JAR to take advantage of the FHIR model classes, and the FHIR client (running a FHIR server
|
||||||
on Android is not yet supported. Help wanted!)
|
on Android is not yet supported. Get in touch if this is something you are interested in working on!)
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
The Android JAR ships as a "shade JAR", meaning it is a single JAR containing all of the
|
As of HAPI FHIR 3.1.0, the <code>hapi-fhir-android</code> module has been streamlined in order
|
||||||
dependencies required in order to use HAPI FHIR. You should not need to include any other
|
to reduce its footprint. Previous versions of the library included both an XML and a JSON parser
|
||||||
libraries.
|
but this has been streamlined to only include JSON support in order to reduce the number of
|
||||||
|
libraries required in an Android build.
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
When using the HAPI FHIR Android client, the client will request only JSON responses
|
||||||
|
(via the HTTP <code>Accept</code> header) and will not be able to communicate
|
||||||
|
with FHIR servers that support only XML encoding (few, if any, servers actually exist
|
||||||
|
with this limitation that we are aware of).
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
The Android client also uses the <code>hapi-fhir-client-okhttp</code> module,
|
||||||
|
which is an HTTP client based on the OkHttp library. This library has proven to be
|
||||||
|
more powerful and less likely to cause issues on Android than the Apache HttpClient
|
||||||
|
implementation which is bundled by default.
|
||||||
|
</p>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
Note that the Android JAR is still new and hasn't received as much testing as other
|
Note that the Android JAR is still new and hasn't received as much testing as other
|
||||||
parts of the library. We would greatly appreciate feedback, testing, etc. Also note that
|
parts of the library. We would greatly appreciate feedback, testing, etc. Also note that
|
||||||
|
@ -34,24 +50,32 @@
|
||||||
<subsection name="Get the Android JAR">
|
<subsection name="Get the Android JAR">
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
To add the HAPI library via Gradle, use the following
|
To add the HAPI library via Gradle, you should add the
|
||||||
dependency. Note the following things:
|
<a href="http://search.maven.org/#search%7Cga%7C1%7Chapi-fhir-android">hapi-fhir-android</a>
|
||||||
|
library to your Gradle file, as well as a structures library for the appropriate
|
||||||
|
version of FHIR that you want to support, e.g.
|
||||||
|
<a href="http://search.maven.org/#search%7Cga%7C1%7Chapi-fhir-structures">hapi-fhir-structures-dstu3</a>.
|
||||||
</p>
|
</p>
|
||||||
<ul>
|
|
||||||
<li>The classifier should be set to the version of FHIR you want to support.</li>
|
|
||||||
<li>
|
|
||||||
You need to excluded a few things in order to get this to work. This is
|
|
||||||
a quirk because the way HAPI is built and will hopefully be resolved in a future
|
|
||||||
release.
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
<source><![CDATA[dependencies {
|
<source><![CDATA[dependencies {
|
||||||
compile "ca.uhn.hapi.fhir:hapi-fhir-android:2.2:dstu2@jar"
|
compile "ca.uhn.hapi.fhir:hapi-fhir-android:3.1.0-SNAPSHOT"
|
||||||
|
compile "ca.uhn.hapi.fhir:hapi-fhir-structures-dstu2:3.1.0-SNAPSHOT"
|
||||||
}]]></source>
|
}]]></source>
|
||||||
|
|
||||||
<p>
|
<p>
|
||||||
You may also download a copy from the GitHub
|
Uou will also need to manually exclude the Woodstox StAX library from
|
||||||
<a href="https://github.com/jamesagnew/hapi-fhir/releases">Releases</a> page.
|
inclusion, as this library uses namespaces which are prohibited on Android. You should also
|
||||||
|
exclude
|
||||||
|
</p>
|
||||||
|
<source><![CDATA[configurations {
|
||||||
|
all*.exclude group: 'org.codehaus.woodstox'
|
||||||
|
all*.exclude group: 'org.apache.httpcomponents'
|
||||||
|
}</source>
|
||||||
|
|
||||||
|
<p>
|
||||||
|
To see a sample Gradle file for a working Android project
|
||||||
|
using HAPI FHIR, see the
|
||||||
|
<a href="https://github.com/hapifhir/hapi-fhir-android-integration-test">Android Integration Test</a>
|
||||||
|
project.
|
||||||
</p>
|
</p>
|
||||||
</subsection>
|
</subsection>
|
||||||
</section>
|
</section>
|
||||||
|
@ -59,7 +83,7 @@
|
||||||
<section name="Performance">
|
<section name="Performance">
|
||||||
<p>
|
<p>
|
||||||
On mobile devices, performance problems are particularly noticeable. This
|
On mobile devices, performance problems are particularly noticeable. This
|
||||||
is made worse by the fact that some Android devices have much slower performance
|
is made worse by the fact that some economy Android devices have much slower performance
|
||||||
than modern desktop computers. See the
|
than modern desktop computers. See the
|
||||||
<a href="./doc_rest_client_http_config.html#performance">Client Configuration Performance</a>
|
<a href="./doc_rest_client_http_config.html#performance">Client Configuration Performance</a>
|
||||||
page for some tips on how to improve client performance.
|
page for some tips on how to improve client performance.
|
||||||
|
|
Loading…
Reference in New Issue