demo-flutter-hello-world

Demo of Flutter Google UI toolkit, Dart programming language, Android Studio IDE, and "Hello World" app

https://github.com/joelparkerhenderson/demo-flutter-hello-world

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.1%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Demo of Flutter Google UI toolkit, Dart programming language, Android Studio IDE, and "Hello World" app

Basic Info
  • Host: GitHub
  • Owner: joelparkerhenderson
  • Language: Dart
  • Default Branch: master
  • Size: 56.6 KB
Statistics
  • Stars: 4
  • Watchers: 2
  • Forks: 2
  • Open Issues: 0
  • Releases: 0
Created over 5 years ago · Last pushed about 1 year ago
Metadata Files
Readme Citation

README.md

Demo Flutter "Hello World"

Demonstrate:

  • Flutter Google UI toolkit

  • Dart programming language

  • Android Studio IDE

  • Simple "Hello World" application

Contents:

Preflight

Install Android Studio

Install Android Studio Integrated Development Environment (IDE):

sh brew cask install android-studio

Install Intel HAXM

Install Intel Hardware Accelerated Execution Manager (HAXM) accelerator for Android Emulator:

sh brew cask install intel-haxm

Verify the kernel extensions load HAXM:

sh kextstat | grep com.intel.kext.intelhaxm

Install Flutter

There are various ways to install Flutter on macOS, such as via file download, or via homebrew, or via git clone, etc.

We prefer to install Flutter this way:

  • Install via git clone, because we prefer git over a Flutter website file download.

  • Clone the entire repo, because it includes upcoming versions that we want for testing.

  • Move it to the directory /opt/flutter because this is where we prefer software packages.

sh git clone https://github.com/flutter/flutter.git sudo mv flutter /opt

Append the path:

sh export PATH="$PATH:/opt/flutter/bin"

Typically you will add the path to your own shell configuration file such as .zshrc.

Verify:

sh flutter doctor

Output such as:

sh Downloading Dart SDK... Building flutter tool...

Accept licenses:

sh flutter doctor --android-licenses

Precache:

sh flutter precache

Install plugins for Flutter and Dart

Launch Android Studio.

Choose "Plugins".

Install the plugin "Flutter" and the plugin "Dart".

Create Flutter "Hello World" application

Create the source code

Launch Android Studio.

Create a new Flutter app.

For this demo, we use these settings:

  • Project name: demo_flutter_hello_world

  • Flutter SDK path: /opt/flutter

  • Project location: ~/git/joelparkerhenderson/

  • Description: Demonstrate Flutter "Hello World" application.

  • Package name: com.joelparkerhenderson.demoflutterhelloworld

Android Studio should launch a typical source code editor.

Choose the SDK

Use menu "File" -> "Project Structure" -> "Project Settings" -> "Project".

Select the SDK, which is set to [No SDK] by default.

We choose "Android API 29 Platform".

If there's nothing in the drop-down box, then select New, select Android SDK, navigate to your Android SDK location, then select the Android API Platform.

Update the SDK

Use menu "Tools" -> "SDK Manager".

This opens Settings -> Appearance & Behavior -> System Settings -> Android SDK.

Choose the tab "SDK Tools".

Click the "Edit" link next to the "Android SDK Location" box. This opens a new dialog for SDK Components Setup.

You should now see that "Android SDK - (installed)" has a tick in the checkbox, as do any SDK Platforms you have.

Click on the button "Next" then your SDK will update.

Create an Android Virtual Device (AVD)

An Android Virtual Device (AVD) is a configuration that defines the characteristics of an Android phone, tablet, Wear OS, Android TV, or Automotive OS device that you want to simulate in the Android Emulator.

Use menu "Tools" -> "AVD Manager".

We prefer to create a phone virtual device, so we choose "Phone".

We prefer to create a "Pixel 3a" virtual device, because it's a decent typical phone.

