Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member

Using hardware keys

From: Flash Professional CS5: Creating a Simple Game for Android Devices

Video: Using hardware keys

The great thing about Android devices is that they have physical buttons that you can use to add additional functionality to your game. Those buttons include the Options menu, the Search button, as well as the Back button. And probably the most common used is going to be that Options button, or Options menu, because again, you can use it to add, for instance, this Options menu that I have right here. So just turn off the introScreen, and you will see it right there. It's called Options menu. And that's what I want to toggle on and off when you click on that Options key on the actual device.

Using hardware keys

The great thing about Android devices is that they have physical buttons that you can use to add additional functionality to your game. Those buttons include the Options menu, the Search button, as well as the Back button. And probably the most common used is going to be that Options button, or Options menu, because again, you can use it to add, for instance, this Options menu that I have right here. So just turn off the introScreen, and you will see it right there. It's called Options menu. And that's what I want to toggle on and off when you click on that Options key on the actual device.

And I am going to add some functionality by using code snippets. So refer to the Code Snippets video if you don't have this Mobile Game folder. And if I scroll down, Mobile menu key, that's what I want to use. I will just double-click on it to add that functionality. And now I can put everything in its proper place. So all variables actually are going to be at the top, so I will take this first line, I'll cut it, scroll up to the top, and paste it about line 22.

Paste it right in there. So, this is a Boolean, so it's a true/false statement, and it's set to true by default. So it is hidden by default. In fact, the optionsmenu, you can see its visibility is set to false. So, hiddenOptions is set to true by default, so let's keep that in mind. Scroll back down and again I am just going to go ahead and move up all of this code, because sure enough, I want it to start right here after line 440. In fact, I'll add my first comment right in here: When any hardware key is pressed...

Well then, go ahead and fire off this function. So again, KEY_UP for anything, then go ahead and do this optionsKey function. Okay. So right in here, you can see Options menu. You can use this keyCode, 16777234, or a keyboard menu. Now if you use keyboard menu, it actually will throw you an error in Flash, so that's why I am going to use 16777234. Okay. But I want to add to this as well because I don't have an options key on my desktop computer.

So I want to go ahead and add two vertical pipes, those vertical slashes, and what I want to do is this adds an Or statement, so I can say, if this is pressed, or, and I'll just copy this line right here. 13. And what 13 is is the Enter key on the keyboard. All right! So again, for development purposes, that's why I want to add this in.

So when I test it on my desktop, I just want to make sure everything is working just fine. Okay. So if I hit the Enter key or hit the Options button right here, show the optionsmenu. That's its instance name and by default, go ahead and show it. So if it's equal to true, then place the optionsmenu on top of everything else. That's what this setChildIndex does. Because remember, all of those graphics for the game-- the enemies, the lasers, even my players-- they are all pulled from the library and added directly to this stage.

And they're added on top of one another. So I want to make sure this menu is on top of all of that stuff by adding a setChildIndex, making sure it's at the very top. But again, right here, I am going to copy this optionsmenu instance name and paste it over instance name here. I'll do the same thing here. So again, turn it on, put it on top, turn it on, give it an EventListener. This EventListener fires off this exitApp function right down here. And again, this is commented out as well. This is using NativeApplication functionality.

This is going to go ahead and exit out of the application when they go ahead and click on the menu. Now, of course, while I am testing this out, what I want to do is I want to add a trace statement that says exitApp, just so I know it's working on the desktop. So I've added that trace statement in. It's looking good so far. I can move on. Within this else statement, I can go ahead and say "If the optionsmenu is visible, then hide it..." And that's what this does. I'll copy this optionsmenu name and paste it right in there. It turns it off, removes that EventListener.

And then lastly this is just the toggle. It turns it on and off. The hiddenOptions makes it true or false each time around. So that's how we have our Toggle button created, which is our optionsmenu. And I am just going to go ahead and test this out on my device. I am going to press the Enter key. So I'll just do a Control > Test Movie. I am going to test it in Flash. Here is my game. Click Play. You saw it work. You saw the menu up here on my desktop.

So the next step is to go ahead and test this out on my device. So I am just going to go ahead and put this on a Droid 2. Here is with the game on a Droid 2. I am going to go ahead and click Play. So I am able to play the game. Then I can hit the Options button. It shows the Options menu. I can press the Options button again and the Options menu is hidden. So again, that's how you can tap into the actual hardware keys of the device to extend the functionality of your game.

Show transcript

This video is part of

