kivy / kivy/python-for-android

Services should support intent-filters

Open
#2,877 1 comment 0 reactions 0 assignees View on GitHub
feature-request
Dominant language
Python
Stars
8.9k
Forks
2k
Avg merge
12h 20m
Merged PRs (30d)
9

Description

### Checklist

- [X] the issue is indeed a bug and not a support request
- [X] issue doesn't already exist: https://github.com/kivy/python-for-android/issues
- [ ] I have a short, runnable example that reproduces the issue
- [X] I reproduced the problem with the latest development version (`p4a.branch = develop`)
- [X] I used the grave accent (aka backticks) to format code or logs when appropriated

### Description

In the Android Manifest, Services are defined with the [\ tag](https://developer.android.com/guide/topics/manifest/service-element). They may contain `` and `` sub-tags.

The `` sub-tag is necessary to implement certain services, such as the [MediaBrowserService](https://developer.android.com/reference/android/service/media/MediaBrowserService).

However, examining the `AndroidManifest.tmp.xml` files for SDL2, Service-Library and others reveals that the only way to include
intent-filters is in Activities. All `` tags are immediately closed off without an opportunity to include and sub-tags.

There should be a way to include `intent-filters`, and perhaps `` inside service definitions.

Contributor guide

Open the contributing guide

Research direction

Start by tracing how AndroidManifest.tmp.xml is generated for SDL2, Service-Library, and other services, focusing on the immediately closed service tags. Determine how service definitions could represent nested intent-filter and meta-data elements, then verify the generated manifests contain the requested sub-tags for services such as MediaBrowserService.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, python
Domain
build-system, mobile
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
32/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.