No description
Find a file
Guillaume BIENKOWSKI a762b2c871 Merge branch 'isac'
2013-11-08 15:45:17 +01:00
jni Progress commit on isac integration 2013-11-08 14:52:43 +01:00
liblinphone_tester propagate android build changes to liblinphone_tester 2013-10-08 13:07:29 +02:00
libs Use submodule for aXMLRPC. 2013-03-18 12:38:41 +01:00
patches Fix compilation on Mac OS X. 2013-09-27 17:06:02 +02:00
res Added tunnel preferences handlers 2013-11-08 15:09:03 +01:00
src/org/linphone Added tunnel preferences handlers 2013-11-08 15:09:03 +01:00
submodules Merge branch 'isac' 2013-11-08 15:45:17 +01:00
tests Small fixes for android app and test app 2013-11-05 16:24:45 +01:00
.classpath add opus 2013-09-16 11:54:16 +02:00
.gitignore Added sqlite compilation to liblinphone 2013-08-08 12:46:41 +02:00
.gitmodules Added submodule msisac 2013-11-08 14:59:41 +01:00
.project add ilbc 2010-06-30 09:54:16 +02:00
AndroidManifest.xml Added comments to Manifest to specify where to replace org.linphone by the real package if changed 2013-11-05 16:45:46 +01:00
ant.properties Use submodule for aXMLRPC. 2013-03-18 12:38:41 +01:00
build.xml Remove useless code. 2013-10-21 17:26:05 +02:00
check_tools.sh Merge branch 'master' into bellesip 2013-02-06 12:22:28 +01:00
custom_rules.xml Added ant/Makefile target to generate a complete android sdk 2013-11-06 10:58:20 +01:00
deliver_sdk.sh Updated deliver_sdk script 2012-12-07 12:20:10 +01:00
Makefile Merge branch 'isac' 2013-11-08 15:45:17 +01:00
project.properties fix belle-sip version 2013-10-16 21:37:35 +02:00
README Fix build of mediastreamer2 SDK. 2013-10-21 17:39:58 +02:00

			   LINPHONE for ANDROID
			****************************

To build liblinphone for Android, you must:
0) download the Android sdk with platform-tools and tools updated to latest revision (at least API 16 is needed), then add both 'tools' and 'platform-tools' folders in your path.
1) download the Android ndk (>=r9) from google and add it to your path.
2) install yasm, curl, ant and the autotools: autoconf, automake, aclocal, libtoolize, pkgconfig
	On 64 bits linux systems you'll need the ia32-libs package
3) run the Makefile script in the top level directory. This will download iLBC source files and convert some assembly files in VP8 project.
	$ make
4) To install the generated apk into a plugged device, run
	$ make install
5) (Optional) To generate a liblinphone SDK zip containing a full jar and native libraries, run
	$ make linphone-sdk
6) (Optional) To generate a libmediastreamer2 SDK zip containing a full jar and native libraries, run
	$ make mediastreamer2-sdk



To run the tutorials:
1) open the res/values/non_localizable_custom.xml file and change the value of the show_tutorials_instead_of_app to true.
2) compile again using make && make install.
3) /!\ don't forget to put it back to false to run the linphone application normally. /!\

To create an apk with a different package name, you need to edit the custom_rules.xml file:
1) look for the property named "linphone.package.name" and change it value accordingly
2) run again the Makefile script by calling "make"

Some options can be passed to make, like "make SOME_OPTION=SOME_VALUE".

BUILD_VIDEO
	values: 0 (no video) or 1 (video enabled), default value: 1

BUILD_X264
	values: 0 (don't build x264) or 1 (build x264), default value: 0

BUILD_AMRNB          
	values: 0 (don't build amrnb codec), light (try to use amrnb codec from android), full (build your own amrnb codec), default value: full

BUILD_AMRWB
	values: 0 (don't build amrwb codec), 1 (build your own amrwb codec): default value: 0

BUILD_GPLV3_ZRTP
	values: 0 (don't support ZRTP), 1 (support ZRTP and make the whole program GPLv3), default value: 0

BUILD_SILK            
	values: 0 (don't build silk plugin), 1 (build silk) [silk is Skype nonfree patented audio codec], default value: 1

BUILD_G729
	values: 0 (don't build g729 plugin), 1 (build g729) [g729 is nonfree patented audio codec, contact Sipro lab for more details]
	default value: 0

BUILD_TUNNEL
	values: 0 (don't build tunnel), 1 (build tunnel) [requires a non-free tunnel implementation in submodules/linphone/tunnel]
	default value: 0

BUILD_WEBRTC_AECM
	values: 0 (don't build echo canceler), 1 (build echo canceler)
	default value: 1

USE_JAVAH
	values: 0 (don't generate header), 1 (generate header for linphone_core_jni) [used to check errors at liblinphone compilation]
	default value: 1

BUILD_FOR_X86
	values: 0 (don't generate liblinphone libraries for x86 architecture), 1 (build liblinphone libraries for x86 architecture)
	default value: 1

BUILD_SQLITE
	values: 0 (don't build sqlite3), 1 (build sqlite3) [used to store chat messages inside liblinphone]
	default value: 1

If you encounter troubles with the make clean target and you are using the 8e android ndk, the solution can be found here: https://groups.google.com/forum/?fromgroups=#!topic/android-ndk/3wIbb-h3nDU