Expand all | Collapse all
  1. 1m 48s
    1. Welcome
      1m 0s
    2. Using the exercise files
      48s
  2. 7m 16s
    1. Understanding the user
      4m 2s
    2. Flash content on Android devices
      3m 14s
  3. 17m 28s
    1. Reviewing the game
      1m 50s
    2. Creating a file in Device Central
      5m 39s
    3. Reviewing the game structure
      8m 23s
    4. Adding code snippets
      1m 36s
  4. 36m 13s
    1. Animating the intro screen
      8m 13s
    2. Moving the player
      8m 13s
    3. Adding enemies
      6m 49s
    4. Adding movement
      4m 16s
    5. Adding chance and randomness
      8m 42s
  5. 34m 30s
    1. Adding lasers
      8m 14s
    2. Detecting collisions
      7m 57s
    3. Adding explosions
      6m 26s
    4. Removing assets from the stage
      8m 50s
    5. Adding audio
      3m 3s
  6. 33m 12s
    1. Adding scoring and levels
      7m 41s
    2. Subtracting lives and ending the game
      4m 26s
    3. Creating a results screen
      5m 8s
    4. Displaying the score
      6m 57s
    5. Saving and loading game results
      9m 0s
  7. 17m 14s
    1. Detecting movement with the Accelerometer
      6m 39s
    2. Using the swipe gesture
      4m 42s
    3. Using hardware keys
      5m 53s
  8. 23m 18s
    1. Handling exits and idle mode
      3m 31s
    2. Handling activation and deactivation
      6m 14s
    3. Optimizing graphics
      7m 14s
    4. Optimizing ActionScript
      6m 19s
  9. 34m 41s
    1. Creating the application files
      8m 23s
    2. Creating the app (Mac)
      5m 5s
    3. Creating the app (PC)
      7m 19s
    4. Publishing to an Android device (Mac)
      7m 7s
    5. Publishing to an Android device (PC)
      6m 47s
  10. 8m 56s
    1. Uploading to the Android market
      7m 7s
    2. Downloading from the Android market
      1m 49s
  11. 1m 22s
    1. Next steps
      1m 22s

Start learning today

Get unlimited access to all courses for just $25/month.

Become a member
Sometimes @lynda teaches me how to use a program and sometimes Lynda.com changes my life forever. @JosefShutter
@lynda lynda.com is an absolute life saver when it comes to learning todays software. Definitely recommend it! #higherlearning @Michael_Caraway
@lynda The best thing online! Your database of courses is great! To the mark and very helpful. Thanks! @ru22more
Got to create something yesterday I never thought I could do. #thanks @lynda @Ngventurella
I really do love @lynda as a learning platform. Never stop learning and developing, it’s probably our greatest gift as a species! @soundslikedavid
@lynda just subscribed to lynda.com all I can say its brilliant join now trust me @ButchSamurai
@lynda is an awesome resource. The membership is priceless if you take advantage of it. @diabetic_techie
One of the best decision I made this year. Buy a 1yr subscription to @lynda @cybercaptive
guys lynda.com (@lynda) is the best. So far I’ve learned Java, principles of OO programming, and now learning about MS project @lucasmitchell
Signed back up to @lynda dot com. I’ve missed it!! Proper geeking out right now! #timetolearn #geek @JayGodbold
Share a link to this course

What are exercise files?

Exercise files are the same files the author uses in the course. Save time by downloading the author's files instead of setting up your own files, and learn by following along with the instructor.

Can I take this course without the exercise files?

Yes! If you decide you would like the exercise files later, you can upgrade to a premium account any time.

Become a member Download sample files See plans and pricing

Please wait... please wait ...
Upgrade to get access to exercise files.

Exercise files video

How to use exercise files.

Learn by watching, listening, and doing, Exercise files are the same files the author uses in the course, so you can download them and follow along Premium memberships include access to all exercise files in the library.


Exercise files

Exercise files video

How to use exercise files.

For additional information on downloading and using exercise files, watch our instructional video or read the instructions in the FAQ.

This course includes free exercise files, so you can practice while you watch the course. To access all the exercise files in our library, become a Premium Member.

Are you sure you want to mark all the videos in this course as unwatched?

This will not affect your course history, your reports, or your certificates of completion for this course.


Mark all as unwatched Cancel

Congratulations

You have completed Flash Professional CS5: Creating a Simple Game for Android Devices.

Return to your organization's learning portal to continue training, or close this page.


OK
Become a member to add this course to a playlist

Join today and get unlimited access to the entire library of video courses—and create as many playlists as you like.

Get started

Already a member?

Become a member to like this course.

Join today and get unlimited access to the entire library of video courses.

Get started

Already a member?

Exercise files

Learn by watching, listening, and doing! Exercise files are the same files the author uses in the course, so you can download them and follow along. Exercise files are available with all Premium memberships. Learn more

Get started

Already a Premium member?

Exercise files video

How to use exercise files.

Ask a question

Thanks for contacting us.
You’ll hear from our Customer Service team within 24 hours.

Please enter the text shown below:

The classic layout automatically defaults to the latest Flash Player.

To choose a different player, hold the cursor over your name at the top right of any lynda.com page and choose Site preferencesfrom the dropdown menu.

Continue to classic layout Stay on new layout
Exercise files

Access exercise files from a button right under the course name.

Mark videos as unwatched

Remove icons showing you already watched videos if you want to start over.

Control your viewing experience

Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.

Interactive transcripts

Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.

Are you sure you want to delete this note?

No

Your file was successfully uploaded.

Thanks for signing up.

We’ll send you a confirmation email shortly.


Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

Keep up with news, tips, and latest courses with emails from lynda.com.

Sign up and receive emails about lynda.com and our online training library:

Here’s our privacy policy with more details about how we handle your information.

   
submit Lightbox submit clicked
Terms and conditions of use

We've updated our terms and conditions (now called terms of service).Go
Review and accept our updated terms of service.