Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Contextual communications and why should you care

380 views

Published on

Communication is the key to everything. In this talk I will show you some common scenarios where we totally fail to do just that.

We will then look at some ways we can avoid that and bring context back onto our applications.

Published in: Internet
  • Be the first to comment

Contextual communications and why should you care

  1. 1. WE’RE
  2. 2. COMMUNICATING
  3. 3. WRONG!
  4. 4. Contextual Communications – Why should you Care? <Say>Hello MobileTrends!</Say> @marcos_placona marcos@twilio.com Developer Evangelist @ Twilio
  5. 5. >7.2bn A few numbers
  6. 6. Contacting experience
  7. 7. Contacting experience
  8. 8. Contacting experience
  9. 9. intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + "1234567890"));
 if (ActivityCompat.checkSelfPermission(getApplicationContext(), Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {
 startActivity(intent);
 } <uses-permission android:name="android.permission.CALL_PHONE" />
  10. 10. AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
 builder.setMessage("Calling...")
 .setCancelable(false)
 .setPositiveButton("Hang-up", new DialogInterface.OnClickListener() {
 public void onClick(DialogInterface dialog, int id) {
 phone.disconnect();
 }
 });
 AlertDialog alert = builder.create();
 alert.show();
 
 phone.connect("+1234567890");
  11. 11. AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
 builder.setMessage("Calling...")
 .setCancelable(false)
 .setPositiveButton("Hang-up", new DialogInterface.OnClickListener() {
 public void onClick(DialogInterface dialog, int id) {
 phone.disconnect();
 }
 });
 AlertDialog alert = builder.create();
 alert.show();
 
 phone.connect("+1234567890");
  12. 12. Demo Time
  13. 13. try {
 getApplicationContext().getPackageManager().getPackageInfo("com.facebook.katana", 0);
 startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("fb://page/<id_here>")));
 } catch (PackageManager.NameNotFoundException e) {
 e.printStackTrace();
 }
  14. 14. try {
 getApplicationContext().getPackageManager().getPackageInfo("com.facebook.katana", 0);
 startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("fb://page/<id_here>")));
 } catch (PackageManager.NameNotFoundException e) {
 startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("https://www.facebook.com/<user_name_here>")));
 }
  15. 15. Demo Time
  16. 16. Demo Time
  17. 17. ~100 Lines ~350 Lines ~750 Lines
  18. 18. Who thinks it’s worth it?
  19. 19. +48 732 483 676 How did I do? @marcos_placona github.com/mplacona marcos@twilio.com Developer Evangelist @ Twilio Text 1-10
  20. 20. +48 732 483 676 Text 1-10github.com/mplacona marcos@twilio.com Developer Evangelist @ Twilio

×