Titanium JIRA Archive
Titanium SDK/CLI (TIMOB)

[TIMOB-3470] Android: timodule.xml contents do not get copied into generated AndroidManifest.xml

GitHub Issuen/a
TypeBug
PriorityMedium
StatusClosed
ResolutionFixed
Resolution Date2011-05-06T09:46:07.000+0000
Affected Version/sn/a
Fix Version/sRelease 1.7.0, Sprint 2011-15
ComponentsAndroid
Labelsandroid, build, module, release-1.7.0, reported-1.7.0, rplist
Reporterctredway
AssigneeBill Dawson
Created2011-04-15T03:45:34.000+0000
Updated2011-05-06T09:46:07.000+0000

Description

The timodule.xml contents do not get added to the generated AndroidManifest.xml at build time. This is happening in Master.

Comments

  1. Bill Dawson 2011-04-15

    [https://github.com/appcelerator/titanium_mobile/commit/4a487322088deb07bd8f305afdde5451a1e6749e]
  2. Bill Dawson 2011-04-15

    I believe this is just a misunderstanding caused by the template timodule.xml not getting updated after we settled on our standard for putting the <android> section into tiapp.xml (somewhere around 1.5.0, probably). So the entries in timodule.xml should be structured the same way entries in tiapp.xml are. But the comment inside the template timodule.xml shows the manifest element looking like this: <android:manifest>, which is wrong. So perhaps the customer was following that wrong advice and thus it wasn't working. Instead the section should look just like it would in a tiapp.xml:
       <android xmlns:android="http://schemas.android.com/apk/res/android">
           <manifest>
           </manifest>
       </android>
       
    If it's done that way, it already works (I didn't need to make any programming changes, though I did update timodule.xml template to reflect this.) If QA wants to test this: * Create a new [Android module](http://wiki.appcelerator.org/display/guides/Module+Developer+Guide+for+Android) or use an existing Android module. * Open the module's timodule.xml file and change the <android> section to look like this:
       <android xmlns:android="http://schemas.android.com/apk/res/android">
           <manifest>
               <uses-permission android:name="android.permission.READ_CONTACTS"/>
           </manifest>
       </android>
       
    * Build the module. * Copy the packaged module ZIP file to a Titanium Mobile project's root folder. * In the Titanium Mobile project's tiapp.xml file, be sure to add the <module> section to specify that the module should be used in the project. * Build the Titanium Mobile project. * Open build/android/AndroidManifest.xml and go down near the bottom, and you should see the READ_CONTACTS permission in there -- that came from the timodule.xml
  3. Don Thorp 2011-05-06

    Device not needed for testing.

JSON Source