Google Now for ARMv6 [TROUBLESHOOTING]

YoshinJaa

Well-known member
Mar 6, 2012
126
29
0
Visit site
Lenny_kano, over at XDA Developers has found a way to get Google Now (velvet.apk) to properly work on any ARMv7 device. Voice search (with the new robust voice talkback) and text search fully works 100% with some users reporting very minor errors in terms of some things not working correctly or not working automatically. Well it has been pretty much stated that his package only works for ARMv7 and I was wondering if the awesome devs here on this forum would lend a hand in attempting to get this to work across ARMv6 devices, such as our Optimus V.

Lenny_kano stated he perform smali edits on the apk after decompiling it and had updated code to work with some of ICS mic and audio sources (I am not 100% fully what he had edited). He stated he also was not pursuing to fix it for ARMv6 so this is where I was wondering if anyone would be interested in taking his work and getting it compatible for our phones.

In the case of the 22MB en-US offline recognition folder(system/usr/srec) which is located in the LennoxPackage below, I was able to symlink the folder from /sd-ext/system/usr/srec to /system/usr/srec after removing the original srec folder from /system. The symbolic linked folder then appeared under /system/usr/srec and I even went to see if the offline recognition pack was being identified as installed, and it was (by creating a shortcut of the greco.languagepack activity). This way this massive folder fit our devices technically, since we have low system storage.

Feel free to comment an share your thoughts on hopefully getting this to work like it is on ARMv7!


XDA Thread Link: Google Now for ICS Project

YOU MUST BE ON ICS (Ice Cream Sandwich-Android 4.0) OR HIGHER TO ATTEMPT THIS!!!!

Flashable Installation (via recovery) (updated 8/15/2012)
Download either the offline pack or online only recognition pack
Google Now Flashable with Offline Recognition-Mikey v6 (36.4MB)
Google Now Flashable with Online Recognition Only-Mikey v6 (14.01MB)
post courtesy of XDA user, cajunflavoredbob, zip file made by Mikeyxda
You do not need to wipe cache/dalvik to flash either zip. You may however want to flash this with a newly flashed ROM, after flashing the ROM and gapps. Flashing either zip will not entirely place all files into /system due to low available system memory. So flash first, symlink the /srec folder, and double check for any missing files before attempting to post errors!

Manual Installation (via file explorer with root access) (updated 8/2/2012):
Download the following:
1.Lennox Package (.zip): Full installation package (THIS IS NOT FLASHABLE)
After downloading this, download his newest velvet.apk and replace this apk in the lennox package in the app/ folder
2.Velvet2.apk: Velvet2.apk
3.Delete or change GoogleQuickSearchBox.apk in /system/app to GoogleQuickSearchBox.bak
4.Copy over the entire Lennox Package folder to your sdcard.
5.Copy GoogleTTS.apk, voicesearchstub.apk, and velvet2.apk(does not need to be renamed) into /system/app and set permissions for each to -rw-r-r (using your file explorer)
6.Copy all .so files from the lib folder to /system/lib and set permissions for each to -rw-r-r
7.Go to /system/usr/srec and copy it to either your /sdcard or to /sd-ext and rename it to oldsrec (or whatever)
8.Go to /sd-ext. Create a 'system' folder. Then copy from the lennox package the /usr folder into /sd-ext/system.

This last step is for if you want to symlink the sd-ext/system/usr/srec folder to /system/usr/srec (which in most OV ICS roms there is not enough system storage to place the entire folder into)
9. I used terminal emulator for this last step. You can use adb but I am unsure about the entire steps. Enter the following (You must be ROOTED):
Code:
su
rm -rf /system/usr/srec
ln -s /sd-ext/system/usr/srec /system/usr/srec
10.Go to /system/usr/srec and you should have 2 folders showing up. One being /config another being /en-US if done correctly.
11.Reboot and test

Current App State(Mikeyv6 flashables) (as of 8/15/2012)
Currently, you can enter the app via the 'Google' icon on the search bar and can complete the first time setup. Afterwards, the app force closes either using 'Google' icon, opening the 'Google' app, or using the mic icon.

I am not responsible if this damages or bricks your phone. The steps I have provided were steps that I have taken before this post.
 
Last edited:

YoshinJaa

Well-known member
Mar 6, 2012
126
29
0
Visit site
I noticed when I pressed the mic button on the default android keyboard that it actually allows you to voice type. It plays a sound first, then proceeds to listen to your voice. It does not stop listening after you stop speaking, I had to press the red mic button to get it to stop. Afterwards, it loads, then by pressing the keyboard button it displays the speech-to-text into the input field.

