yashsingh1/xdaforums huggingface dataset:
[Nexus One Android Development] Wysie:
Hi all,

If you are going to say we don't need Apps2SD on the N1, please leave the thread now :P. (Actually, read on) There are various reasons I can think of why we need Apps2SD on the N1, and one of the biggest is actually Games. I don't really play any games to begin with, but the last I checked, some games are as large as 19MB, possibly more. Isn't it kind of crappy that the N1, the superphone, can't hold more than 10 such games?

I started this thread with the intention of gathering more information, and hopefully some coders will do it (including myself, if I've the time). Package Manager (the thing in charge of installing, if I'm not wrong), is in the AOSP, under frameworks/base. In such a case, wouldn't it be possible for some programmer to mod it such that it will ask you whether to install to (SD/Phone) before each installation process?

The other issue is, looking at current implementation of A2SD, it seems all apps on Phone are moved to the SD card partition. If we can have an implementation that allows both to co-exist, in addition to the Package Manager mod, I'd say we'll have a pretty nice implementation.

Your thoughts/findings? I may be completely off, have yet to actually look at the AOSP source.

Update:

@ChrisSoyars has an early implementation of this in his SnackPack - http://xdaforums.com/showthread.php?t=638301

I would also like to thank everyone else for their valuable input and support :)! Keep them coming. Lastly, sorry I'm not doing much code-wise (not at all), school work's too much :(.
[Nexus One Android Development] Domskibus:
Would be nice!

....I've got the same problem. Some application are very big and so i have got only 10MB free space anymore...
[Nexus One Android Development] lazinase:
ADB is god

See my attachment file

And...there is already a post about app2SD and this is not in the correct section...
[Nexus One Android Development] Iman07:
that doesnt work on roms like the desire by modaco. app2sd doesnt work, ive tried that method and it just hangs. true there is a thread already for app2sd, but its not going anywhere in terms of the newest desire release. i know its still early, but i only had like 50mb for apps and i have over 120 apps and i didnt feel like reinstalling. someone fix it please.
[Nexus One Android Development] Dayzee:
Apps to SD is of course necessary. The Nexus doesn't really have that much space for apps - about 190mb which is only the same as the Hero.

I have apps 2 SD working with CM 5.0.3 from the kitchen.

its also addable to a CM rom using the how to thread.

It WAS working ok with MoDaCo ROMS but for some reason has ceased to work and causes bootloops if you bake it in - shame...

I've no coding experience, but willing to test stuff out anytime.....

Dayz xx
[Nexus One Android Development] MontAlbert:
i think what Wysie is trying to do is stimulate discussion about a different way to do A2SD.

He, and a lot of people believe (including myself) that running apps from the sd makes them slower, so what he wants is like WM where when you install an app it gives you an option to install it either onthe device or on the sd. So you can choose to install your most used and apps that require speed the most on your device...

And if this isnt thread development where the hell should he have posted it? It certainly is development if you ask me. he is thinking of ways to develop a better A2SD.
[Nexus One Android Development] olearyp:
Seems like unionfs + some kind of app to manage which apps live where might work. This would require kernel support, however. You would set up /data/app and /data/app-private as union mounts of (say) /data/app-internal with /sdcard/app and /data/app-private-internal with /sdcard/app-private. You would then want a custom app management tool to move things to the appropriate places.
[Nexus One Android Development] packetlss:
Nice initative Wysie.

My suggestions are as follows:

Use a different mount point, not inside any of the other file systems.

Like /apps2sd, this makes it alot easier to handle in the recovery realm (which is what I care about).

As for handling the specific apps installed in either /data/app or /apps2sd I suggest we have a look at something simple. Like symlinking individual apps.

Ext filesystem is mounted on /apps2sd on boot.

New installs of apps are done in /data/app like normally. /data/app is not symlinked to the apps2sd directory like it is today.

If a user want a app to be stored on apps2sd instead of in /data/app a management app can just move the .apk from /data/app to /apps2sd and set up a symlink it up into /data/app again.

Simple demonstration:

Initial state, two apps installed normally:

/data/app:

SomeApp.apk

SomeOtherApp.apk

/apps2sd

<empty>

Now the user moves SomeApp to apps2sd:

/data/app

SomeApp.apk -> /apps2sd/SomeApp.apk (symlink)

SomeOtherApp.apk

/apps2sd

SomeApp.apk

If this is possible, i.e. making sure that Android doesn't bork on symlinked apps (can't see why it would, but best to make sure). This is clean simple way handle it. It gives more control on what apps are stored where, better handling of ext stuff in recovery.

Also writing scripts/apps to facilitate this is trivial since it's so simple.

What do you think? Want input especially from ROM makers.
[Nexus One Android Development] olearyp:
Okay, that's better than my idea, assuming it works. :p One disadvantage is that removing the SD card breaks all the links. You could conceivably swap cards with the unionfs approach, as long as you were not using any widgets or launcher icons which rely on APKs in the SD storage, and had a way to properly unmount the disk. Might not be worth the complexity, though.
[Nexus One Android Development] Wysie:
I think the biggest issue is with regards to removal of SD card. You guys have made it way more complex than I thought, thanks for enlightening/sharing :)!

I thought it could be as simple as simply modifying the Apps2SD script to allow apps to exist on both the sdcard and the phone, and then modifying the Package Manager to prompt the user on where to install to. Keep those thoughts/opinions coming!

If it wasn't for my school work and lousy time management i'd definitely start doing something. For now, it's good enough if all the necessary knowledge is shared here, then some dev can actually start work and put it on github or something for the rest of the community to contribute! :)
[Nexus One Android Development] ruqqq:
i haven't looked deeply into android's files. but i've worked on hacking motorola phones to engineer a packet manager system. (EZX phones)

i believe the solution that we want isn't with the use of symlink or that sort. we should aim to find a clean, programmatic way of doing it - built to the heart of android.

any idea how android am manage the apps on the phone? is there an sqlite app db or something? how does it store the installed applications information?
[Nexus One Android Development] packetlss:
Well, you have to remember that the solution should work on stuff that we do not have source access to, like people wanting to use on ported ROMs or a rooted stock ROM.
[Nexus One Android Development] rj3005:
I tried to simlink apk's but for some reason it didn't work, simlink the app directory works.

I think the best way would be to add paths in the program that actually searches/launches the apps (my guess would be that's in framework.jar)

Currently it looks in /system/app, /data/app & /data/app-private there should not be any technical reason why it couldn't look in a forth directory. this way you can keep the imporant/most used apps in the flash and large/less used on the sdcard...
[Nexus One Android Development] olearyp:
Again, this is the problem. A general technique suitable for XDA-type applications must require only root or changes to GPL code. You can't touch the framework, which can (and does) have proprietary branches.
[Nexus One Android Development] ruqqq:
i would say that we have no choice but to implement it without considering those groups. however, i do suggest that we should make the implementation compatible, just that, on modded frameworks like cyan, it works to the fullest.
[Nexus One Android Development] olearyp:
Everything old is new again. Oh well.
[Nexus One Android Development] Lox_Dev:
Unionfs is not available for android devices without kernel sources.

Concerning ported rom, I am not sure the package installer get modified by vendors. So it may be possible to implement the changes done to aosp code using baksmali.

So my two cents are:

- modify AOSP sources to have android lookup at /sd/app for apps

- modify package installer to have it asks where to install apps

Sure the removing of sdcard problem is still there. I don't know how we can ever handle a straight manual remove of it. It implies big modifications to AOSP sources to have the system aware of missing applications that have existing home shortcuts or widgets, so it "hides" them until app is back...

Anyway we can start implementing the functionality and look after for that sdcard removal problem.
[Nexus One Android Development] ctso:
I've been thinking of doing this for a while, has any progress been made?

I like the idea of modifying pm to prompt for the install location, I was thinking of just writing an app to manage that (but probably would be a good idea to have both).

If progress has been made, great, if not, I may start a fork of CM5's vendor tree for this.
[Nexus One Android Development] olearyp:
Kernel sources are the one thing you most assuredly do have on all devices, at least if they're sold where copyright law can be enforced. No one needs to risk a lawsuit by intentionally violating GPL.
[Nexus One Android Development] Lox_Dev:
Well.. it is not the case in real life.... For eg, acer Liquid kernel sources they acer provided is unusable.

Just a clue for aosp source modification:

services/java/com/android/server/PackageManagerService.java:frameworks/base/ Log.d(TAG, "Scanning app dir " + dir
[Nexus One Android Development] ctso:
Another issue (not sure if this has been mentioned already).

When installing an app via the market, it looks like the install confirmation is handled by activities within Vending.apk, so, we may need to have an option like "Market apps install to SD by default", or install to DATA by default.
[Nexus One Android Development] olearyp:
That's where I'm thinking another app to do the management (or customization of Settings) would be needed, so you could freely shift back and forth.
[Nexus One Android Development] ctso:
Keeping along the lines of hacking this into the framework, could include those options in the "Manage Applications" settings sub-menu.

Looking at the code, should be fairly straight forward to implement this in a clean fashion. I'm going to play around with UnionFS and AuFS but from what I hear, they are very slow (that was on the G1 though).

If all else fails, symlinking each app will work, though a bit messy.
[Nexus One Android Development] Wysie:
ctso: Glad to see you've decided to take charge and do something! :D If you don't mind please put the code up somewhere, I sure hope to contribute something when time allows (for now I'm all talk :().

By the way, don't mean to be rude or anything, but when I first thought of this I was only thinking about CyanogenMod (aka framework level). To make it generic enough such that it can be flashed/installed on any ROM will take too much effort, and I doubt it can be integrated or work as well. If it's at the framework level, all we have to do is release the source and I'm sure some nice stuffs can happen for all ROMs :)!
[Nexus One Android Development] ctso:
http://github.com/ctso
[Nexus One Android Development] ctso:
Yeah, but to make the user experience the best it needs to be in the framework due to the bulk of the code being there for installing packages.

Either way, its up on github and if it works out well I'll include it in OpenEclair as well. For now, I plan on releasing either an entire cooked ROM from CM5 to support this, or at least an update.zip that can be flashed to include new framework/installd/PackageInstaller (and whatever else may be required).
[Nexus One Android Development] packetlss:
Nice to see this moving forward.

I think we need to think of the problem in two parts.

One part that is the storage apps on at least two different locations. This should be versatile enough it preferably can be used without any framework changes. Preferably it should be easily maintainable with scripts and even a standalone app that can be included in ported/modified stock roms for example.

Second part, the actual management/install of apps. I think what ctso has done here is a great step forward and is what one would expect in this department on a compiled ROM. Great job.
[Nexus One Android Development] rj3005:
LOL I propose something go to bed and when I wake up it´s already coded.... that´s development speed. One question does this approach still needs ext2(3/4) partitions on the SD or is it going to work in a sub folder in the fat part of the sd? I can´t wait to test it out.
[Nexus One Android Development] rj3005:
I think add2sd can work in three forms

- symlink method in linux (like it has done until now, disadvantage it´s all or nothing)

- framework changes that makes the SD a native possible location (like ctso is doing) and how it´s done in for example symbian

- writing a home replacement+launcher+an alternative market app that also looks on the sd card for apps.

While the last option would not require root access it´s far for perfect as it would mean you will have to use that home replacement/launcher and you won´t be able to use home++,gde,sense ect... personally I much prefer the framework changes.
[Nexus One Android Development] cyanogen:
I pretty certain that no new market app is needed. All the work is done with installd and PackageManagerService.

Chris- I'll try and jump in to help after I get the OpenVPN stuff done for Eclair.
[Nexus One Android Development] packetlss:
You have any opinion/insight regarding the storage of the apps (like symlinks yes/no, new directory mount location etc)?
[Nexus One Android Development] ctso:
@cyanogen: Awesome, you have my contact info..

Right now I have it scanning /data/app-sd for additional APKs, just need to do some more framework hacks to have a "default" setting and some more cool stuff, but so far it is working very well. I believe I've got everything pushed to github, but will double check in a few mins either way.

edit: my thoughts are, stay away from symlinking when possible, as well as unionfs/aufs.
[Nexus One Android Development] TheDudeOfLife:
Yeah, I used to work with marcusmaximus back when I did roms and tried to get unionfs/aufs running...both were super painful and slow.

Are there any tests of this available out there?
[Nexus One Android Development] Amdathlonuk:
Would the implementation of this remove the 'protection' from some apps?

I.E. if you can install it to the SD card instead of the phone it will be easier to 'pass on'....:confused:
[Nexus One Android Development] mykenyc:
All you have to do is rip a apk from any phone and it will install. What i don't understand is why Google didn't do something like blackberry and use like a pin assigned to each phone that would have helped developers link that pin to a paid app. I'm curious to see what there implementation of apps2sd will be like. Unless they can use like your phone number and every time a app is loaded, it detect to see if the phone number matches your email sign in that you used to pay for an app. ::shrug shoulders:: im not developer but i guess we'll see what happens.
[Nexus One Android Development] ctso:
Should have a beta out tonight or tomorrow night, depending on how much I get done.

I can say that with the brainstorming I did with Cyanogen this morning, it's looking pretty good.
[Nexus One Android Development] REALfreaky:
I always figured the IMEI would be a good unique identifier, but we have to remember that Android is installed on a bunch of different devices (not just phones).

Anyways, "ripping" apk's is already easy enough using existing implementations of Apps2SD or just simply adb "pulling" them from /system/app. I think we should leave securing them up to AOSP for now.
[Nexus One Android Development] Amdathlonuk:
You don't even need to go that far..... a simple explorer will do it for you, if you know what to do.
[Nexus One Android Development] Wysie:
I suggest we all forget about the security stuff. Seriously, this Apps2SD thing is only going to work on a rooted phone, and on a rooted phone even the stuff in app-private is not secure, so what security are we talking about?

Let's stay focused on the basic goal: Apps2SD with a choice of location. :)
[Nexus One Android Development] olearyp:
All fair enough, and sounds quite cool, now that the project is properly scoped. :)
[Nexus One Android Development] rac2030:
Yes, this thread should just be about the implementation of a partial apps2sd an not about the security of the apps themselves because this is up to the developers.

If a dev wants a copy protection for his app he should know that he has to implement it for himself as the protection from android market is a big fail and AndroidMarket is just one of a lot of app sources.
[Nexus One Android Development] ctso:
you guys will be glad to know I have this working for the most part, will post an alpha tomorrow
[Nexus One Android Development] rj3005:
Great, will be happy to alfa test
[Nexus One Android Development] jakontil:
any news on this alpha from chris?

waiting eagerly for implementation on CM mod 5.0.4
[Nexus One Android Development] NeoS:
Same here. By the way, nice avatar! ;)
[Nexus One Android Development] Wysie:
Hi all, ctso aka ChrisSoyars has made SnackPack which contains an early implementation. You can find it here: http://xdaforums.com/showthread.php?t=638301
[Nexus One Android Development] ctso:
Also, this has just been updated to 0.2.

For now, the "selection" prompt when installing an app has been removed because it is very buggy. Seems to be coming along nicely otherwise.
[HD2 Windows Mobile 6.5 ROM Development] Fab985:
damn!!!!!!!!!!!!!! :eek::eek::eek:

change the title xmoo :D

I had a heart attack :D
[HD2 Windows Mobile 6.5 ROM Development] appelflap:
we're on to it ;)
[HD2 Windows Mobile 6.5 ROM Development] ikovac:
:) - I was happy for a sec too!
[HD2 Windows Mobile 6.5 ROM Development] Laurentius26:
Haha Xmooooooo TEASER :eek::D
[HD2 Windows Mobile 6.5 ROM Development] tids2k:
it will be available soon bro....
[HD2 Windows Mobile 6.5 ROM Development] SatScan:
But I'm waiting on the crumbs from your table

