https://bugzilla.novell.com/show_bug.cgi?id=665714

https://bugzilla.novell.com/show_bug.cgi?id=665714#c1


Jonathan Pryor <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
                 CC|                            |[email protected]
         Resolution|                            |WONTFIX

--- Comment #1 from Jonathan Pryor <[email protected]> 2011-01-20 04:08:18 UTC 
---
First of all, the auto-generated /manifest/@package value should be
mydroidapp.mydroidapp (all lowercase), because (1) mixed case makes the
filesystem gods cry and (2) aapt requires that a '.' be in the name.  I suspect
(2) is what's really killing you, because your namespace doesn't contain any
periods (it's just MyDroidApp), and thus isn't a suitable Android package name.

If you want to provide a custom package name, go to Project -> MyDroidApp
Properties, select the Android Manifest tab, and provide a value (containing
'.'s!) in the Package name textbox.

Alternatively, rename your assembly so that the filename contains spaces, e.g.
in Project -> MyDroidApp Properties, select the Application tab and change the
Assembly name textbox to My.Droid.App.  The generated /manifest/@package value
will have the lowercased version of the assembly name.

Secondly, most package names should always be lowercase.  The only exception I
know of to this is when you use [Register] on a type or use the
XxxAttribute.Name value (both of which you generally shouldn't use), thus your
Service should be "mydroidapp.Service".

Thirdly, you should be using custom attributes instead of mucking around with
XML generation, if at all possible (to preserve your sanity, among other
things):

    http://monodroid.net/Documentation/Guides/Working_with_AndroidManifest.xml

Thus, you should be doing:

    [Service]
    public class MyService : Android.App.Service { /* ... */ }

This will cause monodroid to automagically generation a <service/> element with
the appropriate //service/@android:name value, allowing it to be found.

In short, use the attributes and you won't need to worry about type name
discrepancies, as the AndroidManifest.xml value will be based upon the custom
attribute value.

-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
_______________________________________________
mono-bugs maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-bugs

Reply via email to