Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Sip application call from Contacts / PhoneBook

I'm currently developing an application using sip which is actually working.

However, I would like to allow people to call from "PhoneBook/Contact",

I saw a few application, like csip simple, where it works. I can click on the phone number, then a little dialog box appears and I can choose between several application.

Example here

I already did some research on StackOverflow and I found one solution which does not work.

I wonder if I made a mistake in my manifest, could you help me ?

<?xml version='1.0' encoding='utf-8'?>
<manifest android:hardwareAccelerated="true" android:versionCode="1" android:versionName="0.0.1" package="com.example.SIPProject" xmlns:android="http://schemas.android.com/apk/res/android">
    <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
    <application android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name" android:supportsRtl="true">
        <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
            <intent-filter android:label="@string/launcher_name">
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
            <intent-filter android:priority="10">
                <action android:name="android.intent.action.VIEW" />
                <action android:name="android.intent.action.DIAL" />
                <action android:name="android.intent.action.CALL" />
                <action android:name="android.intent.action.DIALER" />
                <category android:name="android.intent.category.DEFAULT" />
                <action android:name="android.intent.action.CALL_PRIVILEGED" />
                <data android:scheme="tel" />
            </intent-filter>
        </activity>
        <service android:name="com.example.sip.SipManagerService" />
        <receiver android:name="com.example.sip.SipOnboot">
            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
                <action android:name="android.intent.action.USER_PRESENT" />
            </intent-filter>
        </receiver>
    </application>
    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="22" />
    <service android:name="com.example.sip.SipManagerService" />
    <receiver android:name="com.example.sip.SipOnboot">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
            <action android:name="android.intent.action.USER_PRESENT" />
        </intent-filter>
    </receiver>
    <uses-permission android:name="android.permission.CALL_PRIVILEGED" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.CALL_PHONE" />
    <uses-permission android:name="android.permission.CONFIGURE_SIP" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
    <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
    <uses-feature android:name="android.hardware.telephony" android:required="true" />
    <uses-permission android:name="android.permission.USE_SIP" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <use-feature android:name="android.hardware.sip.voip" android:required="true" />
    <use-feature android:name="android.hardware.wifi" android:required="true" />
    <use-feature android:name="android.hardware.microphone" android:required="true" />
</manifest>

Thanks

like image 362
Napsters Desmars Avatar asked Oct 06 '15 13:10

Napsters Desmars


1 Answers

For SIP calls, i think the data type should be like this <data android:scheme="sip" />

For reference check this SipDroid

like image 148
Ankur Kumar Avatar answered Oct 05 '22 11:10

Ankur Kumar