[APP][2.1+][29 JAN 2015] Ultimate Caller ID Screen HD [HD Caller ID/Video ID]

Search This thread
I can't believe people are *****ing about the split second call screen before UCS overlays. Unless your phone is in your hand and you're starting at the screen when a call comes in, you never see the stock call screen. Who the hell sits there starting at their phone waiting for calls to come in? I find this amusing.

No wonder lowveld gets sick of the comments, you guys are ridiculous.

Please do us all a favor and uninstall the app so the rest of us normal people can continue supporting the development of the best call screen on Android, hands down

Weirdos

Sent from my T989 hunting for Siri Connor

Can't recall seeking your opinion nor do I recall insulting the developer. I supplied ways to make an already great app great and explained my reason for not buying the full version.
This wasn't regarding you so I don't understand why you're even posting a comment.

It's called user feedback. Not directed towards the other users. If you're not the developer, then keep your fingers off the keyboard when you feel the need to reply to my post...

Sent from me CM7 Nightly HTC Vision using XDA App that needs to show signatures
 

ingenious247

Senior Member
Oct 15, 2011
1,988
705
Can't recall seeking your opinion nor do I recall insulting the developer. I supplied ways to make an already great app great and explained my reason for not buying the full version.
This wasn't regarding you so I don't understand why you're even posting a comment.

It's called user feedback. Not directed towards the other users. If you're not the developer, then keep your fingers off the keyboard when you feel the need to reply to my post...

Sent from me CM7 Nightly HTC Vision using XDA App that needs to show signatures


"Being able to disable the stock call screen entirely would be wonderful"

You say you're a rooted user, correct?

Why don't you just freeze the stock dialer in Titanium backup?

I am assuming this should be fairly easy to do, until Lowveld gets this worked out.

One of the great things about buying the paid version is the motivation it gives developers who spend a ton of their personal time on apps for barely enough money to buy a six pack of beer at the end of the week (if that)

I guess I should have kept my comments more friendly, it's just I see a guy who is already stressed out trying to provide us with something fantastic (let's be real - the app is amazing, yes it needs work but still) and then I see people saying things that might deter other users from supporting the dev financially and it only makes the motivation to do this diminish.

I will apologize for the manner in which I spoke - I think we can pull together and help him make this exactly what you and everyone else is looking for
 
  • Like
Reactions: Andy3105

ingenious247

Senior Member
Oct 15, 2011
1,988
705
Something I though I'd share - this is what I use as the default picture for unknown callers.. typically I don't answer unknown numbers so I thought this would be funny
 

Attachments

  • dark-skull-and-crossbones.jpg
    dark-skull-and-crossbones.jpg
    178.6 KB · Views: 147

Andy3105

Senior Member
Jan 26, 2012
237
14
"Being able to disable the stock call screen entirely would be wonderful"

You say you're a rooted user, correct?

Why don't you just freeze the stock dialer in Titanium backup?

I am assuming this should be fairly easy to do, until Lowveld gets this worked out.

One of the great things about buying the paid version is the motivation it gives developers who spend a ton of their personal time on apps for barely enough money to buy a six pack of beer at the end of the week (if that)

I guess I should have kept my comments more friendly, it's just I see a guy who is already stressed out trying to provide us with something fantastic (let's be real - the app is amazing, yes it needs work but still) and then I see people saying things that might deter other users from supporting the dev financially and it only makes the motivation to do this diminish.

I will apologize for the manner in which I spoke - I think we can pull together and help him make this exactly what you and everyone else is looking for

How would you freeze the call screen? What is the file called?

Sent from my HTC Desire S using xda premium
 

jsmccabe78

Senior Member
May 16, 2008
1,438
373
Something I though I'd share - this is what I use as the default picture for unknown callers.. typically I don't answer unknown numbers so I thought this would be funny

I was going to ask what others are using. Not my style but thanks! Anyone else care to share?

For layout i currently have 2 similar themes. One with name removed that I use for known people and one with name,etc. For unknown. Anyone else?

Any other themes people are using?

Cheers.

Sent from my HTC HD2 using XDA
 
Last edited:

ingenious247

Senior Member
Oct 15, 2011
1,988
705
How would you freeze the call screen? What is the file called?

Sent from my HTC Desire S using xda premium

You have to be rooted and use Titanium Backup Pro (paid version allows you to freeze apps)

Stock dialer is called different things on different phones.. could be "phone", could be "dialer", and possibly something else altogether depending on the build.

I don't know how freezing it would affect the phone, but it can be unfrozen so no big deal. Just don't "uninstall" it, because then you could be in for some trouble.

I would perform a nandroid backup before doing anything, just in case.
 