My findings seem to show that in terms of microphone streams, it can listen, there may be some sort of display problem conflicting with it (which may be the reason behind the white screens when pressing 'Google' or the Mic button on the search bar). Also, after doing this about 2-3 times, anytime I try to type text via the keyboard, voice typing would immediately start on its own. It would play the same listening sound, but I could not see the red mic on the screen.
 

andrewnelson23

Well-known member
Apr 18, 2012
795
145
0
Visit site
what's the current status of this? what all of google now is working and what is not working for our armv6 devices? the op is confusing...
 

YoshinJaa

Well-known member
Mar 6, 2012
126
29
0
Visit site
what's the current status of this? what all of google now is working and what is not working for our armv6 devices? the op is confusing...

The status of this with ARMv6 is that it is very buggy. As stated when I attempted to voice type, it works in that way, but very rarely does it actually display on screen, it usually freezes the phone for a few seconds then resumes. I believe that one of the issues ARMv6 is having is properly displaying the app as it sounds to receive voice, but usually never actually shows up on the screen and just times out.

A user over on the Google Now for ICS Project XDA thread has uploaded 2 separate, flashable zips. One being with offline voice dictation, the other with online only dictation. The online only should fit OVs with a little minor cleanup to system storage. The OP will be updated shortly with links to these, for easier installation. I have not tried these yet by the way.

@Zakman, I no longer have Voice Search that was installed with gapps on my phone. It was reported that the older voice search was not needed for this, as it has its own methods. The Voice Search for Google Now app is also not needed, because it simply uses old voice search to input speech-to-text to Google Now. The newer apk has code integrated that makes it obsolete.
 

nitestalkr

Well-known member
Mar 23, 2011
889
261
0
Visit site
So, basically as long as we have a large enough sd-ext, we can "work around" all issues with not having enough internal space?
If that's the case, then I'm definitely ordering a class 10 64GB micoSDXC card. And yes, that card is compatible, as long as its reformatted to FAT32 or NTFS.
And yes, I'm going to be one of those guys that is going to get the 2TB microSDXC card once its available, and use it with my Optimus V, no matter how ridiculous that is. :p

sent from my un-dead sammich.
 

A-android-B

Well-known member
Mar 30, 2012
414
21
0
Visit site
42570792-6bdd-1e8c.jpg
that's with twenty apps total installed. Ics roms use the sd ext natively it seems like

Sent from my LG-VM670 using Android Central Forums
 

nitestalkr

Well-known member
Mar 23, 2011
889
261
0
Visit site
Click to view quoted image
that's with twenty apps total installed. Ics roms use the sd ext natively it seems like

Sent from my LG-VM670 using Android Central Forums

Actually they don't.
Quattrimus AOKP & CM9 do, and I'm pretty sure Bobz ICS does too.
But ICS natively uses only internal storage.
Scripts were added to the ICS roms for these phones, due to small internal storage space.

sent from my un-dead sammich.
 
  • Like
Reactions: A-android-B

YoshinJaa

Well-known member
Mar 6, 2012
126
29
0
Visit site
Two things.
1. the flashable links are broken.
2. does the offline voice dictation actually work?

I'll update the links later today to the up to date zips.
Since Google Now uses ARMv7 instructions, I highly doubt it will ever work on our phones without modifying at the source level. With that being said, dictation should work on its own, but there is no real way to determine how functional it is while the app currently force closes.

Sent from my Optimus V via Tapatalk
 

nitestalkr

Well-known member
Mar 23, 2011
889
261
0
Visit site
I'll update the links later today to the up to date zips.
Since Google Now uses ARMv7 instructions, I highly doubt it will ever work on our phones without modifying at the source level. With that being said, dictation should work on its own, but there is no real way to determine how functional it is while the app currently force closes.

Sent from my Optimus V via Tapatalk

Anthony discovered why its force closing, its a missing .so lib. Maybe if it were implemented into a rom, then it might work?

sent from my Zom-"Bean'(CM10 JellyBean).
 

YoshinJaa

Well-known member
Mar 6, 2012
126
29
0
Visit site
Anthony discovered why its force closing, its a missing .so lib. Maybe if it were implemented into a rom, then it might work?

sent from my Zom-"Bean'(CM10 JellyBean).

The .so lib files needed to run it are apparently libgoogle_recognizer_jni.so, libpatts_engine_jni_api.so, libspeexwrapper.so, and libvorbisencoder.so. All from JB dump. I have tried adding all of these to system/lib with fixed permissions and it still fc's. I believe that GoogleTTS.apk is also needed as well with fixed perms.

Maybe the issue lies in AMR encoder as well?

Sent from my Optimus V via Tapatalk
 

Forum statistics

Threads
942,989
Messages
6,916,765
Members
3,158,762
Latest member
trudycharles