SimpleNexus / simplecallerid

A simple app to demonstrate displaying your apps user information as caller ID in Android's calling app.
55 stars 21 forks source link

Android 6 (and lower) compatibility #13

Open schorschii opened 3 years ago

schorschii commented 3 years ago

Can someone confirm compatibility with Android 6 or lower? I don't have a real Android 6 device for testing, so I only can test it in the emulator. There it works on Android 7 an newer, but not on Android 6 or earlier.

Logging shows, that only content://<appid>/directories is called on Android 6, but not content://<appip>/phone_lookup/<number> for the actual contact query.

alk99-abderrahman commented 2 years ago

neither in android 11

schorschii commented 2 years ago

@alk99-abderrahman It works in the emulator (Android 11 & 12) but not on my recently upgraded Fairphone 3 (it worked on the same Fairphone with Android 10). Which smartphone are you using?

alk99-abderrahman commented 2 years ago

@schorschii thanks for the answer . i tried it with samsung A30s i added overlay and read contacts permissions but without result

schorschii commented 2 years ago

Samsung phones generally cannot use this feature as they have their own phone app which is not implementing the CallDirectory lookup. A Samsung mod confirmed it in this forum thread.

alk99-abderrahman commented 2 years ago

thanks for the answer . i retried it on an other samsung a02 android 8 and it works perfectly (caller name + photo )even tho it have phone app.

schorschii commented 2 years ago

Interesting! Some time ago I tested it with a Galaxy A22 (Android 11) but without success. Now, I would be really interested in decompiling the Samsung phone app but I don't have the A22 anymore. May I ask if you can send me the phone app .apk from your Samsung A02? You can get it as follows:

# 1. find the package name of the Samsung phone app - e.g. the Google phone app is called "com.android.phone"
adb shell pm list packages | grep phone

# 2. get apk path by package name (replace package name)
adb shell pm path com.android.phone

# 3. download apk from device (replace path by your own)
adb pull /system/priv-app/TeleService/TeleService.apk

So maybe there is a real issue in combination with Android 11 which some vendors don't have on the radar - but it is not completely broken: I installed Lineage 18.1 (Android 11) on a Google Pixel and there it works too (as in the emulator).

I also wrote this issue to Fairphone. I am curious to see what they answer.

alk99-abderrahman commented 2 years ago

i want to know the issue too . i used a third party app to backup the phone apk here are all apks related to the term phone https://file.io/iN9JSuBpfkjC

schorschii commented 2 years ago

Great, thanks. I'll have a look at it and get back to you next week.

schorschii commented 2 years ago

Finally, I had time to take a look at the APKs. Unfortunately, they appear to be the wrong APKs. Can you please look again on your Samsung A02 with Android 8 searching for apps with "dialer" in it?

adb shell pm list packages | grep dialer

My recent results:

As a workaround for Samsung, HTC and other devices, we are also able to install the Google Phone app from the Play store on those devices to get the caller ID working.

alk99-abderrahman commented 2 years ago

hi i look on my samsung A02 and there is no package with name dialer here is list of all packages on my device

