Software Archive
Read-only legacy content
17061 Discussions

how to set android:launchMode and android:largeHeap

Gary_H_2
New Contributor I
1,545 Views

I'm struggling to get these values into the androidManifest file. I've tried adding them to the intelxdk.config.additions file and I've tried adding them via a plugin.xml but no luck either way. Can anyone supply the correct syntax for this?

0 Kudos
12 Replies
Gary_H_2
New Contributor I
1,545 Views

fyi, in messing with my config I may have broken the crosswalk build servers because they are not working anymore. Can someone at Intel press the reset button? Thanks.

0 Kudos
John_H_Intel2
Employee
1,545 Views

Build servers are running fine. What issue are you seeing?

Are you including any 3rd party plugins? Try removing those and rebuilding to see if they are causing the issue.

0 Kudos
Gary_H_2
New Contributor I
1,545 Views

Last night the Cordova build was failing but this morning its working again so that's all good.

My issue is that I want to get some things into the androidmanifest. This is what I tried adding to the config.additions file without success:-

<preference name="SplashScreenDelay" value="10000"/>
<preference name="AndroidLaunchMode" value="standard"/>
<preference name="largeHeap" value="true"/>

I am already adding some intents with the virtualartifacts-webintent plugin but I can't find a way to change the values in the manifest for the main application activity. 

0 Kudos
Gary_H_2
New Contributor I
1,545 Views

Any ideas on how to set AndroidLaunchMode?

0 Kudos
PaulF_IntelCorp
Employee
1,545 Views

Should work by adding it to the additions.xml file. Anything that you can put into the Cordova config.xml file you can put into the intelxdk.config.addtions.xml file. According to the Cordova 4.0 docs, this preference is supported, as long as you are using our CLI 4.1.2 build (https://cordova.apache.org/docs/en/4.0.0/guide_platforms_android_config.md.html).

See this doc for info regarding additions.xml file: https://software.intel.com/en-us/xdk/docs/adding-special-build-options-to-your-xdk-cordova-app-with-the-intelxdk-config-additions-xml-file

0 Kudos
Gary_H_2
New Contributor I
1,545 Views

In my crosswalk.config.additions I have:-

<preference name="SplashScreenDelay" value="10000"/>
<preference name="AndroidLaunchMode" value="standard"/>
<preference name="largeHeap" value="true"/>

But the AndroidManifest according to APKTool has the following with no sign of my values:-

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:hardwareAccelerated="true" package="com.mainstreamdata.wispeodroid" platformBuildVersionCode="21" platformBuildVersionName="5.0.1-1624448">
    <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true"/>
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
    <uses-permission android:name="android.permission.INTERNET"/>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
    <application android:debuggable="true" android:hardwareAccelerated="true" android:icon="@drawable/icon" android:label="@string/app_name" android:name="org.apache.cordova.CordovaApplication">
        <meta-data android:name="xwalk_apk_url" android:value=""/>
        <activity android:configChanges="locale|keyboard|keyboardHidden|orientation|screenSize" android:label="@string/activity_name" android:launchMode="singleTop" android:name="Wispeo" android:screenOrientation="portrait" android:theme="@android:style/Theme.Black.NoTitleBar" android:windowSoftInputMode="adjustResize">
            <intent-filter android:label="@string/launcher_name">
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.SEND"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <data android:mimeType="*/*"/>
            </intent-filter>
            <intent-filter>
                <action android:name="android.intent.action.VIEW"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
                <data android:host="www.wispeo.com" android:scheme="http"/>
                <data android:host="beta.wispeo.com" android:scheme="http"/>
                <data android:host="qa.wispeo.com" android:scheme="http"/>
            </intent-filter>
            <intent-filter>
                <data android:scheme="wispeo"/>
                <action android:name="android.intent.action.VIEW"/>
                <category android:name="android.intent.category.DEFAULT"/>
                <category android:name="android.intent.category.BROWSABLE"/>
            </intent-filter>
        </activity>
        <activity android:label="@string/multi_app_name" android:name="com.synconset.MultiImageChooserActivity" android:theme="@android:style/Theme.Holo.Light"/>
    </application>
    <uses-permission android:name="android.permission.READ_CONTACTS"/>
    <uses-permission android:name="android.permission.WRITE_CONTACTS"/>
    <uses-permission android:name="android.permission.GET_ACCOUNTS"/>
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
</manifest>

 

 

 

0 Kudos
Michael_O_2
New Contributor I
1,545 Views

You can set your launch mode to either "landscape or orientation".

Check the build settings for more configuration info.

0 Kudos
PaulF_IntelCorp
Employee
1,545 Views

See the very bottom of this page for details on setting the AndroidLaunchMode: https://cordova.apache.org/docs/en/4.0.0/guide_platforms_android_config.md.html

  • AndroidLaunchMode (string, defaults to singleTop): Sets the Activity android:launchMode attribute. This changes what happens when the app is launched from app icon or intent and is already running. Valid values are standard, singleTop, singleTask, singleInstance.

      <preference name="AndroidLaunchMode" value="singleTop"/>
0 Kudos
Gary_H_2
New Contributor I
1,545 Views

I have this in my intelxdk.config.additions.xm file :-

<preference name="AndroidLaunchMode" value="standard"/>

but the AndroidManifest.xml still says android:launchMode="singleTop" 

0 Kudos
PaulF_IntelCorp
Employee
1,545 Views

Let me check with the build engineers to see if our build scripts are preventing this. I think this may be due to the fact that the Crosswalk builds are a fork of Cordova 3.6, not Cordova 4.x. If you do a build with Android does this option pass thru?

0 Kudos
Gary_H_2
New Contributor I
1,545 Views

Could you also ask them how to set largeHeap. Thanks.

0 Kudos
PaulF_IntelCorp
Employee
1,545 Views

The current Crosswalk build system is a custom build process that uses a forked version of the version 3.6.3 Cordova for Android framework. The build process is unique to building Crosswalk, it is not a fully standard Cordova build, so that is why some of those options don't work. We are in the process of adding support for the CLI 5 build system which supports the Android 4.x Cordova framework and also supports "pluggable" Crosswalk webviews. When that build system is in place and working the build process for Crosswalk will be a standard Cordova build and these options will then be properly supported. Until then, not all of the Cordova Android options will work. :(

I can't give you a timetable regarding the availability of that new build system or the new Crosswalk "pluggable" webview, but I can say that it is actively being worked on and is an important feature. In the meantime, you can do this locally with Cordova CLI. If you want to create an XDK project that you can interchange with Cordova CLI, I recommend using the EA release and reading this doc (in particular): https://software.intel.com/en-us/xdk/docs/early-access-project-plugin-selection

0 Kudos
Reply