<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://kodi.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jan</id>
	<title>Official Kodi Wiki - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://kodi.wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Jan"/>
	<link rel="alternate" type="text/html" href="https://kodi.wiki/view/Special:Contributions/Jan"/>
	<updated>2026-06-30T22:32:48Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.8</generator>
	<entry>
		<id>https://kodi.wiki/index.php?title=Android_development&amp;diff=139763</id>
		<title>Android development</title>
		<link rel="alternate" type="text/html" href="https://kodi.wiki/index.php?title=Android_development&amp;diff=139763"/>
		<updated>2018-07-29T21:08:56Z</updated>

		<summary type="html">&lt;p&gt;Jan: fix &amp;quot;Compiling Kodi for Android&amp;quot; readme link&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;{{XBMC development nav}}&lt;br /&gt;
{{mininav|[[Development]]}}&lt;br /&gt;
{{see also|HOW-TO submit a patch|Android}}&lt;br /&gt;
&amp;lt;section begin=&amp;quot;intro&amp;quot; /&amp;gt;[[Team-XBMC|Team-Kodi]] (formerly called [[Team-XBMC]]) first ported XBMC Media Center software to Android in 2012, and the whole project cross-platform application was renamed to Kodi in 2014. Kodi itself is a huge open source project and it takes loads of people working together to maintain it for all platforms, that is why [[Team-XBMC|Team-Kodi]] is always on the lookout for C/C++ programmers to volunteer in assisting us with the development of Kodi. Whether you have contributed to the Kodi/XBMC project in the past or not, please consider doing so now.&amp;lt;section end=&amp;quot;intro&amp;quot; /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Those of you who are completely unfamiliar with Kodi/XBMC can get a good overview of it on &#039;&#039;&#039;[[Kodi]]&#039;&#039;&#039; and &#039;&#039;&#039;[[Kodi FAQ]]&#039;&#039;&#039;.&lt;br /&gt;
{{cleanup}}&lt;br /&gt;
&lt;br /&gt;
== End-users (non-programmers) ==&lt;br /&gt;
You can help too by downloading Kodi for Android, testing it, and [[HOW-TO Submit a Proper Bug Report|reporting bugs and issues]]. Also, spread the word about Kodi for Android (and other platforms) to your friends and family, we are sure they will enjoy it too.&lt;br /&gt;
&lt;br /&gt;
== Developers (programmers) ==&lt;br /&gt;
You should be proficient in [http://en.wikipedia.org/wiki/Programming_language C/C++ programming language], and although not really required knowledge of [http://en.wikipedia.org/wiki/OpenGL OpenGL ES] or other [http://en.wikipedia.org/wiki/Multimedia multimedia] programming is a plus, as well as prior [http://en.wikipedia.org/wiki/Multi-platform cross-platform] or [http://en.wikipedia.org/wiki/Porting porting] development experience.&lt;br /&gt;
&lt;br /&gt;
Usage of the Android NDK (Native Development Kit) developers platform, and a step-by-step guide on HOW-TO compile Kodi for Android from source code is the up-to-date README for Android available in the [https://github.com/xbmc/xbmc XBMC Foundation git repo on GitHub].&lt;br /&gt;
&lt;br /&gt;
== Compiling Kodi for Android ==&lt;br /&gt;
* See: https://github.com/xbmc/xbmc/blob/master/docs/README.Android.md&lt;br /&gt;
&lt;br /&gt;
== Skill requirements and where to start ==&lt;br /&gt;
Proficiency in C/C++ programming language and, though not required, knowledge of [[w:OpenGL|OpenGL]] and/or multimedia programming is a plus, as well as prior cross-platform or porting development experience. Familiarity with the Android [http://developer.android.com/sdk/ SDK] and [http://developer.android.com/sdk/ndk/ NDK] is also a bonus.&lt;br /&gt;
&lt;br /&gt;
A good understanding of JNI is highly recommended, since many operations&lt;br /&gt;
in the Android environment require specific actions from the developers, that are&lt;br /&gt;
not necessarily common in typical native code. These include:&lt;br /&gt;
&lt;br /&gt;
* Not being able to directly access the content of VM objects through direct native pointers. E.g. you cannot safely get a pointer to a String object&#039;s 16-bit char array to iterate over it in a loop.&lt;br /&gt;
* Requiring explicit reference management when the native code wants to keep handles to VM objects between JNI calls.&lt;br /&gt;
&lt;br /&gt;
=== Supported Development Platforms ===&lt;br /&gt;
* Ubuntu 11 or later&lt;br /&gt;
&lt;br /&gt;
The source code can be obtained by cloning the xbmc [http://git-scm.com/ git] repository hosted on [https://github.com/xbmc/xbmc Github].&lt;br /&gt;
&lt;br /&gt;
To retrive the source code:&lt;br /&gt;
* cd $HOME&lt;br /&gt;
* git clone git://github.com/xbmc/xbmc.git xbmc-android&lt;br /&gt;
* cd xbmc-android&lt;br /&gt;
* git submodule update --init addons/skin.touchedgit://github.com/xbmc/xbmc.git xbmc-android&lt;br /&gt;
&lt;br /&gt;
After obtaining the code repository, follow the compilation/development guide in the new repository to setup the required packages and so on. Team-Kodi developers opinion is that the best thing to start with is just to take a look through the source code and try to understand how it all fits together. Test things out, find what works and what does not, then try and track down why.&lt;br /&gt;
&lt;br /&gt;
=== Software requirements ===&lt;br /&gt;
* Compiling Kodi for Android requires at least Android NDK Revision 10d. Android NDK Revision 9 and earlier do not work properly for our cause.&lt;br /&gt;
&lt;br /&gt;
=== Hardware requirements ===&lt;br /&gt;
* [[w:X86|x86-based computer]]. No other special hardware is required for development. For Android devices, either a [http://developer.android.com/guide/developing/devices/ virtual] or [http://developer.android.com/guide/developing/device.html hardware] device can be used for development.&lt;br /&gt;
* If using Mac OS X, [http://software.intel.com/en-us/articles/installation-instructions-for-intel-hardware-accelerated-execution-manager-macosx/ this library] from Intel is likely to be very helpful for hardware acceleration of a virtual Android environment.&lt;br /&gt;
&lt;br /&gt;
== Development Progress ==&lt;br /&gt;
&lt;br /&gt;
=== Porting Libraries ===&lt;br /&gt;
The following is a list of libraries which Kodi relies upon.&lt;br /&gt;
&lt;br /&gt;
* [[Libraries]]&lt;br /&gt;
&lt;br /&gt;
== General guidelines ==&lt;br /&gt;
=== User-friendliness is next to godlyness ===&lt;br /&gt;
{{#lst:Kodi manifesto|User-friendliness}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Development]]&lt;br /&gt;
[[Category:Android]]&lt;br /&gt;
[[Category:Manual]]&lt;/div&gt;</summary>
		<author><name>Jan</name></author>
	</entry>
</feed>