How to pass customizable property when Android app launches












0















I would like to launch my Android app in such a way that I can set some external variable that my app can read. It would be nice if this was possible either in Gradle or as part of the debug/run configuration.



In essence, I would like to test for a variable to see if it is set. In this example I would like to set USE_FAKE_DATA:



if (USE_FAKE_DATA) {
...
} else {
...
}


One way is to use build variants and I have done this before. But I'm wondering if another way has been made available.










share|improve this question

























  • You're looking to set variables on another apps? "I can set some external variable ". If you're only looking to save variables for your app and retrieve the values at any point you can use sharedPreferences

    – JoaquinAlvarez
    Nov 21 '18 at 15:12













  • No. I want to start my app and have it recognize some parameters that get passed in. In a typical Java app, you can pass in command line arguments. Android does apparently support that but I prefer to have it part of Gradle or the debug/release configuration.

    – AndroidDev
    Nov 21 '18 at 15:22
















0















I would like to launch my Android app in such a way that I can set some external variable that my app can read. It would be nice if this was possible either in Gradle or as part of the debug/run configuration.



In essence, I would like to test for a variable to see if it is set. In this example I would like to set USE_FAKE_DATA:



if (USE_FAKE_DATA) {
...
} else {
...
}


One way is to use build variants and I have done this before. But I'm wondering if another way has been made available.










share|improve this question

























  • You're looking to set variables on another apps? "I can set some external variable ". If you're only looking to save variables for your app and retrieve the values at any point you can use sharedPreferences

    – JoaquinAlvarez
    Nov 21 '18 at 15:12













  • No. I want to start my app and have it recognize some parameters that get passed in. In a typical Java app, you can pass in command line arguments. Android does apparently support that but I prefer to have it part of Gradle or the debug/release configuration.

    – AndroidDev
    Nov 21 '18 at 15:22














0












0








0








I would like to launch my Android app in such a way that I can set some external variable that my app can read. It would be nice if this was possible either in Gradle or as part of the debug/run configuration.



In essence, I would like to test for a variable to see if it is set. In this example I would like to set USE_FAKE_DATA:



if (USE_FAKE_DATA) {
...
} else {
...
}


One way is to use build variants and I have done this before. But I'm wondering if another way has been made available.










share|improve this question
















I would like to launch my Android app in such a way that I can set some external variable that my app can read. It would be nice if this was possible either in Gradle or as part of the debug/run configuration.



In essence, I would like to test for a variable to see if it is set. In this example I would like to set USE_FAKE_DATA:



if (USE_FAKE_DATA) {
...
} else {
...
}


One way is to use build variants and I have done this before. But I'm wondering if another way has been made available.







android






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 21 '18 at 15:04







AndroidDev

















asked Nov 21 '18 at 14:58









AndroidDevAndroidDev

10.3k2495167




10.3k2495167













  • You're looking to set variables on another apps? "I can set some external variable ". If you're only looking to save variables for your app and retrieve the values at any point you can use sharedPreferences

    – JoaquinAlvarez
    Nov 21 '18 at 15:12













  • No. I want to start my app and have it recognize some parameters that get passed in. In a typical Java app, you can pass in command line arguments. Android does apparently support that but I prefer to have it part of Gradle or the debug/release configuration.

    – AndroidDev
    Nov 21 '18 at 15:22



















  • You're looking to set variables on another apps? "I can set some external variable ". If you're only looking to save variables for your app and retrieve the values at any point you can use sharedPreferences

    – JoaquinAlvarez
    Nov 21 '18 at 15:12













  • No. I want to start my app and have it recognize some parameters that get passed in. In a typical Java app, you can pass in command line arguments. Android does apparently support that but I prefer to have it part of Gradle or the debug/release configuration.

    – AndroidDev
    Nov 21 '18 at 15:22

















You're looking to set variables on another apps? "I can set some external variable ". If you're only looking to save variables for your app and retrieve the values at any point you can use sharedPreferences

– JoaquinAlvarez
Nov 21 '18 at 15:12







You're looking to set variables on another apps? "I can set some external variable ". If you're only looking to save variables for your app and retrieve the values at any point you can use sharedPreferences

– JoaquinAlvarez
Nov 21 '18 at 15:12















No. I want to start my app and have it recognize some parameters that get passed in. In a typical Java app, you can pass in command line arguments. Android does apparently support that but I prefer to have it part of Gradle or the debug/release configuration.

– AndroidDev
Nov 21 '18 at 15:22





No. I want to start my app and have it recognize some parameters that get passed in. In a typical Java app, you can pass in command line arguments. Android does apparently support that but I prefer to have it part of Gradle or the debug/release configuration.

– AndroidDev
Nov 21 '18 at 15:22












1 Answer
1






active

oldest

votes


















1














Gradle File



android {
buildTypes {
debug {
buildConfigField "boolean", "USE_FAKE_DATA", "true"
}
release {
buildConfigField "boolean", "USE_FAKE_DATA", "false"
}
}
}


Java File



class Test extends Activity {
@Override
public void onCreate(Bundle data) {
if (BuildConfig.USE_FAKE_DATA) {
...
} else {
...
}
}
}


Please refer this answer for more.






share|improve this answer























    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53414796%2fhow-to-pass-customizable-property-when-android-app-launches%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    1














    Gradle File



    android {
    buildTypes {
    debug {
    buildConfigField "boolean", "USE_FAKE_DATA", "true"
    }
    release {
    buildConfigField "boolean", "USE_FAKE_DATA", "false"
    }
    }
    }


    Java File



    class Test extends Activity {
    @Override
    public void onCreate(Bundle data) {
    if (BuildConfig.USE_FAKE_DATA) {
    ...
    } else {
    ...
    }
    }
    }


    Please refer this answer for more.






    share|improve this answer




























      1














      Gradle File



      android {
      buildTypes {
      debug {
      buildConfigField "boolean", "USE_FAKE_DATA", "true"
      }
      release {
      buildConfigField "boolean", "USE_FAKE_DATA", "false"
      }
      }
      }


      Java File



      class Test extends Activity {
      @Override
      public void onCreate(Bundle data) {
      if (BuildConfig.USE_FAKE_DATA) {
      ...
      } else {
      ...
      }
      }
      }


      Please refer this answer for more.






      share|improve this answer


























        1












        1








        1







        Gradle File



        android {
        buildTypes {
        debug {
        buildConfigField "boolean", "USE_FAKE_DATA", "true"
        }
        release {
        buildConfigField "boolean", "USE_FAKE_DATA", "false"
        }
        }
        }


        Java File



        class Test extends Activity {
        @Override
        public void onCreate(Bundle data) {
        if (BuildConfig.USE_FAKE_DATA) {
        ...
        } else {
        ...
        }
        }
        }


        Please refer this answer for more.






        share|improve this answer













        Gradle File



        android {
        buildTypes {
        debug {
        buildConfigField "boolean", "USE_FAKE_DATA", "true"
        }
        release {
        buildConfigField "boolean", "USE_FAKE_DATA", "false"
        }
        }
        }


        Java File



        class Test extends Activity {
        @Override
        public void onCreate(Bundle data) {
        if (BuildConfig.USE_FAKE_DATA) {
        ...
        } else {
        ...
        }
        }
        }


        Please refer this answer for more.







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Nov 21 '18 at 15:29









        hArshhArsh

        6619




        6619
































            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53414796%2fhow-to-pass-customizable-property-when-android-app-launches%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Guess what letter conforming each word

            Port of Spain

            Run scheduled task as local user group (not BUILTIN)