Related
I have a new Asus Transformer Prime & I love it. I am trying to clean up some of the unnecessary preinstalled items.
What does KeyBoxProvision.apk do?
According to Google, "KeyBoxProvision" only shows up on 3 pages on the entire net: one post noting that it was running, and two dumps which indicate it was included in a long list of things distributed in the 9.4.2.11 update. None of this includes any information about it.
KeyBoxProvision runs all the time and quickly starts back up if terminated. "Settings|Apps|All" lists KeyBoxProvision as an application. It may be "Force Stop"'d, but it soon starts back up again. The "Disable" function is unavailable. KeyBoxProvision has just about every permission available on Android. It can do just about anything on the tablet.
So, does anyone know what KeyBoxProvision does, if it's safe to get rid of it, and how one would get rid of it?
Thanks,
Stephen
I don't know off the top of my head, and I personally wouldn't remove it. Nonetheless if you are feeling adventurous:
Go into the system/app folder,
Copy the apk and odex file to another location for safe keeping.
Then delete both of them from the app folder.
It goes without saying that you are going to have to be rooted to make this happen. If you start getting errors/force closes, put them back.
Sent from my Transformer Prime TF201 using xda premium
KeyBoxProvision.apk is the service that handles OTA update checking. It's also where the issue occurs for the "serial not found" issues:
Code:
public void onCreate()
{
Log.d("KeyBoxService", "=== onCreate()");
super.onCreate();
if (hasLibrary)
{
this.thKeyBox = new HandlerThread("KeyBoxOTAThread");
this.thKeyBox.start();
this.hKeyBox = new KeyBoxHandler(this.thKeyBox.getLooper());
KeyBoxSettings.init(this);
this.mSettings = KeyBoxSettings.getInstance();
String str;
if (Build.SERIAL != null)
str = Build.SERIAL;
else
str = "unknown";
this.mClientId = str;
this.mPasscode = TextUtils.escape(AuthUtils.getPasscode(Build.SERIAL, "AsusWvDrmServer"));
}
else
{
stopSelf();
Log.e("KeyBoxService", "No library loaded, stopSelf!");
}
}
So in theory, if you remove this service all OTAs should stop. Not sure if any other app relies on this service for its functionality though (as it offers a variety of utilities; SHA1 hashing for auth, Base64 encoding, etc).
My guess is you end up bootlooping. I have no clue but I would be nervous messing with it.
Description:
Instagram – A beautiful way to share your world. It's fast, free and fun!
Pick from one of several gorgeous filtered effects to breathe a new life into your mobile photos. Transform everyday moments into works of art you'll want to share with friends and family.
Share your photos in a simple photo stream with friends to see - and follow your friends' photos with the click of a single button. Every day you open up Instagram, you'll see new photos from your closest friends, and creative people from around the world.
Features
:
☆ 100% free custom designed filters and borders
☆ Lux works its magic by making your photos more vibrant and brings out details in your photos you couldn't see before
☆ Instant sharing to Facebook, Twitter, Tumblr, and Foursquare (Flickr coming very soon)
☆ Interact with friends through giving & receiving likes and comments
☆ Works with Android versions 2.2 and above that support OpenGL ES 2
☆ Full front & back camera support
☆ And much much more...
APK is avalible here since the app isn't avalible on the market for us. Haven't tested it yet, though so I'm not sure whether it'll work at all. Will update this thread/post to confirm if it does or doesn't work.
first time i had a fc,then i reloaded and it worked,but when i loaded a photo,again fc :/
dreamkill3r said:
first time i had a fc,then i reloaded and it worked,but when i loaded a photo,again fc :/
Click to expand...
Click to collapse
Yeah, I'm getting FCs too. Looks like I'll have to keep using picplz for now, untill they add a direct upload feature.
you happen to know the path for its processed images? i want to upload one to FB but not using instagram itsel, cant find the path (is not DCIM)
arana1 said:
you happen to know the path for its processed images? i want to upload one to FB but not using instagram itsel, cant find the path (is not DCIM)
Click to expand...
Click to collapse
Not sure. In a instagram folder on your SD card possibly? I'll look in a bit.
Sent from my HTC Wildfire using xda premium
Unfortunately me too.. Getting FC when uploading a picture. This sucks.. Been waiting for this app to be available for android and yet i can not fully use it on my phone..
Yeah, mine has it too, sadly
I have those Forcing closes after choosing an image or making one, so Instagram doesn't work completely at the Wildfire
I hope some updates for the app will come with better Support for the Wildfire, so we can use it like others can.
I've been waiting so long for this, so I hope it'll be fixed soon..
tobirocker51 said:
Yeah, mine has it too, sadly
I have those Forcing closes after choosing an image or making one, so Instagram doesn't work completely at the Wildfire
I hope some updates for the app will come with better Support for the Wildfire, so we can use it like others can.
I've been waiting so long for this, so I hope it'll be fixed soon..
Click to expand...
Click to collapse
Turns out its very buggy on many lower-end android phones. I hope they work on it more to have better compatability with lower-end android phones.
Instagram have updated app,
Instagram 1.0.1 can be found HERE
GlennBrownie said:
Instagram have updated app,
Instagram 1.0.1 can be found HERE
Click to expand...
Click to collapse
Tried it on oxygen, didn't work. Can anyone try it on stock or stock-based roms?
that does not look good - I can't remember having seen this yesterday:
"Phones without OpenGL ES 2, such as the Galaxy Y or first generation HTC Wildfire, do not have the technology required to power Instagram's filters, and therefore cannot be supported."
Click to expand...
Click to collapse
Phones without OpenGL ES 2, such as the Galaxy Y or first generation HTC Wildfire, do not have the technology required to power Instagram's filters, and therefore cannot be supported.
Click to expand...
Click to collapse
Source: sorry can't post this because I am a noob user xD google for "INSTAGRAM | Supported OS & Devices" should be the first result.
I would say - no GPU, graphical processing unit - no OpenGL ES 2 right!?
greetz
scarfur said:
Source: sorry can't post this because I am a noob user xD google for "INSTAGRAM | Supported OS & Devices" should be the first result.
I would say - no GPU, graphical processing unit - no OpenGL ES 2 right!?
greetz
Click to expand...
Click to collapse
hm, don't know if I understand you right - but isn't that exactly what I've posted above (from the Instagram website).
Regarding the missing GPU I'm not absolutely sure if v. 2 is not supported at least partly because OpenGL ES-CM 1.0 is - but the missing GPU of course wouldn't produce nice results in image editing anyway (and cause too many negative side effects).
Due to the fact that our buzz is a pretty old low end device (in smartphone terms) I wouldn't expect any special treatment by Instagram.
I have no idea if that's any help, but I poked around in the .apk with dex2jar and jd-gui and don't really get why OpenGL ES 2.0 should be necessary. The only place I found references to 2.0 was in /com/instagram/android/gl/GLHelper and there we have:
Code:
int i = GLES20.glGetError();
GLES20.glBindTexture(3553, i);
GLES20.glTexParameterf(3553, 10241, 9729.0F);
GLES20.glTexParameterf(3553, 10240, 9729.0F);
GLES20.glTexParameteri(3553, 10242, 33071);
GLES20.glTexParameteri(3553, 10243, 33071);
GLES20.glTexParameterf(3553, 10241, 9729.0F);
GLES20.glTexParameterf(3553, 10240, 9729.0F);
The method signatures for these are (according to developer.android.com/reference/android/opengl/GLES20.html):
Code:
public static int glGetError ()
public static void glBindTexture (int target, int texture)
public static void glTexParameterf (int target, int pname, float param)
public static void glTexParameteri (int target, int pname, int param)
Compared to the GLES10 signatures (developer.android.com/reference/android/opengl/GLES10.html) there's no difference:
Code:
public static int glGetError ()
public static void glBindTexture (int target, int texture)
public static void glTexParameterf (int target, int pname, float param)
they seem the same, except for the missing glTexParameteri, but there's a:
Code:
public static void glTexParameterx (int target, int pname, int param)
and in GLES11 (developer.android.com/reference/android/opengl/GLES11.html) we would also have glTexParameteri:
Code:
public static void glTexParameteri (int target, int pname, int param)
I tried to modify the .apk, swapping GLES20 to GLES11, like described on code.google.com/p/dex2jar/wiki/ModifyApkWithDexTool but I got errors on the verification (even before modyfing) and I don't have much experience with android development, but maybe someone else could give it a shot.
I have no clue if that could work anyway, but if it doesn't really need GLES20 and just crashes because it tries to call things that aren't there, why wouldn't it?
Due to the fact that I haven't had any look into the instagram iPhone app I've really been curious to test it on my Wildfire. Feeling left out with GPU-less phones is not nice but I have noticed that not everyone with a more sophisticated device seems to be satisfied
http://news.sky.com/skynews/Article/201204216205464
Another one swept up by a major power.
Sent from my HTC Wildfire using xda premium
Picsart nice alternative.
MANCHESTER together UNITED forever
Well at least upload is now available, someone is bound to make an app that is more compatible.
Sent from my HTC Wildfire using Tapatalk
I use MyTubo... Nice replacement..
https://play.google.com/store/apps/details?id=com.redwolfama.pictwitter&feature=search_result&hl=en
Why settle for replacement?
Just grabbed from galaxy 3 forums, as far as I can tell works fine but at work so can't test it properly xD
Well anyway, here's the download link :
http://db.tt/yuq3rPhs
Let us know how it goes!
EDIT :
Just taken a quick snap, still FC
Sent from my HTC Wildfire using Tapatalk 2
Whenever I scan an NFC tag I created with NFC Tag Launcher it brings up a prompt that says "Open in browser" with options for OK and Cancel. However, it does not do that for tags I create in Lightflow for turning sleep on or off. Is there any way to disable this prompt?
Can't offer any help but I'm having the same problem with NFC Task Launcher.
I too get this. Not sure why. I'm on a rooted Verizon S3.
Download an app for NFC from the market first, then overwrite the default command that was stored on it. Most likely the command was to redirect you the site of the brand or seller of the tag.
nunyabiziz said:
Download an app for NFC from the market first, then overwrite the default command that was stored on it. Most likely the command was to redirect you the site of the brand or seller of the tag.
Click to expand...
Click to collapse
These are blank tags that I wrote to myself. I click OK every time and it never opens anything in the browser.
Have you verified that it was blank or have you erased the tag yet? I had the same issue with blanks that were not completely blanks.
nunyabiziz said:
Have you verified that it was blank or have you erased the tag yet? I had the same issue with blanks that were not completely blanks.
Click to expand...
Click to collapse
How can I tell if it's blank? According to NFC Tagwriter by NXP it's blank, and according to NFC TagInfo, the first two pages are read-only factory locked..
What do you have using NFC taginfo under "NDEF"?
nunyabiziz said:
What do you have using NFC taginfo under "NDEF"?
Click to expand...
Click to collapse
The blank tags have no message. One that I've written with NFC Tag Launcher has a message of the following:
Code:
WELL-KNOWN: urn:nfc:wkt:U(URI)
Identifier: 0x03("http://")
"tags.to/ntl"
MIME: ntl
enU:2:M:0,Q:-1;O:7;E:h:1__3:M:2;S:2;E:h:0
One written by lightflow has the following:
Code:
MIME: application/vnd.lightflow
SleepToggle
I would imagine the first part is what's causing it, but I don't know what there is to do about it.
EDIT: looks like that URL goes to the play store page for NFC Tag Launcher. Not sure why it's not actually opening in the browser though.
I personally use "NFC task launcher" and "erase tag" option.
---------- Post added at 09:28 PM ---------- Previous post was at 09:25 PM ----------
Sounds like you got it figured out.
nunyabiziz said:
I personally use "NFC task launcher" and "erase tag" option.
Click to expand...
Click to collapse
The issue is that I'm pretty sure it's NFC Tag Launcher that's writing the URL to it when it writes the task to the tag. I don't know what I'd do to write the tasks out to the tag otherwise.
I use NFC Task Launcher's erase function as well. As soon as the tag is written to again, this issue occurs.
jh120 said:
I use NFC Task Launcher's erase function as well. As soon as the tag is written to again, this issue occurs.
Click to expand...
Click to collapse
And did you write a task to the tag after? The NFC tag will always be detect, even blanks. It will just try to launch a unknown command.
nunyabiziz said:
And did you write a task to the tag after? The NFC tag will always be detect, even blanks. It will just try to launch a unknown command.
Click to expand...
Click to collapse
The issue is that the act of writing the task with NFC Task Launcher writes the URI to the tag. So erasing then rewriting the task accomplishes nothing.
I dont know all tags are the same size so maybe my tags are different. Im using web evolved tags and by default until erased and written to the tags will launch my browser and redirect to their site.
nunyabiziz said:
I dont know all tags are the same size so maybe my tags are different. Im using web evolved tags and by default until erased and written to the tags will launch my browser and redirect to their site.
Click to expand...
Click to collapse
Yeah, this isn't caused by anything with the tags themselves, it's just that NFC Tag Launcher adds the URI to the tag when you write out a task no matter what.
I can confirm that this happens regardless of tag type. I erased an old NFC-capable train ticket and wrote a wi-fi toggle to it. It works, but the browser dialog box still pops up.
Yeah, it's NFCTL writing that URL to the tag.
That URL is used as the intent filter and serves a few purposes. 1.) it saves space over a longer custom mime type or application specific record (which stores the package name). 2.) it directs anyone who doesn't have to the app to the play store to get it so that the tag actually does something - an application specific record does the same thing but has to store the *entire* package name (28 bytes in this case).
The way this has worked on *every* other device (and the way it should work in Android) is that the entire NDEF message hits the intent filter for that URL and the message is then delivered to the app. The app then grabs all records from the message (there are two) and parses the second record and executes those actions.
Given what the OP has sent me for some reason the Verizon S3 isn't doing this. (The international and ATT version work as expected).
Given that it's showing the chooser it's missing the specific intent filter and showing a dialog for what to do with this URL:
Code:
D/NfcService( 909): TAG: Tech [android.nfc.tech.MifareUltralight,
android.nfc.tech.NfcA, android.nfc.tech.Ndef]
D/NfcService( 909): Attempting to dispatch tag with override
D/NfcService( 909): No activities for NDEF handling of Intent {
act=android.nfc.action.NDEF_DISCOVERED dat=http://tags.to/ntl (has
extras) }
However it's still delivering the payload to NFCTL as the actions get executed (which it shouldn't do if you're getting the browser chooser dialog). It shouldn't work this way, literally. If you get the chooser it should deliver the entire payload to the chosen app (it's not).
So, what can we do here? I can add an option to use an application specific record in place of the URL. This should ensure it doesn't happen but at the cost of space - you'll lose 15+ bytes of space on the tag as a result though as it will write a separate NDEF record to the tag containing the full package name.
Is there anyone with a Verizon device this *isn't* happening for?
I could in theory get this into a release tomorrow as I'd want to have this squashed pre release.
I've been playing around quite abit with this and I have "sort of" gotten around this by use the Tasker URL Launcher.
With TUL installed along with tasker, I can use another NFC writer utility to create the url of tasker://taskname
Now if I touch the new tag without NFCTL installed I will be prompted with the "New Collected Tag" screen....unfortunately its still not an autorun but I can tap the "new tag" and the sequence fires correctly.
Obviously as previously stated the problem is the interception by the phone of the URL string used by NFCTL. Personally I have rooted and ripped out most all the Verizon bloat so I'm unsure what is left to cause this interception.
Let me know and I'll test whatever.
konman2k4 said:
I've been playing around quite abit with this and I have "sort of" gotten around this by use the Tasker URL Launcher.
With TUL installed along with tasker, I can use another NFC writer utility to create the url of tasker://taskname
Now if I touch the new tag without NFCTL installed I will be prompted with the "New Collected Tag" screen....unfortunately its still not an autorun but I can tap the "new tag" and the sequence fires correctly.
Obviously as previously stated the problem is the interception by the phone of the URL string used by NFCTL. Personally I have rooted and ripped out most all the Verizon bloat so I'm unsure what is left to cause this interception.
Let me know and I'll test whatever.
Click to expand...
Click to collapse
I may add a quick option tomorrow morning and throw a test APK up here. If the Verizon release is anything like the International and US pre-orders I suspect we'll see a lot of downloads and this is a *really* annoying thing to happen. So far Samsung takes the crown from HTC's head as the OEM making the weirdest changes.
I've found that bluetooth SMS messaging doesn't interact too well with some car head units. In particular, Chrysler/Dodge/Jeep "uconnect" systems have issues understanding SMS originators with many kitkat phones. The reason is simple: "uconnect" (and other head units, I suppose) expect bluetooth map "vcards" to have an originator phone number in a raw (unformatted) format, while AOSP kitkat puts in pretty formatted phone numbers.
Good: +12345678901
Bad: (234) 567-8901
This module resolves that little issue.
...and here's the xposed repo link: http://repo.xposed.info/module/org.garyndenise.xposed.btsmsmapfix
As for source, I just whipped this up in eclipse in windows, and I never bothered getting git working properly in windows... (I suppose I could copy this to one of my linux boxes, but I'm really too lazy.) So, I'll just paste the source below.
Licensing is simple: The method I'm replacing (and somewhat duplicating) is copyrighted by Samsung and licensed under Apache. (Standard AOSP licensing.) My modifications are PUBLIC DOMAIN, or the least restrictive possible license that is compatible with Samsung's copyright and the Apache License.
Don't expect too much support on this. I wrote it to fix an issue for my wife with her LG G2, and it just so happens that LG is using the AOSP MAP code pretty much intact. She's happy, so I consider my support contract fulfilled.
I've tested this on the G2, but not on anything running AOSP.
Code:
/* Copyrights...
*
* Portions of this file are taken from AOSP with the following copyright notice:
*
* Copyright (C) 2013 Samsung System LSI
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* The remainder of the source is released to the PUBLIC DOMAIN or to the
* least restrictive licensing allowable in order to co-exist with the
* above mentioned license.
*
*/
package org.garyndenise.xposed.btsmsmapfix;
import android.content.ContentResolver;
import android.database.Cursor;
import android.net.Uri;
import android.provider.ContactsContract;
import android.provider.ContactsContract.Contacts;
import android.provider.ContactsContract.PhoneLookup;
import de.robv.android.xposed.IXposedHookLoadPackage;
import de.robv.android.xposed.XC_MethodReplacement;
import de.robv.android.xposed.XposedBridge;
import de.robv.android.xposed.XposedHelpers;
import de.robv.android.xposed.XposedHelpers.ClassNotFoundError;
import de.robv.android.xposed.callbacks.XC_LoadPackage.LoadPackageParam;
import static de.robv.android.xposed.XposedHelpers.findAndHookMethod;
public class BTSmsMapFix implements IXposedHookLoadPackage {
public void handleLoadPackage(final LoadPackageParam lpparam) throws Throwable {
if (!lpparam.packageName.equals("com.android.bluetooth"))
return;
/*
* When bluetooth in kitkat AOSP (and LG, apparently) attempts to
* create a vCard for inclusion in a MAP bMessage, it's using the
* version 3 vcard, and supplying pretty-formatted phone numbers. For
* some MAP clients (car head units), this isn't a problem. However
* some head units (such as Chrysler "uconnect" systems) insist on
* having the phone number in raw SMS format (such as +1xxxyyyzzzz in
* the USA) and not in a more local "(xxx) yyy-zzzz" format.
*
* Intercept and replace the method used by android's BT to create a
* vCard from a phone number so that if it's an incoming vCard, use
* the older 2.1 version, and instead of pulling in all the phone
* numbers and emails for the contact, just stick the raw originator
* phone number (unformatted) into the vcard with a name.
*
*/
try {
Class<?> CBluetoothMapbMessage = XposedHelpers.findClass("com.android.bluetooth.map.BluetoothMapbMessage", lpparam.classLoader);
try {
findAndHookMethod("com.android.bluetooth.map.BluetoothMapContent",
lpparam.classLoader,
"setVCardFromPhoneNumber",
CBluetoothMapbMessage,
String.class,
boolean.class,
new XC_MethodReplacement() {
/*
* Most of the replaced method is identical to the original in
* AOSP, with the exception of if the 'incoming' flag is true.
* In that case, set the only phone number for the card as
* whatever was passed in, and leave the vcard in 2.1 format
*/
@Override
protected Object replaceHookedMethod(MethodHookParam param)
throws Throwable {
String contactId = null, contactName = null;
String[] phoneNumbers = null;
String[] emailAddresses = null;
Cursor p;
String phone = (String)param.args[1];
boolean incoming = (boolean)param.args[2];
ContentResolver mResolver = (ContentResolver) XposedHelpers.getObjectField(param.thisObject, "mResolver");
Uri uri = Uri.withAppendedPath(PhoneLookup.CONTENT_FILTER_URI,
Uri.encode(phone));
String[] projection = {Contacts._ID, Contacts.DISPLAY_NAME};
String selection = Contacts.IN_VISIBLE_GROUP + "=1";
String orderBy = Contacts._ID + " ASC";
// Get the contact _ID and name
p = mResolver.query(uri, projection, selection, null, orderBy);
if (p != null && p.getCount() >= 1) {
p.moveToFirst();
contactId = p.getString(p.getColumnIndex(Contacts._ID));
contactName = p.getString(p.getColumnIndex(Contacts.DISPLAY_NAME));
}
p.close();
// Bail out if we are unable to find a contact, based on the phone number
if (incoming || (contactId == null)) {
phoneNumbers = new String[1];
phoneNumbers[0] = phone;
XposedHelpers.callMethod(param.args[0], "addOriginator", contactName, phoneNumbers, emailAddresses);
} else {
// Fetch all contact phone numbers
p = mResolver.query(ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
new String[]{contactId},
null);
if(p != null) {
int i = 0;
phoneNumbers = new String[p.getCount()];
while (p != null && p.moveToNext()) {
String number = p.getString(
p.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
phoneNumbers[i++] = number;
}
p.close();
}
// Fetch contact e-mail addresses
p = mResolver.query(ContactsContract.CommonDataKinds.Email.CONTENT_URI, null,
ContactsContract.CommonDataKinds.Phone.CONTACT_ID + " = ?",
new String[]{contactId},
null);
if(p != null) {
int i = 0;
emailAddresses = new String[p.getCount()];
while (p != null && p.moveToNext()) {
String emailAddress = p.getString(
p.getColumnIndex(ContactsContract.CommonDataKinds.Email.ADDRESS));
emailAddresses[i++] = emailAddress;
}
p.close();
}
XposedHelpers.callMethod(param.args[0], "addRecipient", contactName, contactName, phoneNumbers, emailAddresses); // Use version 3.0 as we only have a formatted name
}
return null;
}
});
} catch (NoSuchMethodError e) {
XposedBridge.log("ERROR: Unable to find method com.android.bluetooth.map.BluetoothMapContent.setVCardFromPhoneNumber");
}
} catch (ClassNotFoundError e) {
XposedBridge.log("ERROR: unable to find class com.android.bluetooth.map.BluetoothMapbMessage");
}
}
}
Edit: This bug has been submitted to google as https://code.google.com/p/android/issues/detail?id=70160. I'd submit a full fix to them in gerrit, but I really don't want to see it ignored by google for 2 years, and then marked as "won't merge", "already fixed" or somehow ignored. Again.
As I mentioned, I wasn't able to test it on any kitkat device that is AOSP or AOSP based (cyanogenmod, omnirom, etc), so I'd appreciate any feedback on if it works on those. (For AOSP, the specific device is less important than the specific firmware name and version.)
thanks
Gary
Hi!
I tried this on my Sony z1 running 4.4.2 in the hope that it would fix the bluetooth issue that I have with my car audio system.. In that it pairs of and I get the call logs bit it will not download the phonebook to the car audio.. I tried it but it did not work.. Oh well thanks for the module anyway... Is there anything that you could suggest that could resolve this?
Regards,
Alan
nalab1 said:
In that it pairs of and I get the call logs bit it will not download the phonebook to the car audio..
Click to expand...
Click to collapse
This module could only fix the specific situation I described in the original post. The MAP code is very isolated from the phonebook code...
Not sure if there's anything I can suggest to resolve the problem your having...
Take care and good luck...
Gary
Sent from my HTC One_M8
Uconnect Fix
Does this fix the problems with only AOSP, or will it work on stock rooted devices as well? I have a 2012 Dodge with the 430N RHB. I've had messaging problems and "phone call completed" error since the 4.4.2 update. I appreciate the code, and I'm sure many others will find this post helpful as well.
garyd9 said:
This module could only fix the specific situation I described in the original post. The MAP code is very isolated from the phonebook code...
Not sure if there's anything I can suggest to resolve the problem your having...
Take care and good luck...
Gary
Sent from my HTC One_M8
Click to expand...
Click to collapse
Hi Gary,
Thanks for your reply. Shame it didn't fix my problem.. It was worth a try though, as I have tried lots of things and nothing seems to work... ts strange that Google screwed it up in 4.4.2 when it was working perfectly in 4.2.2... Perhaps the developers ought to try regression testing their code....
Regards,
Alan
nalab1 said:
strange that Google screwed it up in 4.4.2 when it was working perfectly in 4.2.2... Perhaps the developers ought to try regression testing their code....
Click to expand...
Click to collapse
Unless your using pure AOSP on your device, you can't assume that it was Google that broke it. In fact, with bluetooth code, it appears that many non-nexus (and non-AOSP) devices are running code very dissimilar to AOSP in kitkat. I was actually surprised to see that the LG G2's bluetooth module was extremely similar to AOSP.
Take care
Gary
garyd9 said:
This module could only fix the specific situation I described in the original post. The MAP code is very isolated from the phonebook code...
Not sure if there's anything I can suggest to resolve the problem your having...
Take care and good luck...
Gary
Sent from my HTC One_M8
Click to expand...
Click to collapse
garyd9 said:
Unless your using pure AOSP on your device, you can't assume that it was Google that broke it. In fact, with bluetooth code, it appears that many non-nexus (and non-AOSP) devices are running code very dissimilar to AOSP in kitkat. I was actually surprised to see that the LG G2's bluetooth module was extremely similar to AOSP.
Take care
Gary
Click to expand...
Click to collapse
The reason I said it was Google that screwed it up is that there are a lot of people having the same problems that have a Nexus 4/5 and that runs pure Google android....
Regards,
Alan
SickPhone4X said:
Does this fix the problems with only AOSP, or will it work on stock rooted devices as well? I have a 2012 Dodge with the 430N RHB. I've had messaging problems and "phone call completed" error since the 4.4.2 update. I appreciate the code, and I'm sure many others will find this post helpful as well.
Click to expand...
Click to collapse
That's a trick question. This fixes one (and only one) very specific issue on any device that's using the same code as Google has published for AOSP kitkat 4.4.2.
I have no idea whatsoever if any given device's firmware is based on AOSP or based on some other bluetooth code. (I've only confirmed that the bug exists in AOSP and the LG G2 firmware... and you didn't even mention which device you have.)
For your Dodge radio, the "SMS" support in the radio might announce something like "New SMS message from XXXX" when you get a new SMS. If the SMS came from a person you have in your contact list, "XXXX" should be replaced by that contact's name. With the bug that this fixes, "XXXX" will always be replaced with something like "unknown number" (even if the message originated from someone in your contact list.)
IF you have that issue, you can try this module to see if it resolves the problem. If the problem goes away (and it announces the proper message originator), then this applies to your device. If, on the other hand, it doesn't fix the problem, then this fix won't help you. (In that case, you'll likely see one or more errors in the xposed log and you can uninstall the module. It won't HURT anything to try it.)
Note that this module has nothing to do with phone calls, phone books, etc. It's ONLY related to SMS sender info.
Take care
Gary
Tried this on my Galaxy S5 with my Jeep 430N. No go so far, still getting "no number available" for every person.
Sent from my SM-G900V using XDA Premium 4 mobile app
thuddome said:
Tried this on my Galaxy S5 with my Jeep 430N. No go so far, still getting "no number available" for every person.
Click to expand...
Click to collapse
Can you post/attach a copy of the xposed log when this module is active? That should let me know if the module was able to hook the methods it expected or not.
thanks
Gary
garyd9 said:
Can you post/attach a copy of the xposed log when this module is active? That should let me know if the module was able to hook the methods it expected or not.
thanks
Gary
Click to expand...
Click to collapse
-----------------
May 29, 2014 3:01:05 PM UTC
Loading Xposed v54 (for Zygote)...
Running ROM 'KOT49H.G900VOYU1ANCG' with fingerprint 'Verizon/kltevzw/kltevzw:4.4.2/KOT49H/G900VOYU1ANCG:user/release-keys'
Loading modules from /data/app/mobi.xperiacle.xposed.mod.xbatterythemer-1.apk
Loading class mobi.xperiacle.xposed.mod.xbatterythemer.XMod
Loading modules from /data/app/org.garyndenise.xposed.btsmsmapfix-1.apk
Loading class org.garyndenise.xposed.btsmsmapfix.BTSmsMapFix
Loading modules from /data/app/com.botsone.higoogle-1.apk
Loading class com.botsone.higoogle.HiGoogle
Loading modules from /data/app/pl.suzume.xposed.samsungaltsymbols-1.apk
Loading class pl.suzume.xposed.samsungaltsymbols.SamsungAltSymbols
Loading modules from /data/app/com.oasisfeng.greenify-2.apk
Loading class com.oasisfeng.greenify.pro.FrameworkPatch
Loading class com.oasisfeng.greenify.pro.SettingsPatch
Loading modules from /data/app/ccc71.at.free-4.apk
Loading class ccc71.at.xposed.at_xposed_enabled
Loading class ccc71.at.xposed.at_remove_battery_icon
Loading class ccc71.at.xposed.at_remove_low_battery_warning
Loading class ccc71.at.xposed.at_apps
Loading class ccc71.at.xposed.at_fix_mnt_asec
Loading modules from /data/app/ma.wanam.xposed-7.apk
Loading class ma.wanam.xposed.Xposed
Loading modules from /data/app/com.mohammadag.xposedledcontrol-1.apk
Loading class com.mohammadag.xposedledcontrol.LedControlMod
Loading modules from /data/app/com.gertlily.xposed.touchwiz-1.apk
Loading class com.gertlily.xposed.touchwiz.ActivitySQBar
Loading modules from /data/app/com.gsamlabs.xposed.mods.enablebatterystatspermission-1.apk
Loading class com.gsamlabs.xposed.mods.enablebatterystatspermission.HookGetStatisticsMethodCall
Loading modules from /data/app/net.thinkindifferent.dataconnectioniconfix-1.apk
Loading class net.thinkindifferent.dataconnectioniconfix.DataConnectionIconFix
Loading modules from /data/app/ma.wanam.youtubeadaway-2.apk
Loading class ma.wanam.youtubeadaway.Xposed
Loading modules from /data/app/com.hunterx.pandorapatcher-1.apk
Loading class com.hunterx.pandorapatcher.Patches
Loading modules from /data/app/uk.co.villainrom.pulser.allowlongsms-1.apk
Loading class uk.co.villainrom.pulser.allowlongsms.AllowLongSMS
Hooking: android from /data/data/ccc71.at.free/xposed/at_crystal_apps
Hooking: android from /data/data/ccc71.at.free/xposed/at_sd_apps
XBatteryThemer: xbatterytheme.kmokhtar79.darkblueglass
[SamsungAltSymbols] INFO: Initializing hooks...
[SamsungAltSymbols] ERROR: com.diotek.ime.implement.view.KeyboardView#setSecondarySymbolStatus(int)#exact
[SamsungAltSymbols] INFO: Hooked succesfully!
Loaded app: com.vlingo.midas
---------- Post added at 09:10 AM ---------- Previous post was at 09:07 AM ----------
garyd9 said:
Can you post/attach a copy of the xposed log when this module is active? That should let me know if the module was able to hook the methods it expected or not.
thanks
Gary
Click to expand...
Click to collapse
I have not deleted the pair and re paired the device. Do you think that's necessary? I will try just in case.
thuddome said:
I have not deleted the pair and re paired the device. Do you think that's necessary? I will try just in case.
Click to expand...
Click to collapse
That's not needed. I don't see any error from my module, which indicates that either the bluetooth package was renamed by samsung, or that something else entirely is going on. I'll try to remember to repackage a new version with excess logging for you tonight to help diagnose the issue.
(I should warn you, however, that I'm married with kids, etc - so I might not get a chance to do it until the weekend.)
Take care
Gary
garyd9 said:
That's not needed. I don't see any error from my module, which indicates that either the bluetooth package was renamed by samsung, or that something else entirely is going on. I'll try to remember to repackage a new version with excess logging for you tonight to help diagnose the issue.
(I should warn you, however, that I'm married with kids, etc - so I might not get a chance to do it until the weekend.)
Take care
Gary
Click to expand...
Click to collapse
Thank you my friend, I completely understand. This has been going on since my S3 phone, so what's another hour, week, month... hehe :highfive:
I tried some of the bluetooth apps on playstore with no success. This has been frustrating, the Jeep radio has contact pics, etc and none of it works. I can have it read texts and use the bluetooth phone of course but nothing with contacts works.
I'm a techy (infrastructure architect), let me know if you need anything from me. Maybe I should learn some of this stuff...
BTW, Galaxy S5 Dev Edition, rooted, stock 4.4.2 image - MyGig-430N-RHB-Firmware 50.xx.xx
thuddome said:
This has been going on since my S3 phone
...
... the Jeep radio has contact pics, etc and none of it works. I can have it read texts and use the bluetooth phone of course but nothing with contacts works.
Click to expand...
Click to collapse
S3? Galaxy S3? Which version of android? (My wife had a SGS3 running the original ICS firmware and it worked perfectly for her without any mods needed.)
Your Jeep's 430 has contact pics? Now I'm really confused... This is the uconnect 430 head unit, right? I wasn't aware of ANY on-screen contact pics or even on-screen phone book for this head unit. In fact, it's always annoyed me that my wife's head unit didn't DISPLAY the phonebook, but could only be interacted with verbally...
Also, assuming it's the same uconnect 430 that I'm thinking of, if the phonebook itself isn't downloading properly to the radio (as you seem to describe) then this SMS MAP module can't work.... Even if this module sends the proper originator phone number for an SMS message, if there isn't a matching phone book entry already in the radio, then it'll always announce an unknown sender.
So, I guess we should take a couple steps backwards and re-assess the problem. First, I need to know if your phone book is even properly downloading into the radio head unit. Without that, SMS messages will always be announced as unknown (and this xposed module can't fix that.)
garyd9 said:
S3? Galaxy S3? Which version of android? (My wife had a SGS3 running the original ICS firmware and it worked perfectly for her without any mods needed.)
Your Jeep's 430 has contact pics? Now I'm really confused... This is the uconnect 430 head unit, right? I wasn't aware of ANY on-screen contact pics or even on-screen phone book for this head unit. In fact, it's always annoyed me that my wife's head unit didn't DISPLAY the phonebook, but could only be interacted with verbally...
Also, assuming it's the same uconnect 430 that I'm thinking of, if the phonebook itself isn't downloading properly to the radio (as you seem to describe) then this SMS MAP module can't work.... Even if this module sends the proper originator phone number for an SMS message, if there isn't a matching phone book entry already in the radio, then it'll always announce an unknown sender.
So, I guess we should take a couple steps backwards and re-assess the problem. First, I need to know if your phone book is even properly downloading into the radio head unit. Without that, SMS messages will always be announced as unknown (and this xposed module can't fix that.)
Click to expand...
Click to collapse
I have a 2012 Rubicon, with the 430 and the "older" Uconnect, not the new one that connects to the internet through the phone. When I pair it, it says it's downloading the phone book. I can see this if I hit the phone button right after pairing. It will say "Downloading Phone book". If I go in and have it pull up the phone book it will read me the names.... I've also tried adding favorite contacts or whatever it calls them, where the 430 has you send it contacts via bluetooth and that didn't change anything either. When I get an incoming call and the little white square pops up it will show the person's name, not sure if that's call id or from the phonebook on the 430.
When an incoming call comes in it pops up the screen (when in the phone screen) and there's what I assume is a contact picture but it just has the Jeep logo.
Let me go re-pair and manually download the phonebook and see if that makes any difference. Kind of start over from scratch, you got me thinking... that's scary
thuddome said:
I have a 2012 Rubicon, with the 430 and the "older" Uconnect, not the new one that connects to the internet through the phone.
Click to expand...
Click to collapse
I didn't even know there was a newer or older one. My wife has a 2013 Chrysler MommyMobile (town and country) with the uconnect 430 (garmin nav.)
Just so I know that we're talking about the same thing... let me know if pairing the phone is similar to what I describe: There's ZERO visual interface to this procedure and it's all done via voice commands. Even the pairing PIN number must be said verbally. It identifies each of your phones with a voice tag (which is just a recording of you identifying the phone.) Does that sound right?
In fact, here's a webpage for the system my wife has: http://www.driveuconnect.com/system/2013/chrysler/town_country/touch430nrhb/
That page has a video on the 'phone' tab that shows the pairing stuff.
thuddome said:
When an incoming call comes in it pops up the screen (when in the phone screen) and there's what I assume is a contact picture but it just has the Jeep logo.
Click to expand...
Click to collapse
I don't think it's a contact photo, but always a jeep/dodge/chrysler logo.
garyd9 said:
I didn't even know there was a newer or older one. My wife has a 2013 Chrysler MommyMobile (town and country) with the uconnect 430 (garmin nav.)
Just so I know that we're talking about the same thing... let me know if pairing the phone is similar to what I describe: There's ZERO visual interface to this procedure and it's all done via voice commands. Even the pairing PIN number must be said verbally. It identifies each of your phones with a voice tag (which is just a recording of you identifying the phone.) Does that sound right?
In fact, here's a webpage for the system my wife has: http://www.driveuconnect.com/system/2013/chrysler/town_country/touch430nrhb/
That page has a video on the 'phone' tab that shows the pairing stuff.
I don't think it's a contact photo, but always a jeep/dodge/chrysler logo.
Click to expand...
Click to collapse
Yeah that's it, on my Jeep it's a module in the center of the dash clear at the bottom under the panel with the net on it. The reason I know there's a new one is because I logged into Jeep's website one day and it had this icon the said "disconnected" and it said learn how to become connected. That took me to a page that explained that my uconnect was not connected but if I got the new uconnect it would connect to the internet through my phone. I ended up calling uconnect and they said sorry, won't work with the 430N.
So interesting thing just happened, when I wiped the phone book, pairing, everything and then re-paired it beeped on my phone for access to the contacts and call log, then a minute later beeped again for access to sms. I tried sending a text to myself and let the 430 pop up and announce, again it says "no number available". so then I created a new entry on the 430 with voice commands for myself. and repeated test, still says "no number available" so that would tell me it's how the phone is sending the number for the SMS alert. With a phonebook entry created on the 430 itself the phonebook entry would have to be in the correct format. It does provide names for callers when they call me so this seems to only be when I receive sms. Did the same thing on Galaxy S4 and I don't think my S3 would do sms to my Jeep at all. Can't remember.
thuddome said:
...it beeped on my phone for access to the contacts and call log, then a minute later beeped again for access to sms.
Click to expand...
Click to collapse
Perfectly normal. On some phones, it might actually prompt 3 times: One for the phonebook, one for call history, and a third time for message access. (On the other hand, I've seen it only prompt once in some cases.) Typically, you'll check a box that says "don't ask again" (or "remember answer" or something like that) and then tap the button allowing access.
thuddome said:
... it says "no number available"....
Click to expand...
Click to collapse
Okay, when I get home tonight, I'll try to repackage with some debugging info. I'll spam the xposed log with positive indicators when the hook is installed, and with some debug info each time the hook is called. It won't SOLVE anything, but at least it will provide some hints as to what may (or may not) be going on.
Take care
Gary
@thuddome, I've uploaded a version 1.0.debug of the module to the xposed repo. It's flagged as "Experimental" (because it can spam the xposed log.) To get it, go into the xposed installer, tap on "download", find "BTSMSMapFix" and tap it...swipe from right to left a couple times until you see the "settings" page, and change that to "experimental".
You should then be able to download the updated 1.0.debug version. After ensuring that it's selected, reboot so it takes effect, and then try again with your head unit.
Here are some key things to look for in the xposed log:
BTSmsMapFix successfully hooked setVCardFromPhoneNumber -- this means that the hook took place. If you don't see this line, it means that Samsung renamed the package from the standard "com.android.bluetooth" (which wouldn't surprise me.)
BTSmsMapFix set originator phone number to XXXXX -- You should see this after getting an incoming SMS message while your phone is connected to your head unit. "XXXXX" should be replaced with a phone number that starts "+1" (Assuming your in the US), and then 10 more digits. (If you post your log, please leave the +1 in there, but remove the rest of the phone number.)
BTSmsMapFix reverting to original code with incoming set to (true|false) -- You might see these, but hopefully not when you get a new incoming SMS.
Take care
Gary
Hey there,
I hope this question is not to special fro this forum and this place, but i don't know where i could ask elsewhere..
To the topic: for my BA i'm writing a camera app. The basic is an object detection. I tested my App with diffrent Smartphones, S2, S4, One, Tablets, the Focus was never a big problem. I just used a button which in short does a
mCamera.autoFocus(new AutoFocusCallback() {
@Override
public void onAutoFocus(boolean success, Camera camera) {
Log.i(TAG, "Focus finish " + success);
}
});
Click to expand...
Click to collapse
Thats all. But with my new One M8 that does not work. the light, the focus, I don't get the Camera to adjust itself, not in one Focus Mode, not with an Area in the middle neither with a touch area. i also tried to figure out the problem with the open source app 'open camera', which can focus and everything perfectly. I really don't have a clue what the problem is.
And the Code i mentioned above, i get no Log message at all, it seems, the camera just does not do a focus so it does not stop and triggers the callback. embedded in an try box i get no exception likewise, there does not seems to be a problem, but the camera does not focus -.-
I tried to open the front camera, but that does not support focus and i get immediately the "Focus finish" message..
And I recognize htc published a sdk for the dual camera, if that is the problem, but my app has to be available for as much devices as possible, so i can't use a 'custom sdk'..
So, does anybody know what parameters i have to set or how i can trigger the focus the right way for the M8? Thanks for every hint.
Edit:
I could not really 'fix' the problem, but i installed cyanogenmod. Now the focus works like it should. Seems to be another strange HTC software behaviour..