C:\platform-tools>adb shell pm list packages package:com.sec.android.app.DataCreate package:com.android.cts.priv.ctsshim package:com.samsung.android.smartswitchassistant package:com.google.android.youtube package:com.sec.android.app.chromecustomizations package:com.google.android.ext.services package:com.android.providers.telephony package:com.sec.android.app.parser package:com.samsung.android.calendar package:com.android.providers.calendar package:com.osp.app.signin package:com.sec.automation package:com.android.providers.media package:com.google.android.apps.docs.editors.docs package:com.google.android.onetimeinitializer package:com.google.android.ext.shared package:com.android.wallpapercropper package:com.samsung.max.go package:com.google.android.apps.mapslite package:com.sec.factory.camera package:com.sec.usbsettings package:com.android.documentsui package:android.auto_generated_rro__ package:com.android.externalstorage package:com.sec.factory package:com.android.htmlviewer package:com.whatsapp package:com.android.companiondevicemanager package:com.google.android.apps.navlite package:com.android.mms.service package:com.android.providers.downloads package:com.wsomacp package:com.samsung.android.MtpApplication package:com.sec.android.app.factorykeystring package:com.sec.android.app.samsungapps package:com.sec.android.emergencymode.service package:com.hd.backupapk package:com.google.android.configupdater package:com.sec.android.app.wlantest package:com.sec.epdgtestapp package:com.android.defcontainer package:com.sec.ims package:com.sec.sve package:com.android.providers.downloads.ui package:com.android.vending package:com.android.pacprocessor package:com.google.android.gm.lite package:com.sec.android.provider.badge package:com.android.certinstaller package:com.android.carrierconfig package:com.samsung.rcs package:android package:com.android.contacts package:com.android.egg package:com.android.mtp package:com.android.stk package:com.samsung.android.messaging package:com.android.backupconfirm package:com.sec.android.app.SecSetupWizard package:com.android.statementservice package:com.sec.android.app.sbrowser.lite package:com.sec.android.app.hwmoduletest package:com.sec.bcservice package:com.sec.modem.settings package:com.android.systemui.theme.dark package:com.google.android.apps.searchlite package:com.sec.android.app.sysscope package:com.sec.android.app.wallpaperchooser package:com.samsung.android.providers.context package:com.sec.android.app.servicemodeapp package:com.sec.android.preloadinstaller package:com.google.android.setupwizard package:com.sec.android.gallery3d package:com.android.providers.settings package:com.sec.imsservice package:com.android.sharedstoragebackup package:com.facebook.services package:com.google.android.music package:com.android.printspooler package:com.android.dreams.basic package:com.android.incallui package:com.android.inputdevices package:com.samsung.android.kgclient package:com.android.bips package:com.android.stk2 package:com.google.android.apps.nbu.files package:com.samsung.android.timezone.autoupdate_O package:com.google.android.apps.docs package:com.samsung.advp.imssettings package:com.sec.android.inputmethod package:com.sec.android.app.clockpackage package:com.sec.android.RilServiceModeApp package:com.google.android.webview package:com.sec.android.app.simsettingmgr package:com.android.server.telecom package:com.google.android.syncadapters.contacts package:com.magicbio.truename package:com.samsung.crane package:com.sec.imslogger package:com.android.keychain package:com.android.chrome package:com.google.android.packageinstaller package:com.google.android.gms package:com.google.android.gsf package:com.google.android.tts package:com.android.calllogbackup package:com.google.android.partnersetup package:com.sec.spp.push package:com.android.carrierdefaultapp package:com.android.proxyhandler package:com.sec.android.app.launcher package:com.google.android.feedback package:com.google.android.printservice.recommendation package:com.samsung.adaptivebrightnessgo package:com.google.android.syncadapters.calendar package:com.android.managedprovisioning package:com.samsung.safetyinformation package:com.sec.android.app.ringtoneBR package:com.google.android.apps.speechservices package:com.android.providers.partnerbookmarks package:com.facebook.lite package:com.facebook.system package:com.sec.android.app.popupcalculator package:com.sec.android.soagent package:com.sec.unifiedwfc package:com.sec.phone package:com.google.android.backuptransport package:com.android.storagemanager package:com.android.bookmarkprovider package:com.android.settings package:com.sec.android.app.bluetoothtest package:com.sec.android.emergencylauncher package:com.android.cts.ctsshim package:com.samsung.android.svcagent package:com.google.android.apps.assistant package:com.android.vpndialogs package:com.samsung.memorysaver package:com.android.phone package:com.android.shell package:com.android.wallpaperbackup package:com.android.providers.blockednumber package:com.example.simplecallerid package:com.android.providers.userdictionary package:com.wssyncmldm package:com.android.location.fused package:com.sec.epdg package:com.android.systemui package:com.sec.android.app.personalization package:com.google.android.apps.youtube.mango package:com.android.bluetoothmidiservice package:com.sec.rrocentre package:rierie.media.audiorecorder package:com.facebook.appmanager package:com.sec.android.app.fm package:com.sec.android.provider.emergencymode package:com.sec.android.app.camera package:com.android.bluetooth package:com.android.providers.contacts package:com.sec.android.widgetapp.webmanual package:com.samsung.sec.android.application.csc package:com.android.captiveportallogin package:com.google.android.inputmethod.latin package:com.samsung.android.sm.go package:com.samsung.android.video

also

C:\platform-tools>adb shell pm list packages | findstr phone

package:com.sec.phone package:com.android.phone