Skip to content

Expose InCallService data to other applications #837

Description

@kitsumed

Checklist

  • I made sure that there are no existing issues - open or closed - to which I could contribute my information.
  • I made sure that there are no existing discussions - open or closed - to which I could contribute my information.
  • I have read the FAQs inside the app (Menu -> About -> FAQs) and my problem isn't listed.
  • I have taken the time to fill in all the required details. I understand that the request will be dismissed otherwise.
  • This issue contains only one feature request.
  • I have read and understood the contribution guidelines.

Feature description

Basically, the application would declare its own permission. A bit like Shizuku, where applications that where allowed, will be able to ask/receive updates from InCallService. This would allow automation applications and call recording apps to detect and get informations about on-going calls. Since Android restrict access to call data to role-unique apps and system-apps, this would be the only way for a non-dialer app to get reliable access to this information. Since phone state is very limited, and getting the phone number is DEPRECATED and could be removed at any point.

As of now, I am only aware of the Welefon who does this, but its is very feature lacking.

Why do you want this feature?

I am the developer of ShizuCallRecorder and for a while now I have been hoping to see a dialer app implement a system that would allow third-party app to get access to the data given by InCallService. This data generally cannot be accesed by third-party app since Android restrict everything related to call to role-unique permission, system-apps, or very specific scenarios, with no way of letting the user decide / controls them.

Since ShizuCallRecorder is only a call recording, it would not make sense to force users to define the app as a dialer to get the unique dialer role. There are of courses work-arounds, and right now we have two of them, but Android or OEM could kill them at any moment.

Because of this, I have been looking for alternatives and also had Shizuku in mind. That's when a user made a feature request on our project and I discovered Welefon who does exactly what I just proposed. The only problem is that it is very lacking in features. This is bad since it would mean that if someone would wish to use ShizuCallRecorder, they would be forced to use X dialer, even if its lacking features for them.

FossifyOrg phone dialer is one of the most stable dialer app I know of, so I'm taking a shot, even trought this is probably a weird feature to ask. I could also see it beeing used by users who use automations apps (trought phone state broadcast may be enought for them)

Additional information

https://codeberg.org/wivewa/wivewa-dialer-android

Metadata

Metadata

Assignees

No one assigned

    Labels

    feature requestIssue is about a new feature or improving existing feature/behavior.needs triageIssue is not yet ready for PR authors to take up

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions