[Mono-bugs] [Bug 654559] Assembly.Location only returns the name

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Thu Nov 18 11:17:44 EST 2010



Jonathan Pryor <jpryor at novell.com> changed:

           What    |Removed                     |Added
             Status|NEW                         |RESOLVED
                 CC|                            |jpryor at novell.com
         Resolution|                            |WONTFIX

--- Comment #1 from Jonathan Pryor <jpryor at novell.com> 2010-11-18 16:17:43 UTC ---
As of Preview 7, there is no Assembly location:



  Assemblies are now stored uncompressed within the .apk and loaded 
  from the .apk during app startup.

For the more technically inclined, this is done via open(2), mmap(2), and

In short, there is no directory to return, as the assemblies to not exist as
distinct filesystem entries.

My guess is that you want the assembly location in order to follow:


and use assembly-relative filesystem paths.  This cannot work on Android, as
you (the developer) do not fully control the app's directory layout.  For
example, files you create should be $APPDIR/files or $APPDIR/cache (etc.), BUT
the actual value of "files" or "cache" is UNDOCUMENTED; you get these via e.g.
ContextWrapper.FilesDir [0] or ContextWrapper.CacheDir [1], and the actual
filesystem name could change at ~any time (especially considering that any
hardware manufacturer could change these values at will...).

Add to that the fact that you can't have files extracted at install time (that
I could find, and I looked a lot), and things get annoying, fast.

So, we theoretically could modify Assembly.Location to return the assembly name
encoded within the .apk, e.g.
"/data/app/YOUR.APP-1.apk#assemblies/mscorlib.dll", but because of the above I
don't see how this would be at all useful, as you'd need
/data/data/YOUR.APP/... for actually useful filesystem paths, and the subdir
names could be different, and modifying Assembly.Location may not actually be


Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.

More information about the mono-bugs mailing list