Only problem with that as of now is if you freeze it, many problems can occur afterwards. UCS only works as on overlay as of now and only the speaker button is available.
Freezing the stock call screen as of right now would disable the ability to toggle bluetooth headset, dialer for when you're calling IVR's, muting, swapping calls, merging calls.
Not saying I don't support this app by any means. Providing input, opinion and recommendations is pure indication that I am supporting it. Just don't want to purchase the app as of now because what if in the future, the only way to cater to the rooted users who are requesting this app to not by an overlay but a complete replacement to the stock call screen entirely would be to put out a different version?
Never said I would never purchase it, saying I'm holding off on purchasing it for now to see what the future brings.

Do not freeze the stock call screen unless you are willing to have problems occur and lose access to certain abilities...

Sent from me CM7 Nightly HTC Vision using XDA App that needs to show signatures
 

Tectas

Senior Member
Jul 26, 2011
3,344
2,942
Freezing the phone.apk makes ucs useless, without it no calls are handled and nothing triggers ucs to show up.

Gesendet von meinem Desire S mit Tapatalk 2
 
Last edited:

hipher

Member
Oct 4, 2010
26
0
Valencia
I've been trying deleting and reinstalling the app but the problem still remains. Always the same, I can't see the picture selected to crop and zoom. If I save it, it's there. If I rotate the phone, force close.

I've recorded a log, hopefully it'll help solve this issue that makes the app unsable for me right now.

I have kept trying with every update of the app and still the same. Right now, this is one of few pay apps I have, but the only one I can't use. What's the point of this app if it does not allow me to choose the picture I want for the contacts? I would have expected at least some feedback on the crash log I attached.
 

lowveld

Inactive Recognized Developer
Nov 13, 2008
2,185
4,757
I have kept trying with every update of the app and still the same. Right now, this is one of few pay apps I have, but the only one I can't use. What's the point of this app if it does not allow me to choose the picture I want for the contacts? I would have expected at least some feedback on the crash log I attached.

I sincerely apologize, I somehow missed your post with the logcat. I'm taking a look at it now, but just to make sure:

- Even though you can't see the picture, when you press save it gets saved and later on used?

I'm sorry if this wasn't you, but someone reported something similar. That is, the issue was visualization during the cropping phase, because it was actually working underneath.

Cheers
 

Thomas_BA

Senior Member
Dec 22, 2009
1,122
250
Buenos Aires
www.artantique.net
The problem that the Stock Caller screen appears before the UCS screen is i think normal and can only completely removed if the application has Root access. Most phones have this problem with Call Blocker or Filter. There will be one ring tone than the phone hangs up.
This behavior i have with ALL Full scree caller apps. As long the developer does not uses root function this behavior will always be there, for one less for an other more seconds.
 

lowveld

Inactive Recognized Developer
Nov 13, 2008
2,185
4,757
Why the dafault phone will always show

Ok, it seems there's a lot of discussions about the default phone interface showing up before UCS, and some misleading information floating around. I will try to explain in detail why it is so, and why it will always be so. This will be a long explanation, with some technical information that most will not fully understand, but at least you'll have a source point to investigate from if you so wish.

1. Android is limited regarding "outside" app developers. No matter what google tells you, or how much hype is generated about it, the truth is that app developers are limited in some circumstances, comparing to full rom developers. As I am both, trust me on this.

2. The telephony interface (the part of Android that actually handles the calls) is not exposed in the android SDK. This means that following "proper" development guidelines, something like UCS would not even exist. There are no available classes/functions to pick up, hangup, mute calls, or any other operations regarding call handling.

3. Using some neat tricks, prior to Gingerbread, you could pretty much go around most of these limitations. As of Android V2.3, a further check was introduced: even if you manage to call the correct interfaces, Android checks if the caller is a system app, and if not, ignores it. This is why a lot of apps stopped working as of Gingerbread.

4. With the current set of limitations, I was able to build UCS as it is now, working from Android V2.1 to V4.0.3. Yes, It could do a lot more if I restricted it to Froyo.

So this is why the current feature set of UCS is somewhat limited when comparing with the default phone interface on your phone. This doesn't mean that in the future I won't find a magical workaround, but from where I'm standing now, it's not looking bright. But bottom line: It is currently impossible to fully replace the default phone interface, unless building the rom from scratch, to a specific device.
Note that the limitations to what app developers can do with the telephony interface has been a topic of complaint and frustration with google for years now. Given that they recently made it even worst with post Froyo, it's not looking as they will change it for better. In this particular area, iOS is better. I hate to admit it, but... suck it up.

So, trust me when I say we need the default interface to perform some functions. The following point, is why UCS only comes after the default. For this, you need some Android development notions. In lay terms, when something happens, the core system sends a broadcast to all apps interested that "something" has happened. This is the only way any external app has to know that a call i coming. The problem is that it is the default interface that sends that message, and it is capable of starting much faster than other apps.

So when UCS get's the message that a call is coming, the default interface is already showing up. Even if UCS is able to appear faster than the default, it would be pushed back when the default appears, and then bring itself back up front again. So, there's no way to hide the default interface. The only time that you won't see the default interface will be when the phone is locked. In that case the overhead of the lockscreen can make UCS fast enough to finish the boot process before anything shows.

Another thing: root access would give me some leeway to work with, but would not remove the fundamental limitations of UCS. I could try some more stuff, but it would have to be on a per-ROM basis, which pretty much invalidates even trying to do it in UCS. UCS is having about 5000 installations a day. If I screw up a condition that happens rarely, lets say for 1% of the users, I have 50 pissed of guys every day.

Up to know this is the default UCS behavior. UCS taking 5 seconds to show up is not normal, and indicates some sort of problem. In my setup, I never see the default interface, it only takes less than a second to go away, and unless I'm actually looking at the phone with it unlocked, it's gone by the time I pick up the phone.

This extreme delay could be caused by something else, I'll follow this up in further posts, and leave this one for reference for further questions about this topic.

Cheers
 

lowveld

Inactive Recognized Developer
Nov 13, 2008
2,185
4,757
I have kept trying with every update of the app and still the same. Right now, this is one of few pay apps I have, but the only one I can't use. What's the point of this app if it does not allow me to choose the picture I want for the contacts? I would have expected at least some feedback on the crash log I attached.

Hi again,

Can you try the attached apk and see if it makes any difference in your setup?

View attachment UltimateCallScreen.apk

@ezippo: This could also make a difference for your random crashing, please try it out!

Thanks

--- edit ---

@hipher: apparently there is something wrong with your gallery app. Please also try to pick the file with some other application (like ES File Explorer) just to rule it out.
 
Last edited:

ingenious247

Senior Member
Oct 15, 2011
1,988
705
Ok, it seems there's a lot of discussions about the default phone interface showing up before UCS, and some misleading information floating around. I will try to explain in detail why it is so, and why it will always be so. This will be a long explanation, with some technical information that most will not fully understand, but at least you'll have a source point to investigate from if you so wish.

1. Android is limited regarding "outside" app developers. No matter what google tells you, or how much hype is generated about it, the truth is that app developers are limited in some circumstances, comparing to full rom developers. As I am both, trust me on this.

2. The telephony interface (the part of Android that actually handles the calls) is not exposed in the android SDK. This means that following "proper" development guidelines, something like UCS would not even exist. There are no available classes/functions to pick up, hangup, mute calls, or any other operations regarding call handling.

3. Using some neat tricks, prior to Gingerbread, you could pretty much go around most of these limitations. As of Android V2.3, a further check was introduced: even if you manage to call the correct interfaces, Android checks if the caller is a system app, and if not, ignores it. This is why a lot of apps stopped working as of Gingerbread.

4. With the current set of limitations, I was able to build UCS as it is now, working from Android V2.1 to V4.0.3. Yes, It could do a lot more if I restricted it to Froyo.

So this is why the current feature set of UCS is somewhat limited when comparing with the default phone interface on your phone. This doesn't mean that in the future I won't find a magical workaround, but from where I'm standing now, it's not looking bright. But bottom line: It is currently impossible to fully replace the default phone interface, unless building the rom from scratch, to a specific device.
Note that the limitations to what app developers can do with the telephony interface has been a topic of complaint and frustration with google for years now. Given that they recently made it even worst with post Froyo, it's not looking as they will change it for better. In this particular area, iOS is better. I hate to admit it, but... suck it up.

So, trust me when I say we need the default interface to perform some functions. The following point, is why UCS only comes after the default. For this, you need some Android development notions. In lay terms, when something happens, the core system sends a broadcast to all apps interested that "something" has happened. This is the only way any external app has to know that a call i coming. The problem is that it is the default interface that sends that message, and it is capable of starting much faster than other apps.

So when UCS get's the message that a call is coming, the default interface is already showing up. Even if UCS is able to appear faster than the default, it would be pushed back when the default appears, and then bring itself back up front again. So, there's no way to hide the default interface. The only time that you won't see the default interface will be when the phone is locked. In that case the overhead of the lockscreen can make UCS fast enough to finish the boot process before anything shows.

Another thing: root access would give me some leeway to work with, but would not remove the fundamental limitations of UCS. I could try some more stuff, but it would have to be on a per-ROM basis, which pretty much invalidates even trying to do it in UCS. UCS is having about 5000 installations a day. If I screw up a condition that happens rarely, lets say for 1% of the users, I have 50 pissed of guys every day.

Up to know this is the default UCS behavior. UCS taking 5 seconds to show up is not normal, and indicates some sort of problem. In my setup, I never see the default interface, it only takes less than a second to go away, and unless I'm actually looking at the phone with it unlocked, it's gone by the time I pick up the phone.

This extreme delay could be caused by something else, I'll follow this up in further posts, and leave this one for reference for further questions about this topic.

Cheers

What if root users pushed the apk to replace the system dialer? Perhaps if the other functions (dial pad for voicemail etc) were included then we could force it into or current ROM and replace the dialer completely.. Maybe that could be an option for a separate apk with a nominal price...hint hint

Sent from my T989 hunting for Siri Connor
 

hipher

Member
Oct 4, 2010
26
0
Valencia
I sincerely apologize, I somehow missed your post with the logcat. I'm taking a look at it now, but just to make sure:

- Even though you can't see the picture, when you press save it gets saved and later on used?

I'm sorry if this wasn't you, but someone reported something similar. That is, the issue was visualization during the cropping phase, because it was actually working underneath.

Cheers
Thanks for replying. I'm sure in the end you'll figure out was going on!

Yes, if I hit save, the picture is saved. Furthermore, if i touch the screen in the cropping stage, although I can not see what I'm doing, I move and crop the pic. When I save it, usually is in horizontal position although the pic was taken with the phone in vertical position. But if I rotate the phone before pressing save I get the message "unfortunately the process com.lowvekd.ucs has stopped".

Today I just discovered something else : it seems to happen only with pictures taken with my phone (original Galaxy S almost 2 yearts old, not the best camera out there). If I select older pictures I have from other phone with crappy camera or pics I've been sent by whatsapp, it works just fine. I guess the resolution of the image might have something to do? I've tried copying one of my pictures to other folder, and it did'nt work. Also I have renamed the pic, no luck either. In that case, what I get, instead of a black screen at the cropping stage, is the default picture. Very weird...

Update: I answered before reading the second post. I already had tried picking the picture with other appa: OPI file explorer and QuickPick. Same result with all af them. I'll just try the app you attaches. I'll let you know if it works.

---------- Post added at 09:46 AM ---------- Previous post was at 09:27 AM ----------

Hi again,

Can you try the attached apk and see if it makes any difference in your setup?

View attachment 1025038

@ezippo: This could also make a difference for your random crashing, please try it out!

Thanks

--- edit ---

@hipher: apparently there is something wrong with your gallery app. Please also try to pick the file with some other application (like ES File Explorer) just to rule it out.

Good news: Now I see the picture!
Bad news: It keeps closing if I rotate the phone :(

Come one, you almost got it!

As I said in the previous post, If I choose pics from other source, it works. I just tried with one taken with the front camera, and it works fine (rotation included). What I don't get is why it always chooses the wrong orientation for the pictures: all the ones I try to choose are vertical but it gets them horizontal.
 
Last edited:

lowveld

Inactive Recognized Developer
Nov 13, 2008
2,185
4,757
Good news: Now I see the picture!
Bad news: It keeps closing if I rotate the phone :(

Come one, you almost got it!

As I said in the previous post, If I choose pics from other source, it works. I just tried with one taken with the front camera, and it works fine (rotation included). What I don't get is why it always chooses the wrong orientation for the pictures: all the ones I try to choose are vertical but it gets them horizontal.

Hi,

Glad we're getting somewhere... I think we have two different issues here. The picture not showing (but working underneath) was probably an ICS thing, related with hardware acceleration and your particular GPU. I think I got that one figure out.

The issue you get on rotating is an "out of memory" error in the java VM, which was the plague of UCS early versions. As I mentioned earlier, I thing the entire garbage collector when applied to bitmaps is broken on android. I keep trying to optimize the code, and do things I am not supposed to be doing to prevent it, but it's pretty much trial and error.

Let me try some more code optimizations and I'll get back to you on this (although meanwhile I'll probably release an intermediate version with the "image not showing" fix, as there are probably more people around with the same issue).

Cheers

P.S. As for the images being rotated, I'm 99% sure that is not actually my fault. UCS will show the image as it is saved, not as it is displayed by your gallery. What I mean is, when you take a picture with the phone sideways, the picture is most likely saved upright, together with information that it should be displayed on landscape. UCS is incapable of reading that information, and just displays it "as is". This is an example, but the reasoning can be applied to any incongruence between what you see on the gallery, and what actually tirns out on UCS.
 

lowveld

Inactive Recognized Developer
Nov 13, 2008
2,185
4,757
Theming guide added to post #3

Sorry it took so long. I think I got everything there, and it's not mean for the complete beginner...

Cheers
 
  • Like
Reactions: jsmccabe78

jsmccabe78

Senior Member
May 16, 2008
1,438
373
Sorry it took so long. I think I got everything there, and it's not mean for the complete beginner...

Cheers

Curious if you are thinking of developing the theming capabilities more? Mainly layout and speakerphone and possible different layouts (say some with CID showing, others not.)

Realize you have bigger fish to fry...but curious.

Cheers.
 

lowveld

Inactive Recognized Developer
Nov 13, 2008
2,185
4,757
Curious if you are thinking of developing the theming capabilities more? Mainly layout and speakerphone and possible different layouts (say some with CID showing, others not.)

Realize you have bigger fish to fry...but curious.

Cheers.

Hey,

Yes, target is to make everything I can configurable. Thinking on extending the "offset" philosophy to everything. E.g: now you can move the entire CID block around, target is to be able to change not the entire block but the individual components. Same for the buttons etc.

Also the buttons need to have their size configurable. It's a bit tricky to do these things and maintain backwards compatibility, but let's see!

Cheers
 
  • Like
Reactions: jsmccabe78

Top Liked Posts

  • There are no posts matching your filters.
  • 93
    Ultimate Call Screen HD


    HD Full Screen Caller ID, Video Caller ID, Fullscreen SMS receiver and Call Blocker. The most complete fullscreen caller ID replacement and phone toolbox on Google Play, feature leader on its class, UCS is much more than a simple call ID app with big pictures. UCS combines:

    - Fullscreen Caller ID replacement with true HD pictures of your contacts
    - Full Screen Video ID
    - FullScreen SMS notifications
    - Fullscreen SMS Browser, including threaded mode
    - Fullscreen Missed Calls notifications
    - Unprecedented theming options, including 11 free themes
    - Contact picture manager
    - Call Blocker
    - Sensor-base actions such as rejecting calls by turning the phone screen-down
    - AND configurable swipe gestures just to be sure you handle your phone any way you want to.

    As recommended on www.lifehacker.com:
    "The features of this app are almost too numerous to list, but if you use your phone to make phone calls (you know, that thing it was originally intended for), it's a must-have."


    preview_hud_c.jpgpreview_ring_c.jpgpreview_buttons_c.jpgpreview_rotary_c.jpgpreview_stab_c.jpgpreview_sms_c.jpg


    In one app, you get:
    - Choose pictures from gallery, camera or link to Facebook friends using their HD profile pictures
    - Choose Videos from your gallery to use as full screen caller ID
    - Apply pictures to contacts directly from your gallery, with the android "share" function. Just choose "Add to UCS"!
    - Answer calls with buttons, sliding buttons, rotary buttons, swipe gestures... You choose!
    - Configure your phone to hangup calls, put on speaker or mute ringer simply by turning the phone screen-down!
    - Swipe gestures (reject and answer calls, reject with sms, reply to sms, ...)
    - Fully featured Call blocker
    - Fullscreen SMS receiver
    - Fullscreen Missed Calls Notifications, with dismiss, callback and answer functions, and configurable swipe gestures
    - Complete theme support for both call and SMS screens, personalizable per contact
    - Picture syncing of HD pictures to phone internal contacts
    - Privacy Screen: hide incoming call and SMS details from prying eyes until it's safe to pick-up/read

    Advanced Features:
    - Use your current android contact picture as fullscreen caller ID (Licensed only!)
    - Selectively enable only for outgoing/incoming calls
    - Sync your android contact database to use your UCS-defined callscreen HD pictures, or batch-upload a set of pictures from your sdcard
    - Hide parts of the call screen for cleaner interface.
    - Option to make incoming SMS show above lockscreen, including turning the screen on
    - Missed calls viewer
    - You can ALWAYS go back to the default phone interface during a call, simply by pressing the phone "Back" while on a call
    - Much MUCH more! Take a look through the available settings!

    Getting Started and Important Notes
    - To use the dialpad and other in-call functions, press the "Back" button on a call to bring up the default phone interface! Due to security restrictions imposed by Google, it's impossible for me to provide a working dialer during an ongoing non-VoIP call.
    - In version V5.0.0 and upwards, the model of the free version changed due to userbase request. Almost all functions are available, but there is a personalizable contact limit.


    Market Link for Lite Version:

    https://play.google.com/store/apps/details?id=com.lowveld.ucs

    Enjoy
    9
    Changelogs

    V10.3.9
    - Lollipop compatibility


    V10.3.3
    - Improved Facebook auto-matching
    - Performance optimizations
    - Reduced memory footprint
    - Minor bug fixes

    V10.3.3
    - Polish translation. Thanks cvxcvx and TomoS!

    V10.3.0
    - Contact manager now has its own tab on Settings, including Fast Scroll and visual status indicators
    - More efficient contact lists
    - Fixed issue with default Video ID for known contacts showing even if contact was personalized
    - Fixed visibility issues on Facebook lists when using Dark UI

    V10.2.0
    - Updated UI to new light look
    - Fixed VideoID for android 4.4 devices
    - Missed Call Screen no longer deletes calls from Call Log
    - Fixed minor issues in SMS theming
    - Performance improvements

    V10.1.1
    - Fixed issue with overriding colors in SMS themes
    - Updated French translation (Thanks Loic!)
    - Performance improvements

    V10.1.0
    - Added option to block calls with hidden numbers
    - Added option to force screen full brightness on calls (find it on "Call Settings"->"Callscreen Interface"). Option is On by default, and brightness is restored when call ends.

    V10.0.0
    - Redesigned User Interface
    - New plugin to control UCS new UI animations
    - Fixed issue with Video ID keeping playing audio after answering call with Headsets
    - Fixed issue where "callback" function on new SMS notification screen was not working properly
    - Hiding button block on SMS theme no longer also hides contact name and number
    - Improved theming engine to support upcoming theme features
    - Minor fixes and optimizations

    V9.7.0
    - Added SMS Browser: fast view of all SMS, tap to go fullscreen, accessible directly from your phone app drawer
    - SMS Browser supports threaded mode (tap options to set it). When in thread mode, fullscreen viewer cycles through thread only
    - Re-designed fullscreen SMS viewer to use HUD interface, added next and previous SMS buttons, and also a "callback" function
    - Dimissing SMS, or pressing next/previous buttons mark current SMS as read
    - Re-designed app icons, and some in-app graphics
    - Fixed crash if user removed video from phone and it was being used by UCS
    - Fixed issue with multiple calls
    - Performance improvements
    - Minor bugfixes

    V9.5.1
    - Changed default interface on new installs to HUD
    - Added "Reject With SMS" button to HUD on incoming calls
    - Removed Contact Manager shortcut from phone app drawer
    - Increased possible call exit delay values to accommodate slower phones
    - Performance improvements


    V9.4.0

    - Added configurable delay on Call Screen exit to allow laggy stock interface to finish (Call Settings -> Callscreen Interface)
    - UCS now displays phone numbers formated according to your country (option to disable included in Call Settings -> Callscreen Interface)
    - Added option to manually crop facebook pictures when linking individual contacts


    V9.3.0

    - Added UCS Plugins feature: LICENSED users only!
    - "Standalone Syncer" is now a builtin plugin, several bugfixes included
    - "FindMe plugin": make your phone ring even in silence mode with a pre-defined SMS
    - "Theme Previewer Plugin": fast preview of themes on any UCS screens
    - "Phonebook Pictures Plugin": use your existing photos for non personalized contacts
    - Added some delay on call ends to give time to stock interface to exit
    - Moved Privacy Screen Settings to Settings tab
    - Themes also apply to Missed Call Screen now
    - Optimized app memory footprint
    - Minor fixes



    V9.2.0

    - Added new Heads Up Display compact call interface, custom position available
    - Added new HUD Profile
    - Added text color customization to SMS Theme Manager
    - Added option to exclude contacts from UCS
    - Themes now also apply to Privacy Screen
    - Re-designed Detailed Contact view on Contact Manager
    - Fixed issue with call answering on some phones
    - Fix contact preview wrongly applying Smart Info for non-personalized contacts


    V9.1.0

    - Added "Smart Info": for personalized known contacts, automatically hide name, number and CID block background
    - Added "Profiles" feature: one touch configuration of UCS behavior
    - Added full costumization of Ring Picker interface targets, you define what each button does
    - Added option to invert position of Answer and Decline buttons on Rotary, Sliding Tab, and Push Buttons interfaces
    - Added option to use different default pictures for unknown contacts on incoming and outgoing calls
    - Added workaround option for dual-sim phones to be able to choose sim card on outgoing calls
    - Privacy Screen now supports sensor actions (turn to mute ringer or hang up call)
    - FIX: allow USSD type messages to correctly show
    - FIX: allow notifications to be pulled down if the status bar is not hidden in call screens
    - minor bugfixes and optimizations


    V9.0.0

    - Drastic performance improvement on caller ID display: instant response
    - Re-organized existing call settings for more logical configuration
    - Optional override of theme colors for name, number and call time
    - Removed possibility of custom separate themes for unknown contacts: one default theme for everyone
    - Still possible to personalize theme differently for known and unknown contacts
    - Added option to use SMS templates for "Reject With SMS" function
    - Several rare-bugs fixes


    V8.1.0

    - Increased facebook pictures quality
    - IMPORTANT: existing users should do a "Sync Pictures Now" to improve old pictures
    - Optimized facebook "I Feel Lucky": more reliable auto-matching of contacts (Licensed only)
    - Other performance optimizations


    V8.0.0

    - Added Fullscreen Missed Calls Notifications
    - Notification screen allows swipe actions, dismiss, callback, and reply with SMS
    - Added optional on-screen "mute" button during calls
    - Added Privacy Options also to Fullscreen notifications
    - Optimizations on image handling: should solve rare issues with FC on loading or rotating pictures
    - Increased picture quality when using existing android contact pictures on ICS and above (Licensed only)
    - Increased functions on Contact Manager detailed view: click picture now offers also options to reset contact, reset facebook linking, using current internal contact picture as source, and syncing the current UCS picture to internal Android database
    - Added dedicated Un-link menu to Facebook options. Single press any facebook contact to clear association. Great for errors after using "I Feel Lucky" Option


    V7.4.0

    - Added Privacy options for both calls and SMS - check rigt-most tab on UCS settings
    - Choose to hide caller name and picture until you choose to unlock the callscreen
    - Choose to selectively hide text, or all contact details, on SMS screen until you unlock it
    - Moved Internal Phone Syncing menu to General Settings tab on UCS settings
    - FIX: issue with retrieving friend list on Facebook synchronization


    V7.3.3

    - Fixed issue with proximity sensor not turning off screen during call (SGS3 and possibly other phones)
    - Fixed wrong call duration indication on some devices
    - Fixed possible issues with unknown phone callers causing rare crashes
    - Fixed layout issue on SMS. SMS now adjusts to the presence or not of buttons.
    - Added configurable font size for calls/SMS


    V7.3.2

    - Fixed possible issue with Answer on SGS III
    - Added optional root-required methods for answering/declining calls. Should ONLY be used if you have problems with UCS, and your phone MUST be rooted.
    - Added Setup Wizard for initial configuration
    - Added option to hide UCS after answering a call
    - Increased customization of SMS screen. You can now hide the buttons, etc.
    - FIXED: Facebook authorization issues on some phones
    - FIXED: issue when choosing Ring Picker interface for German users


    V 6.2.0

    - JellyBean compatibility

    V 5.1.3

    - Fixed issue in phone syncing for ICS builds, where pictures could be assigned to wrong contacts
    - Optimized memory usage on image editing: should fix the issue for rare FCs when rotating images
    - Improved facebook picture fetching, possibly fixing rare cases where contact pictures were not being downloaded
    - Several optimizations on phone syncing code
    - Improved theming capabilities: look for new theme "Snow White"
    - Several minor bugfixes

    V 4.0.0

    - New: Reject call with SMS. Only accessible with swipe gesture, to keep the interface clean.
    - New: Ultimate SMS Screen can flip through all your SMS messages. Only accessible with swipe gesture
    - Swipe actions are now fully configurable
    - In calls, any swipe can be configured to reject, answer, reject with SMS, and default phone interface.
    - In SMS, any swipe can be configured to dismiss, reply to the SMS, view previous and view next SMS
    - Portuguese translation
    - German translation


    V 2.2.0

    - Added Rotate function to Picture Editor
    - Launch the Contact Manager directly from your app drawer
    - New option to force UCS to ignore answer/reject button presses, and only react to long presses (press and hold the button, avoids accidental pickup/hangup)
    - Licensed Users: Added capability to set different default themes, as well as independent hiding of callscreen elements, for known and unknown callers
    - Free Users: Can selectively hide callscreen elements for unknown callers only


    V 1.4.0

    - You can hide parts of the callscreen, like buttons and backgrounds.
    - You can set different default HD default pictures for Unknown contacts.
    - (Licensed) You can apply different themes per-contact. With a transparent theme and swipe gestures, you can achieve true fullscreen for selected contacts.
    - Fixed issue where UCS would sometimes not show on calls
    - Rearranged UCS preferences into sub-menus.
    - Added a "Tips and Tricks" section to preferences.

    V 1.2.4

    - fixed the issue where some people would get the status bar cover part of the caller name. There should be no fullscreen issues now.
    - When you press back on Contact Manager or Theme Manager, you will now go back to UCS Preferences (would exit UCS before)
    - Remember position on contact list: when you exit a detailed contact view, the list will start from that contact, not from the beginning. (yes, was annoying)
    - Press visual feedback on UCS buttons (change color when pressed)

    V 1.2.3
    - Option to show on-screen "set on loudspeaker" button
    - Option to show/hide status bar on lockscreen: people with problems where the status bar shows anyway, and hides part of the caller ID, set this OFF as a workaround!
    - Option to give haptic feedback (vibrate) on UCS key presses
    - FIX: Hopefully motorola people will stop having FCs when saving pictures
    - Optimized memory footprint
    - Removed unnecessary "save" option after saving an image on the editor

    V 1.2.0
    - Added theming capability, and a Theme Manager, for Licensed users only! Search for "UCS Suave theme" in google play to see it in action, and I will be doing a lot more themes in the near future.
    - Changed answer/call buttons for a more polished look.
    - Fixed issues with rare random crashes while viewing detailed contact info.

    V 1.1.0:
    - Removed restriction on editing pictures only on portrait, it now serves as simple rotate feature: turn the phone to landscape when editing pictures, and on saving, UCS will rotate the visible area to portrait. So UCS still shows exactly what you cropped and are seeing, plus it rotated the original image.
    - Fixed race condition that lead to a very "rare" FC (thanks to whoever reported the crash to google play)
    - Changed application icon


    V 1.0.1:
    - Restrict image editing and cropping to portrait mode to avoid FC until I rework it

    V 1.0.0:
    - Initial release
    7
    Theming guide

    This is a tutorial on how to build themes for UCS. You will need the Android SDK and Eclipse installed and setup.

    I provide an Eclipse project which you can use as base and example to give you a quick startup. Note that there are other ways to do this without eclipse, but I won't get into that. But it is not enough to open the apk and just drop images into there (unless you decompile it, recompile it, and sign it). Well, at least not enough to use the full power of the theming engine: you won't be able to change text size, element position, and other stuff without recompiling.

    Take the attached eclipse project and import it. (please don't ask how to do this, there are numerous tutorials on how to setup eclipse/android SDK, and that is not the purpose of this post/thread).

    Template Eclipse Project: View attachment UCS_Template_Theme.1.0.0.tar.gz

    Alternatively, here is the compiled apk from the project above: View attachment UCS_Template_Theme.1.0.0.apk

    The apk is useful if you just want to change some images, and also if you use some of the toolkits around here in xda to decompile/compile apks. In fact, you don't actually need Eclipse to completely change the template: use something like ApkManager, and just decompile the apk.

    The theming does not involve java programming, that's why it works so nice with a decompiler: no smali editing. All you need for theming is replacing drawables, and editing xml files.

    When starting, take a look at the files in:

    res/drawables/
    res/values/

    The xml files in the drawables folder point to the actual images in /res/drawable-hdpi, and those are what you want to change
    The xml files in res/values control everything from text color to element placing. Take special attention to integers.xml, I inserted comments on it to make clearer what every key does.


    Play around with this, run it with the "run as android application" command with your phone connected to your PC if you're using Eclipse. Getting the offsets just the way you wanto to can be tricky.
    When you're done, just export as signed application and share it here if you feel like it!

    Cheers
    7
    500.000 Thanks

    Hey guys,

    UCS turned 1 year old on last March 31st. What started as my mini-side-project for one of my ROMs, quickly evolved into something much much bigger. Those first couple of months were hectic. Just to give you a notion: 2 monts later, by the end of May, UCS had reached version 5.0.0, and 33 updates. Comparing the feature list on version 1.0.0 with what we have now, and specially the internals of UCS, is mind blowing.

    Today UCS has reached 500.000 downloads. Believe me when I say that not on my wildest dreams had I evert thought of reaching a number like this. I want to thank each and everyone on this thread, for all the input, ideas, and just plain selfless help so many of you provide.

    I don't consider UCS my own anymore, there's too much of you in it for that. And I thank you for that. For making UCS much more than I could ever hope to on my own.

    Cheers, and may we all be here for the 1.000.000 mark!
    6
    Why the dafault phone will always show

    Ok, it seems there's a lot of discussions about the default phone interface showing up before UCS, and some misleading information floating around. I will try to explain in detail why it is so, and why it will always be so. This will be a long explanation, with some technical information that most will not fully understand, but at least you'll have a source point to investigate from if you so wish.

    1. Android is limited regarding "outside" app developers. No matter what google tells you, or how much hype is generated about it, the truth is that app developers are limited in some circumstances, comparing to full rom developers. As I am both, trust me on this.

    2. The telephony interface (the part of Android that actually handles the calls) is not exposed in the android SDK. This means that following "proper" development guidelines, something like UCS would not even exist. There are no available classes/functions to pick up, hangup, mute calls, or any other operations regarding call handling.

    3. Using some neat tricks, prior to Gingerbread, you could pretty much go around most of these limitations. As of Android V2.3, a further check was introduced: even if you manage to call the correct interfaces, Android checks if the caller is a system app, and if not, ignores it. This is why a lot of apps stopped working as of Gingerbread.

    4. With the current set of limitations, I was able to build UCS as it is now, working from Android V2.1 to V4.0.3. Yes, It could do a lot more if I restricted it to Froyo.

    So this is why the current feature set of UCS is somewhat limited when comparing with the default phone interface on your phone. This doesn't mean that in the future I won't find a magical workaround, but from where I'm standing now, it's not looking bright. But bottom line: It is currently impossible to fully replace the default phone interface, unless building the rom from scratch, to a specific device.
    Note that the limitations to what app developers can do with the telephony interface has been a topic of complaint and frustration with google for years now. Given that they recently made it even worst with post Froyo, it's not looking as they will change it for better. In this particular area, iOS is better. I hate to admit it, but... suck it up.

    So, trust me when I say we need the default interface to perform some functions. The following point, is why UCS only comes after the default. For this, you need some Android development notions. In lay terms, when something happens, the core system sends a broadcast to all apps interested that "something" has happened. This is the only way any external app has to know that a call i coming. The problem is that it is the default interface that sends that message, and it is capable of starting much faster than other apps.

    So when UCS get's the message that a call is coming, the default interface is already showing up. Even if UCS is able to appear faster than the default, it would be pushed back when the default appears, and then bring itself back up front again. So, there's no way to hide the default interface. The only time that you won't see the default interface will be when the phone is locked. In that case the overhead of the lockscreen can make UCS fast enough to finish the boot process before anything shows.

    Another thing: root access would give me some leeway to work with, but would not remove the fundamental limitations of UCS. I could try some more stuff, but it would have to be on a per-ROM basis, which pretty much invalidates even trying to do it in UCS. UCS is having about 5000 installations a day. If I screw up a condition that happens rarely, lets say for 1% of the users, I have 50 pissed of guys every day.

    Up to know this is the default UCS behavior. UCS taking 5 seconds to show up is not normal, and indicates some sort of problem. In my setup, I never see the default interface, it only takes less than a second to go away, and unless I'm actually looking at the phone with it unlocked, it's gone by the time I pick up the phone.

    This extreme delay could be caused by something else, I'll follow this up in further posts, and leave this one for reference for further questions about this topic.

    Cheers