developing voip/sip applications on android gingerbread.
- develop an sip application.
- in AndroidManifest.xml, add permission requests as following,
<uses-permission android:name="android.permission.INTERNET"></users-permission>
<uses-permission android:name="android.permission.USE_SIP"></users-permission> - use SipManager. check SipManager.isVoipSupported() (isApiSupported() is encluded) or SipManager.newInstance(this).
- in AndroidManifest.xml, add permission requests as following,
- enable sip in emulator. (according to http://xilard.hu)
- download system.img for SDK 2.3.3/API 10 from http://xilard.hu/emulator233_sip_files/system.img
- the following steps should work, too. but in my experience, system.img was not saved, maybe because system.img is in SDK's directory, but not in AVD's, so all the modifications are useless.
- in eclipse, menu Run->Run Configurations..., add following Additional Emulator Command Line Options in Target tab, or, you will not be able to add anything to avd's /system,
-partition-size 128 - run the application in eclipse with emulator
- adb remount
- enter frameworks/base/data/etc of gingerbread
- adb push android.software.sip.xm /system/etc/permissions
- adb push android.software.sip.voip.xm /system/etc/permissions
- disable config_sip_wifi_only in config.xml, and repack resource file. or download the result for SDK 2.3.3/API 10 from http://xilard.hu/emulator233_sip_files/framework-res.apk.
- adb push framework-res.apk /system/framework
- turn the emulator off
- enable sip in sdk
- in device of gingerbread, there is usually a mk file configuring product information. it calls product/generic.mk. use following line to add one of the two xml files to system.img
PRODUCT_COPY_FILES += frameworks/base/data/etc/android.software.sip.xml:system/etc/permissions/a ndroid.software.sip.xml - when running gingerbread, just use adb to remount and push the two xml files to the phone
- in device of gingerbread, there is usually a mk file configuring product information. it calls product/generic.mk. use following line to add one of the two xml files to system.img