Android defines several actions, including ACTION_SEND which, as you can probably guess, indicates that the intent is sending data from one activity to another, even across process boundaries. To send data to another activity, all you need to do is specify the data and its type, the system will identify compatible receiving activities and display them to the user.
Android provides intent library to share data between activities an application in order to use it as share intent, we have to specify the type of the share intent to ACTION_SEND.
Intent shareIntent=new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
Next thing you need to is to define the type of data to pass, and then pass the data.
shareIntent.setType(“text/plain”);
shareIntent.PutExtra(Intent.EXTRA_TEXT, “Helloo from mobilemerit”);
startActivity(Intent.createChooser(shareIntent, “Share”));
if you call Intent.createChooser(), passing it your Intent object, it returns a version of your intent that will always display the chooser.
Binary data is shared using the ACTION_SEND action combined with setting the appropriate MIME type and placing the URI to the data in an extra named EXTRA_STREAM. This is commonly used to share an image but can be used to share any type of binary content:
[code lang=”js”]
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.putExtra(Intent.EXTRA_STREAM, uriToImage);
shareIntent.setType("image/jpeg");
startActivity(Intent.createChooser(shareIntent, getResources().getText(R.string.send_to)));
[/code]
[code lang=”js”]
public class MainActivity extends ActionBarActivity {
Button button ;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
button = (Button) findViewById(R.id.bButton);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
shareIntent();
}
});
}
private void shareIntent() {
Intent shareIntent = new Intent();
shareIntent.setAction(Intent.ACTION_SEND);
shareIntent.setType("Text/plain");
shareIntent.putExtra(Intent.EXTRA_TEXT, "Heloo from mobilemerit");
startActivity(Intent.createChooser(shareIntent, "Share"));
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.menu_main, menu);
return true;
}
[/code]
[code lang=”js”]
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="Button to share somthing"
android:id="@+id/bButton"
android:layout_centerVertical="true"
android:layout_centerHorizontal="true" />
</RelativeLayout>
[/code]
Tags: Android Studio
Warning: _() expects exactly 1 parameter, 2 given in /home2/mobilemeri7/public_html/wp-content/themes/mobilemerit/comments.php on line 28