Haha,

Teaser... yeah that's the shipped version!

Grtz,
[HD2 Windows Mobile 6.5 ROM Development] skr_xd:
Coming soon........................:D
[HD2 Windows Mobile 6.5 ROM Development] kholk:
Perfectly quoting :D :D
[HD2 Windows Mobile 6.5 ROM Development] caxio:
is out search and find it
[HD2 Windows Mobile 6.5 ROM Development] xmoo:
Link up!!!
[HD2 Windows Mobile 6.5 ROM Development] Laurentius26:
Downloading......... :)

Cheers mate :)
[HD2 Windows Mobile 6.5 ROM Development] RideTheTube:
30 kbs...:D

thx
[HD2 Windows Mobile 6.5 ROM Development] neitin:
mine is 4 kbs

:D
[HD2 Windows Mobile 6.5 ROM Development] xmoo:
hahha, uploading on RS, but even the upload is crapp!!
[HD2 Windows Mobile 6.5 ROM Development] neitin:
waiting xmoo thanks you are the man

sharing is caring ! :)
[HD2 Windows Mobile 6.5 ROM Development] skr_xd:
Was about to post the link. You beat me:D

URL upload?

It don't support more than 200mb in RS.
[HD2 Windows Mobile 6.5 ROM Development] skr_xd:
Flashing the ROM now;)
[HD2 Windows Mobile 6.5 ROM Development] uiqjirka:
Maybe someone who has downloaded the file can mirror it somewhere? I have only 8 kb/s download speed.
[HD2 Windows Mobile 6.5 ROM Development] skr_xd:
First impressions,