We prefer to use the newest stable operating system, which at the time of writing is "Q".

Android Studio should now create the AVD Phone Pixel 3a with R operating system.

Run the app

Use menu "Run" -> "Run".

You may see two options for "main.dart": one has a Dart icon, one has a Flutter icon. Choose the Flutter one.

Android Studio should show the bottom status bar work in progress, such as: Running Gradle task 'assembleDebug'. This may take a while (e.g. 10 minutes) because Android Studio may need to download more software.

Output:

Launching lib/main.dart on Android SDK built for x86 in debug mode... Running Gradle task 'assembleDebug'... ✓ Built build/app/outputs/flutter-apk/app-debug.apk. Installing build/app/outputs/flutter-apk/app.apk... Waiting for Android SDK built for x86 to report its views... Debug service listening on ws://127.0.0.1:52415/5w3MSveafuk=/ws Syncing files to device Android SDK built for x86...

The emulator should launch the app, and should show the main page, titled "Flutter Demo Home Page".

Owner

  • Name: Joel Parker Henderson
  • Login: joelparkerhenderson
  • Kind: user
  • Location: California

Software developer. Technology consultant. Creator of GitAlias.com, NumCommand.com, SixArm.com, and many open source projects.

Citation (CITATION.cff)

cff-version: 1.2.0
title: Demo Flutter "Hello World"
message: >-
  If you use this work and you want to cite it,
  then you can use the metadata from this file.
type: software
authors:
  - given-names: Joel Parker
    family-names: Henderson
    email: joel@joelparkerhenderson.com
    affiliation: joelparkerhenderson.com
    orcid: 'https://orcid.org/0009-0000-4681-282X'
identifiers:
  - type: url
    value: 'https://github.com/joelparkerhenderson/demo-flutter-hello-world/'
    description: Demo Flutter "Hello World"
repository-code: 'https://github.com/joelparkerhenderson/demo-flutter-hello-world/'
abstract: >-
  Demo Flutter "Hello World"
license: See license file

GitHub Events

Total
  • Push event: 1
Last Year
  • Push event: 1

Committers

Last synced: over 1 year ago

All Time
  • Total Commits: 3
  • Total Committers: 1
  • Avg Commits per committer: 3.0
  • Development Distribution Score (DDS): 0.0
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
Joel Parker Henderson j****l@j****m 3
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 8 months ago

All Time
  • Total issues: 0
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 0
  • Total pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 0
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 0
  • Pull request authors: 0
  • Average comments per issue: 0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

android/app/build.gradle maven
  • org.jetbrains.kotlin:kotlin-stdlib-jdk7 $kotlin_version implementation
pubspec.lock pub
  • async 2.5.0-nullsafety
  • boolean_selector 2.1.0-nullsafety
  • characters 1.1.0-nullsafety.2
  • charcode 1.2.0-nullsafety
  • clock 1.1.0-nullsafety
  • collection 1.15.0-nullsafety.2
  • cupertino_icons 0.1.3
  • fake_async 1.1.0-nullsafety
  • flutter 0.0.0
  • flutter_test 0.0.0
  • matcher 0.12.10-nullsafety
  • meta 1.3.0-nullsafety.2
  • path 1.8.0-nullsafety
  • sky_engine 0.0.99
  • source_span 1.8.0-nullsafety
  • stack_trace 1.10.0-nullsafety
  • stream_channel 2.1.0-nullsafety
  • string_scanner 1.1.0-nullsafety
  • term_glyph 1.2.0-nullsafety
  • test_api 0.2.19-nullsafety
  • typed_data 1.3.0-nullsafety.2
  • vector_math 2.1.0-nullsafety.2
pubspec.yaml pub
  • flutter_test --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter development
  • cupertino_icons ^0.1.3
  • flutter --- !ruby/hash:ActiveSupport::HashWithIndifferentAccess sdk: flutter
android/build.gradle maven