Help on multiline textviews - Android Software Development

Hi,
I'm trying to modd an app (sms app) to enable carriage return in it. I've done with with two apps successfully but this one is resisting.
Correct me if i'm wrong, but i must edit the "compose_message_activity.xml" layout, find the correct item (the text box where you write the message), and modify it's properties in order to allow multiline input in it.
Here is what i'm not sure of: How does android know which soft-keyboard must be used? Before modification, i would get the keyboard with the smiley button instead of the enter key. According to what i read, adding "android:inputType="textMultiLine"" should have the soft-keyboard showing up with the enter key instead of smileys.
Here's the modded line of code i use:
Code:
<EditText android:gravity="top" android:layout_gravity="bottom" android:id="@id/embedded_text_editor"
android:nextFocusRight="@id/send_button" android:layout_width="wrap_content" android:layout_height="fill_parent"
android:hint="@blur.res:string/compose_text_enter_hint" android:maxLines="3" android:autoText="true" android:layout_weight="1.0"
android:inputType="textMultiLine"
android:imeOptions="actionSend|flagNoEnterAction" />
Have i forgot something?
Also, this app targets froyo (API level 8). Maybe android:inputType="textMultiLine" is not supported?

Oh and by the way, removing "android:inputType="textShortMessage"" doesn't suffice to get rid of the smiley button.
Is it possible the EditText attributes in the XML file could be overidden by something in the code?

crakeron said:
Oh and by the way, removing "android:inputType="textShortMessage"" doesn't suffice to get rid of the smiley button.
Is it possible the EditText attributes in the XML file could be overidden by something in the code?
Click to expand...
Click to collapse
I would say it is being set in the code. Do a grep/search for "setInputType" in the code/smali
Pvy.

Yeah i find the code. It checks if the input type is "textShortMessage". If else then it sets it back to it ><.
I'm only having problems decompiling the code without problems. (Odexed file, proprietary framework-dependent rom...)
Motorola Defy, CM7 @ 1Ghz + CM9 multiboot
[Guide] Install double boot CM7 + CM9
[Guide][Root needed] Unsimlock your Defy
[Mod/Fix][APP]Messaging apps with ENTER button enabled!

Related

[Q] Bluetooth keyboard mapping

Hello,
I have successfully paired my stowaway Bluetooth keyboard with the GT. However I am not able to change the keymapping of the keyboard to use the German layout of the keyboard. Any ideas out there how to change the mapping?
Interesting: Under /system/use/keys... there is a Motorola bluetooth Keymap ...
First off, thanks for trying this out, haven't got around to trying my iGo stowaway keyboard, so nice to know it should work. In regards to keyboard mapping this thread may be helpful:
http://forum.xda-developers.com/showthread.php?t=799079
Thank you for the link. Theres a lot of mapping to try out I had allready been playing around with the charmap files but the description in the link is much more detailed.
if you can't get it to work properly with the work people have already done, it's pretty simple to manually edit the keymap.
1. plug in the tab and start adb shell
2. run the getevent command
3. press a key and look at the middle number that shows up. should look something like
/dev/input/event1: 0001 0073 00000001
/dev/input/event1: 0001 0073 00000000
Click to expand...
Click to collapse
I forget what the first number but the second number is the key(in this case, volume up) and the third is the state(1 down, 0 up).
4. convert the key number from hex to decimal.
5. cd /system/usr/keylayout
6. cp qwerty.kl qwerty.bak
7. exit adb shell
8. adb pull /system/usr/keylayout/qwerty.kl
9. open up qwerty.kl and look for the key that you found in decimal(not the original number).
10. edit the file and push it back to /system/usr/keylayout
if this does not work, try editing Generic.kl
Thank you for the information.
Funny thing is, that the qwerty.kcm on the GT 10.1V is not a .bin-file. It is simply editable with a Text editor:
key A {
label: 'A'
number: '2'
base: 'a'
shift, capslock: 'A'
alt: '#'
shift+alt, capslock+alt: none
}
key B {
label: 'B'
number: '2'
base: 'b'
shift, capslock: 'B'
alt: '<'
shift+alt, capslock+alt: none
... and so on.
So the first step would be to find the key number (with "keytest" or getevent), followed by changing the mapping of the keys.
I wonder if I could just add:
FN_left: 'behaviour'
FN_right: 'behaviour'
additionally.
I'm not sure exactly what you're planning on doing, but I can tell you right now that adding things to qwerty.kcm will not work. It's strange that it's not a bin file but anyway, there are many different files that use the same values as qwerty.kcm that need to be edited accordingly. Obviously in honeycomb it is a little bit different, but I know that in froyo, you needed to edit KeyEvent.java, KeycodeLabels.h, nav_keys.py, attrs.xml and Monkey.java before the values in qwerty.kcm could take effect.
That being said, you can edit the values that are already there.
I work for the android dev team at Broadcom and I found all of this out while trying to add support for the escape key on hardware keyboards. I wanted to be able to use vi on an android tablet. I did have the escape key working, but google does not allow for vendor specific key mappings so I would have had to "contribute a patch to the open source project to define those new codes" in order to "maintain a consistent set of key code definitions across all Android devices." I didn't really feel that this was worth it since most apps that require an escape key(connect bot for example) have another way of doing it.

Unlocking issue aurora 2.0

The Screen unlocks in the "slide to unlock" mode, by just a press of the "= " button. Is it a bug or a feature...? its sort of buggy for me because screen unlocks itself in my pocket. Any one please check and see if its a one-off case of my phone or general???
jy0thish said:
The Screen unlocks in the "slide to unlock" mode, by just a press of the "= " button. Is it a bug or a feature...? its sort of buggy for me because screen unlocks itself in my pocket. Any one please check and see if its a one-off case of my phone or general???
Click to expand...
Click to collapse
its a feature, you can disable it in the build.prop file, i cant remember the line sorry.
Yes It's a feature in ICS as you can slide notification bar down in locking screen.
There is these three different ways to unlock: notification bar, "settings" button and slidelock.
Thanks. But how do I disable it?
Sent from my U8800 using XDA
Use a file manager with root access, go to /system/build.prop and open it with a text editor. I recommend ES file explorer and then es text editor it comes with.
Find the line:
Code:
ro.config.hw_menu_unlockscreen=true
and change it to:
Code:
ro.config.hw_menu_unlockscreen=false
Reboot and it should no longer unlock with menu key. You can also edit it before installing latest aurora rom by editing build.prop with wordpad in windows or gedit in linux.
Sorry. I couldnt find the above lines inside build.prop.
Sent from my U8800 using XDA

[INFO][ROM] Guide to build AOSP 4.2. Builds provided for crespo and 4g 2013-02-20

Download:
Nexus S: crespo-20130220
filename: greenblue-crespo-20130220
md5sum: 3503235e1f66b0d2cfeeea43c2d1699b
sha1sum: 48c1cfbee8a226aae2ce5b5ab9fb7ad6d30339e3
Nexus S 4G: crespo4g-20130220
filename: greenblue-crespo4g-20130220.zip
md5sum: b02e36b543293a337dd3359bd68444d3
sha1sum: 7095ab401e71204532bf2866664452687866551a
Use the latest gapps for 4.2.1: 20121212
Warning: The new swipe keyboard and the gallery/camera/photosphere are not included. Stock photosphere apk will not work. It is hard coded to work on certain phones. You must use modified binaries or edit the build prop.
Steps to flash:
1. Flash the ROM and SuperSU.
2. Boot at least once before flashing Gapps. FCs may occur if you don't reboot.
3. Be patient: the phone will be laggy for the first few minutes as the phone scans for media on the built in sdcard.
4. If you have strange issues or FCs, make sure you wipe data / factory reset and reflash everything.
Important notes:
No tweaks, mods or kernel patches will be added. This is strictly a basic AOSP build.
A complete set of patches are provided on github so you can build your own ROM with your choice of modifications.
Flash your favorite AOSP based 4.1.x or 4.2.x kernel if desired. ASOP version of Matr1x and CM10 version of Marmite has been confirmed to work. Stock ROM is not as smooth as other kernels but it works.
Changelog:
20130221
Rebased on 4.2.2
20121206
Add bluetooth build cfg for fix build warning (trivial)
Bluetooth prevents deep sleep. Patch.
Crespo4g only: Fix Phone.apk force closes after a call *
Crespo4g only: Set voicemail number to own number for Nexus S 4G
Lockscreen PIN keyboard cuts off letters from number 7 and 9. Patch.
Update init.herring.rc: bluedroid has replaced system/bluetooth (trivial)
20121128
Restore original clock font size
Allow backups to Google account from Settings -> Backup & restore
Updated platform version number to 4.2.1 (cosmetic issue)
20121127
Build from 4.2.1 tree
Remove December to Contact's calendar - fixed in 4.2.1
Fix the building of Email.apk
Reduce the lockscreen clock font size
Update the FC on accessing Settings -> Storage patch
20121123
Add December to Contact's calendar
Fix FC on Daydream's clock setting
Fix alarm button in quick settings
Fix FC on accessing Settings -> Storage
Update the name, brand and model in build.prop
20121122 - Prevent lockscreen clock from getting cut off
20121120 - Added patch to fix MMS receive on crespo4g
20121119 - Initial build
Todo list:
Enable emulated storage. *
SElinux configuration.
Broken:
Nexus S 4G: Can't set voicemail number and cannot switch carrier back from Google Voice to My Carrier.
Nexus S 4G: Tethering with WiMax is troublesome at best.
Settings -> Battery does not properly show awake times in the graph. (Appears to be dependent on kernel used).
Working:
3G
4G WiMAX
Audio
Bluetooth audio
Camera
Daydream
Face unlock
GPS
Lockscreen widgets
MMS
NFC
Phone calls
SMS
Sprint system updates
Wifi
Instructions to build from source:
Code:
repo init -u git://github.com/diclusial/platform_manifest.git -b greenblue-4.2.2
repo sync
. build/envsetup.sh
lunch [model]
make otapackage
Build notes:
- All necessary patches and firmware are included in the repo.
Patches below my be out of date. Check github for changes.
The essential patches:
Add TARGET_ARCH to BoardConfigCommon
Fix camera build
Update location providers
Remove Launcher2 hardware acceleration overlay
Crespo bug fix patches
Set default backup transport to Google account
Fix clock and date/alarm display on lockscreen
Set the build prop value for version, brand, etc.
Remove redundant PRODUCT_PACKAGES for live wallpapers
Crespo4g bug fix patches
Update Mms config
Fix receiving MMS messages
Restore ability to utilize mobile/3g for tethering
Add full_crespo4g-userdebug to the lunch menu
Set default backup transport to Google account
Fix clock and date/alarm display on lockscreen
Set the build prop value for version, brand, etc.
Remove redundant PRODUCT_PACKAGES for live wallpapers
Patches to change the build process
Add support for overriding build.prop settings
Disable stock recovery
Bugs that might be fixed in future upstream releases
DeskClock: Fix Dream settings
Fix building, the product listing in build/ wants Email2
Merge "Settings: fix storage measurement for device without emulated
QuickSettings : Fix alarm intent
Hope will stable for daily using
So far so good here. My brother just got his N4 8gb today, at least we can run the same software... He already received an update.
---------- Post added at 11:51 PM ---------- Previous post was at 11:33 PM ----------
4G Works!
Bluetooth media audio working (listening to Pandora on my Moto S305 headphones)
I think we have a winner here. Using included kernel BTW.
Screenshot
Daydream works - what an awesome feature! Only problem with it is a FC when Clock setting is pressed but you can still use it as is.
Thanks for the guide,
Can you tell me how to solve Hunk#1?
I cannot understand op which related to hunk#1....:/
Code:
patching file 0s
Hunk #1 FAILED at 34.
1 out of 1 hunk FAILED -- saving rejects to file 0s.rej
it shows like this..:/
Articudos said:
Thanks for the guide,
Can you tell me how to solve Hunk#1?
I cannot understand op which related to hunk#1....:/
Code:
patching file 0s
Hunk #1 FAILED at 34.
1 out of 1 hunk FAILED -- saving rejects to file 0s.rej
it shows like this..:/
Click to expand...
Click to collapse
Which patch file are you trying to patch? What is the output of 0s.rej?
greenblue said:
Which patch file are you trying to patch? What is the output of 0s.rej?
Click to expand...
Click to collapse
001 patchfile.
0s.rej is here..same as .patchfile.
Code:
--- .repo/manifest.xml 2012-11-19 00:34:09.716145171 -0800
+++ .repo/manifest.xml 2012-11-16 15:00:40.058124761 -0800
@@ -34,6 +34,8 @@
<project path="device/lge/mako" name="device/lge/mako" groups="device" />
<project path="device/lge/mako-kernel" name="device/lge/mako-kernel" groups="device" />
<project path="device/sample" name="device/sample" />
+ <project path="device/samsung/crespo" name="device/samsung/crespo" groups="device" revision="refs/tags/android-4.1.2_r1" />
+ <project path="device/samsung/crespo4g" name="device/samsung/crespo4g" groups="device" revision="refs/tags/android-4.1.2_r1" />
<project path="device/samsung/maguro" name="device/samsung/maguro" groups="device" />
<project path="device/samsung/manta" name="device/samsung/manta" groups="device" />
<project path="device/samsung/toro" name="device/samsung/toro" groups="device" />
Nick N said:
Daydream works - what an awesome feature! Only problem with it is a FC when Clock setting is pressed but you can still use it as is.
Click to expand...
Click to collapse
Can't duplicate the problem. Only thing I can think of is that AOSP by default includes DeskClock.apk. The GAPPS I linked contains a DeskClockGoogle.apk so there might be a conflict.
Things to try:
1. Use adb to delete the existing DeskClock apk file inside /system/app and then copy the DeskClock.apk from the AOSP rom.
2. Use adb to delete the existing DeskClock apk file inside /system/app and then copy the DeskClockGoogle.apk from the GAPPS.
3. Uninstall the existing DeskClock with Titanium Backup. Try to install DeskClock or DeskClockGoogle one at a time a regular app (non system app).
Articudos said:
001 patchfile.
0s.rej is here..same as .patchfile.
Code:
--- .repo/manifest.xml 2012-11-19 00:34:09.716145171 -0800
+++ .repo/manifest.xml 2012-11-16 15:00:40.058124761 -0800
@@ -34,6 +34,8 @@
<project path="device/lge/mako" name="device/lge/mako" groups="device" />
<project path="device/lge/mako-kernel" name="device/lge/mako-kernel" groups="device" />
<project path="device/sample" name="device/sample" />
+ <project path="device/samsung/crespo" name="device/samsung/crespo" groups="device" revision="refs/tags/android-4.1.2_r1" />
+ <project path="device/samsung/crespo4g" name="device/samsung/crespo4g" groups="device" revision="refs/tags/android-4.1.2_r1" />
<project path="device/samsung/maguro" name="device/samsung/maguro" groups="device" />
<project path="device/samsung/manta" name="device/samsung/manta" groups="device" />
<project path="device/samsung/toro" name="device/samsung/toro" groups="device" />
Click to expand...
Click to collapse
Are you inside of the directory where you initialized the repo? Might be easier to just manually edit .repo/manifest.xml to add those two required lines. Are you trying to build it for crespo?
greenblue said:
Are you inside of the directory where you initialized the repo? Might be easier to just manually edit .repo/manifest.xml to add those two required lines. Are you trying to build it for crespo?
Click to expand...
Click to collapse
Yeah, crespo..
I downloaded in ~/ , and moved whole file to ~/crespo_4.2/ .
It can cause problem..?
Articudos said:
Yeah, crespo..
I downloaded in ~/ , and moved whole file to ~/crespo_4.2/ .
It can cause problem..?
Click to expand...
Click to collapse
So you created a git repo inside ~/, successfully synced, and then you moved all the contents to crespo_4.2? This is seperate from the download. You need to sync a few gigabytes of aosp code first.
greenblue said:
So you created a git repo inside ~/, successfully synced, and then you moved all the contents to crespo_4.2? This is seperate from the download. You need to sync a few gigabytes of aosp code first.
Click to expand...
Click to collapse
Aha, OK. It was first time using linux
I'll try it again and post result here!
BTW, There is way to sync in ~/crespo_4.2/ , not ~/ ?
edit: Success!
Articudos said:
BTW, There is way to sync in ~/crespo_4.2/ , not ~/ ?
Click to expand...
Click to collapse
Move ~/.repo to ~/crespo_4.2 and then sync. If you are using a file manager, you have to set it to show hidden files first.
greenblue said:
Move ~/.repo to ~/crespo_4.2 and then sync. If you are using a file manager, you have to set it to show hidden files first.
Click to expand...
Click to collapse
It worked!
About patch 004 and 005,
Do I have to modify it for crespo GSM?
nice try articudos i thing you can make a good rom for us
leap_ahead said:
nice try articudos i thing you can make a good rom for us
Click to expand...
Click to collapse
Yeah, I'm learning sth now..
Articudos said:
Yeah, I'm learning sth now..
Click to expand...
Click to collapse
continue that good job
Articudos said:
About patch 004 and 005,
Do I have to modify it for crespo GSM?
Click to expand...
Click to collapse
For 004, it does not exist in the cyanogenmod tree so it is unlikely to be needed.
For 005, it has already been done by default for crespo.
Sorry for bothering you... How can I apply step6 to crespo?
Second question,
If 4.2.1 source releases, how can I update source w/o losing my commits?
Sent from my Nexus S using Tapatalk 2

[Q] "pm disable" - Where's it store the list?

I know of three ways to disable/freeze unwanted apps:
Using the command pm disable PACKAGE_OR_COMPONENT
Titanium Backup Pro
Disable the app through the built-in Application Manager (does not work for all apps)
Here's some details I could find about pm disable: http://www.kpbird.com/2013/05/android-shell-command-pm-package-manager.html
But my question to the community: When an app is disabled/frozen by any of these methods, what keeps track of these? Where is this data stored?
If nobody can answer my question above, then I have a different question: Are there any apps/commands that would allow you to view/log filesystem changes on-the-fly? (goal with this: start this "watcher" app, then disable an app using pm, and figure out what changed).
Thanks!
I found it! After quite some time grepping around, I found that the list of enabled/disabled apps is located here:
/data/system/users/0/package-restrictions.xml
Now, all I need to do is find a way to update this file in bash, without relying on any external programs. I plan to make a flashable zip to run a simple script that searches for each of the following three lines:
Code:
<pkg name="com.wssyncmldm" enabled="1" />
<pkg name="com.LocalFota" enabled="1" />
<pkg name="com.sec.android.fwupgrade" enabled="1" />
And updates each to a "2".
If any of the three lines are not found, the script should add them near the end of the file, on new lines immediately before this one:
Code:
<preferred-activities />
One more thing: it's possible that a person might have multiple user accounts on their phone (seems rare...), there could be other package-restrictions.xml files in other directories (maybe a /data/system/users/1/ or example). It would be ideal if the script could search for other user accounts and make the same modifications.
Any scripting-heroes willing to make this up for me??
BTW: the point/purpose of this is to disable the OTA updates from a flashable zip, in a custom recovery, without requiring a rooted system.
Aou said:
I found it! After quite some time grepping around, I found that the list of enabled/disabled apps is located here:
/data/system/users/0/package-restrictions.xml
Now, all I need to do is find a way to update this file in bash, without relying on any external programs. I plan to make a flashable zip to run a simple script that searches for each of the following three lines:
Code:
<pkg name="com.wssyncmldm" enabled="1" />
<pkg name="com.LocalFota" enabled="1" />
<pkg name="com.sec.android.fwupgrade" enabled="1" />
And updates each to a "2".
If any of the three lines are not found, the script should add them near the end of the file, on new lines immediately before this one:
Code:
<preferred-activities />
One more thing: it's possible that a person might have multiple user accounts on their phone (seems rare...), there could be other package-restrictions.xml files in other directories (maybe a /data/system/users/1/ or example). It would be ideal if the script could search for other user accounts and make the same modifications.
Any scripting-heroes willing to make this up for me??
BTW: the point/purpose of this is to disable the OTA updates from a flashable zip, in a custom recovery, without requiring a rooted system.
Click to expand...
Click to collapse
I could probably make a flashable zip that replaces package-restrictions.xml with a modified version that disables OTA
do you have that file?
the bash script looking for and replacing lines is not possible AFAIK via recovery.
jetlitheone said:
I could probably make a flashable zip that replaces package-restrictions.xml with a modified version that disables OTA
do you have that file?
the bash script looking for and replacing lines is not possible AFAIK via recovery.
Click to expand...
Click to collapse
Well, I've done this sort of thing in MS-DOS batch, using For loops (reading the file, line-by-line and processing it). I'll have to look into the bash equivalent.
Also, simply replacing the file is far too dangerous. If any entries in that file mismatch what's installed on the system, the device will not boot properly (TouchWiz launcher will not load, for one). Every time you enable/disable an app, the entire file shifts around and changes. It's a nightmare. But dealing with it line-by-line would be feasible...
Aou said:
Well, I've done this sort of thing in MS-DOS batch, using For loops (reading the file, line-by-line and processing it). I'll have to look into the bash equivalent.
Also, simply replacing the file is far too dangerous. If any entries in that file mismatch what's installed on the system, the device will not boot properly (TouchWiz launcher will not load, for one). Every time you enable/disable an app, the entire file shifts around and changes. It's a nightmare. But dealing with it line-by-line would be feasible...
Click to expand...
Click to collapse
Yeah I know what you mean I don't know it might be possible. Only thing I know of is applications that run bash scripts on boot up. But not of running one via a flashable zip in recovery
Sent from my SGH-I337 using Tapatalk 4 Beta
Based on some of the flashable zips out there, I think it's possible to use busybox to execute a bash script. I came up with a little bit of crappy psuedocode for what needs to happen:
Code:
set foundFlag = 0
if (file exists: /system/app/<app>.apk) do:
for (each line of package-restrictions.xml) do:
if ( line = <pkg name="com.wssyncmldm" enabled="1" /> ) do:
echo <pkg name="com.wssyncmldm" enabled="2" /> into newfile
set foundFlag = 1
else do:
echo line into newfile
end if
end for
if (foundFlag != 1) do:
for (each line of package-restrictions.xml) do:
if ( line = <preferred-activities /> ) do:
echo <pkg name="com.wssyncmldm" enabled="2" /> into newfile
echo <preferred-activities /> into newfile
else do:
echo line into newfile
end if
end for
end if
move newfile -> package-restrictions.xml
end if
The above would need to be repeated 3 times for the 3 apk's that need to be disabled.
.

[Q] launcher 8 - can't set as default launcher

Hi there,
I've posted this already in the launcher 8 thread, but I guess it should've gone here from the start since it's a very specific nook question, so here goes:
I've rooted my nook and am running launcher 8 now, I am on 1.5.2 right now but I've tried newer versions too which still work with the old android system running on the nook. The latest 2.6 and 3.0 versions do not work.
I've ran into a problem though: I don't seem to be able to choose launcher 8 as the default launcher when I press the home button.
Is there anything I can do to solve this?
Some pictures attached just to make clear what my problem actually is.
schelleursli said:
Hi there,
I've posted this already in the launcher 8 thread, but I guess it should've gone here from the start since it's a very specific nook question, so here goes:
I've rooted my nook and am running launcher 8 now, I am on 1.5.2 right now but I've tried newer versions too which still work with the old android system running on the nook. The latest 2.6 and 3.0 versions do not work.
I've ran into a problem though: I don't seem to be able to choose launcher 8 as the default launcher when I press the home button.
Is there anything I can do to solve this?
Some pictures attached just to make clear what my problem actually is.
Click to expand...
Click to collapse
It appears from the photographs that your Nook is not recognizing Launcher8 as a launcher app, but instead as a regular app. Are you able to view Launcher8 from ReLaunch's app drawer?
Thanks for the reply, I guess you mean the "All applications" bit in ReLaunch? Then yes, it's there, thats how I start it at the moment.
I've already tried fiddling with the AndroidManifest.xml but I really don't know what I'm doing.
schelleursli said:
Thanks for the reply, I guess you mean the "All applications" bit in ReLaunch? Then yes, it's there, thats how I start it at the moment.
I've already tried fiddling with the AndroidManifest.xml but I really don't know what I'm doing.
Click to expand...
Click to collapse
Yes, "All applications" is ReLaunch's app drawer.
I don't know exactly how to fix this, but let me do some research, and I'll get back to you.
Check the intent-filter's in AndroidManifest.xml
You probably should see something like this:
Code:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
You can also try through ADB shell:
Code:
am start -a android.intent.action.MAIN -c android.intent.category.HOME
and see what happens.
Renate NST said:
Check the intent-filter's in AndroidManifest.xml
You probably should see something like this:
Code:
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.HOME" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
You can also try through ADB shell:
Code:
am start -a android.intent.action.MAIN -c android.intent.category.HOME
and see what happens.
Click to expand...
Click to collapse
Thanks for that, I've tried fiddling with the Manifest but I always either get a non working application with an entry in the Home menu or a working application with no entry in the Home menu to choose as default.
If you feel like having a look, this is the default manifest that is in use by launcher 8: pastebin.com/K8BknQuk (I'm not allowed to post links yet)
I do not have the android sdk installed or anything prepared to run ADB on my nook, I'll look into that at some point if the manifest fiddling doesn't work out.
The AndroidManifest.xml looks fine, which is to be expected.
Maybe you "picked" the wrong application at some point?
That's all in /data/system/packages.xml
Check preferred-activities in there.
You can always delete that whole section, as long as you do it cleanly.
Thanks for the continued help. I've had a look at packages.xml preferred-activities looks like this:
Code:
<preferred-activities>
<item name="com.lx.launcher8/.AnallLauncher" match="100000" set="4">
<set name="com.bn.nook.home/.HomeActivity" />
<set name="com.lx.launcher8/.AnallLauncher" />
<set name="com.lx.launcher8/.Home" />
<set name="com.harasoft.relaunch/.Home" />
<filter>
<action name="android.intent.action.MAIN" />
<cat name="android.intent.category.HOME" />
<cat name="android.intent.category.DEFAULT" />
</filter>
</item>
</preferred-activities>
I can turn off my nook and turn it on again then launcher 8 starts by default, but if I press the "n" button on the nook and then press home on the touch-screen I still only get the choice between ReLaunch and the default nook Home. I've also tried completely resetting my device restoring an old unrooted backup then root it again and set it up from scratch, same problem.
I don't have my nook with me (lost it a few days ago) but I seems to remember seeing a nook manager app that can help program what buttons do what, including the N button. You may have to lose the pop up home/library/shop/search/glowlight/setting thing (you could delegate that function to long press N if you want.) but the app should properly program the N button to start up the launcher 8. I THINK it's the Nook Color Tool? I remember the appropriate app came with the 1337 ROM.
Deafcyclist said:
I don't have my nook with me (lost it a few days ago) but I seems to remember seeing a nook manager app that can help program what buttons do what, including the N button. You may have to lose the pop up home/library/shop/search/glowlight/setting thing (you could delegate that function to long press N if you want.) but the app should properly program the N button to start up the launcher 8. I THINK it's the Nook Color Tool? I remember the appropriate app came with the 1337 ROM.
Click to expand...
Click to collapse
Yep, that's Nook Touch Mod Manager. It comes pre-installed with NookManager and my 1337 ROM, but it can also be installed manually with some modified framework-related .jar files.
Thanks for the tip, sounds like a good workaround for now.
edit: I see I need a running build environment for that, will see if I can get this to work on my virtual machine.
edit2: got it working
Oh, the "n" button?
B&N has that hardwired to do some B&N specific intent.
This problem has been solved many different ways.
My solution is to patch where the problem is, com.android.internal.policy.impl.PhoneWindowManager (in android.policy.jar).
This just makes the "n" key a normal Home key.
Code:
apktool d android.policy.jar -o C:\AP
mergesmali /v C:\AP PhoneWindowManager.smali PhoneWindowManager$HomeButtonHandler.smali
apktool b C:\AP -o android.policy.jar
Check the mergesmali link in the signature, a zip of the patches is there too.
No it was the "Home" menu button you open by pressing the "n" button. But with Nook Touch Mod Manager I've managed to change the behaviour of said "Home" even though Launcher 8 still wasn't shown as a choice. Thanks for all the help.

Categories

Resources