Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

Android Google Play Services Interacting with Google+ APIs Using a Share Intent

start Activity for intent

Steve Hunter Am on question 4 of 4. Stumped. Read the Google docs. I don't see what I'm doing wrong.

CodeChallenge.java
String textToShare = "Learn something new at www.teamtreehouse.com";

Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, textToShare);

activity.startActivityForResult(shareIntent.createChooser(intent, "Share"));
Jason Wiram
Jason Wiram
42,516 Points

EDIT: moved my comment to an answer.

2 Answers

Jason Wiram
Jason Wiram
42,516 Points
  1. The intent being passed into the final line of code should be named "shareIntent" (not intent).
  2. You can call startActivity() without the need for "activity.startActivity()".
  3. There is no need for "startActivityForResult()" since you don't need a callback. You can use "startActivity()"

From Google (Android developer docs): Starting another activity doesn't have to be one-way. You can also start another activity and receive a result back. To receive a result, call startActivityForResult() (instead of startActivity()).

String textToShare = "Learn something new at www.teamtreehouse.com";

Intent shareIntent = new Intent(Intent.ACTION_SEND);
shareIntent.setType("text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, textToShare);

activity.startActivityForResult(shareIntent.createChooser(shareIntent, "Share"));

Hi Jason Wiram

Thanks for that. Google docs are still a bit confusing for me.

String textToShare = "Learn something new at www.teamtreehouse.com";

Intent shareIntent = new Intent(Intent.ACTION_SEND); shareIntent.setType("text/plain"); shareIntent.putExtra(Intent.EXTRA_TEXT, textToShare);

startActivity(intent.createChooser(shareIntent, "Share"));

this finally made sense.

Jason Wiram
Jason Wiram
42,516 Points

Sweet! Docs can always be a challenge to understand, but glad you got it working.