No Hidden 1GB:D. Only 512Mb storage.

RAM asusual 576MB.

ROM is fast.

OS build 21889.5.0.87

No E-Reader tab. Only BN Ereader.

Drag & release to remove in Home quick links & Internet tabs.

Manila version 2.5.20121412.1

Asusual like other 2+ ROMs , my 16Gb microSD having issues with songs not showing up in Manila music player & coverflow in pic tab not showing images unless turned to portrait:(
[HD2 Windows Mobile 6.5 ROM Development] appelflap:
That's like ... nothing. Can it be that the htcpm.dll has something to do with the first boot screen. Because that's the only thing that imo has changed. No more "test version not for sale"..
[HD2 Windows Mobile 6.5 ROM Development] skr_xd:
It supports Landscape mode also when enabled.
[HD2 Windows Mobile 6.5 ROM Development] maw:
ok, no sense to install it then....

On another note, I emailed HTC customer support to ask them when they were coming out with the new 6.5.5 or 6.6 ROM and they answered. Looks like we'll have to wait....

Thanks for your email.

As the HD2 is currently our flagship device, I would expect an update to be available at some point. However, we have had no information on it at present, and certainly no dates. If it is currently being worked on, then there has been no announcement as yet.

I am afraid we simply do not have the information you ask for, although i would be surprised if it did not happen at some point. Obviously, in the lack of official announcements so far, this is purely speculation and should not be taken as final in any way.

I can only suggest to contact us again in a few weeks to see if we have had any update on the situation then.
[HD2 Windows Mobile 6.5 ROM Development] bpcue:
Hi Guys, I am missing something. I can only hit 3G on Vodafone UK. Its a bit slow, can someone please help with a registry tweak to get this going. I already checked settings and confirmed that HSPDA and HSUPA are enable however, the phone only connects with 3G.

Thanks
[HD2 Windows Mobile 6.5 ROM Development] the_scotsman:
Is that the only differences between 2.09 and 2.10?
[HD2 Windows Mobile 6.5 ROM Development] maw:
Yeah... I find this hard to imagine myself, especially after receiving this email from them today... they are way behind on their updates or they are waiting for the official release of 6.5.5. or 6.6. to update us with, I guess the coming weeks will reveal which update we get...
[HD2 Windows Mobile 6.5 ROM Development] fards:
I usually stick :

[-HKEY_LOCAL_MACHINE\Software\HTC\DebLogger\zone]
[-HKEY_LOCAL_MACHINE\Software\HTC\DebLogger]
[-HKEY_LOCAL_MACHINE\Software\HTC\Debug]

in my EXT/shared

but there's still some that appear to setup during first boot, I can't see where they are coming from, as even removing the deblogger manually from every rgu and reg there's still some that appear in the live rom, so it appears they are being run after that reg.

I may do a provxml to try it at some point.
[HD2 Windows Mobile 6.5 ROM Development] fards:
and htcmessaging and manilatwitter in EXT
[HD2 Windows Mobile 6.5 ROM Development] Laurentius26:
Ok one more time a friendly warning ;)
[HD2 Windows Mobile 6.5 ROM Development] the_scotsman:
Cool, thanks...
[HD2 Windows Mobile 6.5 ROM Development] HD2Owner:
german and english hd2o-2.10-test-roms online.
[HD2 Windows Mobile 6.5 ROM Development] pietrucci:
And you seem to be enjoying this ("noobs"...)
[HD2 Windows Mobile 6.5 ROM Development] skr_xd:
Mirror

http://www.megaupload.com/?d=MJPAXZIE
[HD2 Windows Mobile 6.5 ROM Development] pkoper:
Why is that?

The device to have 2.10 has not been released yet.
[HD2 Windows Mobile 6.5 ROM Development] azzabegood:
enable hspda in this rom

is there somethink i am missing as ive tried most settings and am not still not able to activate it please is there any help you could give it would be most helpfull. thanks in advance. please help me sort this
[HD2 Windows Mobile 6.5 ROM Development] donalgodon:
True, but we can be reasonably sure that the release date of this device will not coincide with an official 2.10 firmware update for everyone else to give all HD2 users some semblance of parity.

Do you think it will happen?

Secondly, there were multiple firmware steps between 1.66 and 2.10 that never saw the official light of day.