类com.google.zxing.client.android.Contents源码实例Demo

下面列出了怎么用com.google.zxing.client.android.Contents的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: ZXing-Standalone-library   文件: ShareActivity.java
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码2 项目: ZXing-Standalone-library   文件: ShareActivity.java
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码3 项目: ZXing-Standalone-library   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码4 项目: ZXing-Orient   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码8 项目: weex   文件: ShareActivity.java
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码9 项目: weex   文件: ShareActivity.java
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码10 项目: weex   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码11 项目: Study_Android_Demo   文件: ShareActivity.java
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码12 项目: Study_Android_Demo   文件: ShareActivity.java
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码13 项目: Study_Android_Demo   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码14 项目: barcodescanner-lib-aar   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码15 项目: reacteu-app   文件: ShareActivity.java
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码16 项目: reacteu-app   文件: ShareActivity.java
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码17 项目: reacteu-app   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(fakeR.getId("menu", "encode"), menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? fakeR.getId("string", "menu_encode_mecard") : fakeR.getId("string", "menu_encode_vcard");
  MenuItem encodeItem = menu.findItem(fakeR.getId("id", "menu_encode"));
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码18 项目: android-apps   文件: ShareActivity.java
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码19 项目: android-apps   文件: ShareActivity.java
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码20 项目: zxingfragmentlib   文件: ShareActivity.java
private void launchSearch(String text) {
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码21 项目: zxingfragmentlib   文件: ShareActivity.java
private void showTextAsBarcode(String text) {
  Log.i(TAG, "Showing text as barcode: " + text);
  if (text == null) {
    return; // Show error?
  }
  Intent intent = new Intent(Intents.Encode.ACTION);
  intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESET);
  intent.putExtra(Intents.Encode.TYPE, Contents.Type.TEXT);
  intent.putExtra(Intents.Encode.DATA, text);
  intent.putExtra(Intents.Encode.FORMAT, BarcodeFormat.QR_CODE.toString());
  startActivity(intent);
}
 
源代码22 项目: zxingfragmentlib   文件: EncodeActivity.java
@Override
public boolean onCreateOptionsMenu(Menu menu) {
  MenuInflater menuInflater = getMenuInflater();
  menuInflater.inflate(R.menu.encode, menu);
  boolean useVcard = qrCodeEncoder != null && qrCodeEncoder.isUseVCard();
  int encodeNameResource = useVcard ? R.string.menu_encode_mecard : R.string.menu_encode_vcard;
  MenuItem encodeItem = menu.findItem(R.id.menu_encode);
  encodeItem.setTitle(encodeNameResource);
  Intent intent = getIntent();
  if (intent != null) {
    String type = intent.getStringExtra(Intents.Encode.TYPE);
    encodeItem.setVisible(Contents.Type.CONTACT.equals(type));
  }
  return super.onCreateOptionsMenu(menu);
}
 
源代码23 项目: ZXing-Standalone-library   文件: QRCodeEncoder.java
private void encodeQRCodeContents(Intent intent, String type) {
  switch (type) {
    case Contents.Type.TEXT:
      String textData = intent.getStringExtra(Intents.Encode.DATA);
      if (textData != null && !textData.isEmpty()) {
        contents = textData;
        displayContents = textData;
        title = activity.getString(R.string.contents_text);
      }
      break;

    case Contents.Type.EMAIL:
      String emailData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (emailData != null) {
        contents = "mailto:" + emailData;
        displayContents = emailData;
        title = activity.getString(R.string.contents_email);
      }
      break;

    case Contents.Type.PHONE:
      String phoneData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (phoneData != null) {
        contents = "tel:" + phoneData;
        displayContents = PhoneNumberUtils.formatNumber(phoneData);
        title = activity.getString(R.string.contents_phone);
      }
      break;

    case Contents.Type.SMS:
      String smsData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (smsData != null) {
        contents = "sms:" + smsData;
        displayContents = PhoneNumberUtils.formatNumber(smsData);
        title = activity.getString(R.string.contents_sms);
      }
      break;

    case Contents.Type.CONTACT:
      Bundle contactBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (contactBundle != null) {

        String name = contactBundle.getString(ContactsContract.Intents.Insert.NAME);
        String organization = contactBundle.getString(ContactsContract.Intents.Insert.COMPANY);
        String address = contactBundle.getString(ContactsContract.Intents.Insert.POSTAL);
        List<String> phones = getAllBundleValues(contactBundle, Contents.PHONE_KEYS);
        List<String> phoneTypes = getAllBundleValues(contactBundle, Contents.PHONE_TYPE_KEYS);
        List<String> emails = getAllBundleValues(contactBundle, Contents.EMAIL_KEYS);
        String url = contactBundle.getString(Contents.URL_KEY);
        List<String> urls = url == null ? null : Collections.singletonList(url);
        String note = contactBundle.getString(Contents.NOTE_KEY);

        ContactEncoder encoder = useVCard ? new VCardContactEncoder() : new MECARDContactEncoder();
        String[] encoded = encoder.encode(Collections.singletonList(name),
                                          organization,
                                          Collections.singletonList(address),
                                          phones,
                                          phoneTypes,
                                          emails,
                                          urls,
                                          note);
        // Make sure we've encoded at least one field.
        if (!encoded[1].isEmpty()) {
          contents = encoded[0];
          displayContents = encoded[1];
          title = activity.getString(R.string.contents_contact);
        }

      }
      break;

    case Contents.Type.LOCATION:
      Bundle locationBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (locationBundle != null) {
        // These must use Bundle.getFloat(), not getDouble(), it's part of the API.
        float latitude = locationBundle.getFloat("LAT", Float.MAX_VALUE);
        float longitude = locationBundle.getFloat("LONG", Float.MAX_VALUE);
        if (latitude != Float.MAX_VALUE && longitude != Float.MAX_VALUE) {
          contents = "geo:" + latitude + ',' + longitude;
          displayContents = latitude + "," + longitude;
          title = activity.getString(R.string.contents_location);
        }
      }
      break;
  }
}
 
private void encodeQRCodeContents(Intent intent, String type) {
  switch (type) {
    case Contents.Type.TEXT:
      String textData = intent.getStringExtra(Intents.Encode.DATA);
      if (textData != null && !textData.isEmpty()) {
        contents = textData;
        displayContents = textData;
        title = activity.getString(R.string.contents_text);
      }
      break;

    case Contents.Type.EMAIL:
      String emailData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (emailData != null) {
        contents = "mailto:" + emailData;
        displayContents = emailData;
        title = activity.getString(R.string.contents_email);
      }
      break;

    case Contents.Type.PHONE:
      String phoneData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (phoneData != null) {
        contents = "tel:" + phoneData;
        displayContents = PhoneNumberUtils.formatNumber(phoneData);
        title = activity.getString(R.string.contents_phone);
      }
      break;

    case Contents.Type.SMS:
      String smsData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (smsData != null) {
        contents = "sms:" + smsData;
        displayContents = PhoneNumberUtils.formatNumber(smsData);
        title = activity.getString(R.string.contents_sms);
      }
      break;

    case Contents.Type.CONTACT:
      Bundle contactBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (contactBundle != null) {

        String name = contactBundle.getString(ContactsContract.Intents.Insert.NAME);
        String organization = contactBundle.getString(ContactsContract.Intents.Insert.COMPANY);
        String address = contactBundle.getString(ContactsContract.Intents.Insert.POSTAL);
        List<String> phones = getAllBundleValues(contactBundle, Contents.PHONE_KEYS);
        List<String> phoneTypes = getAllBundleValues(contactBundle, Contents.PHONE_TYPE_KEYS);
        List<String> emails = getAllBundleValues(contactBundle, Contents.EMAIL_KEYS);
        String url = contactBundle.getString(Contents.URL_KEY);
        List<String> urls = url == null ? null : Collections.singletonList(url);
        String note = contactBundle.getString(Contents.NOTE_KEY);

        ContactEncoder encoder = useVCard ? new VCardContactEncoder() : new MECARDContactEncoder();
        String[] encoded = encoder.encode(Collections.singletonList(name),
                                          organization,
                                          Collections.singletonList(address),
                                          phones,
                                          phoneTypes,
                                          emails,
                                          urls,
                                          note);
        // Make sure we've encoded at least one field.
        if (!encoded[1].isEmpty()) {
          contents = encoded[0];
          displayContents = encoded[1];
          title = activity.getString(R.string.contents_contact);
        }

      }
      break;

    case Contents.Type.LOCATION:
      Bundle locationBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (locationBundle != null) {
        // These must use Bundle.getFloat(), not getDouble(), it's part of the API.
        float latitude = locationBundle.getFloat("LAT", Float.MAX_VALUE);
        float longitude = locationBundle.getFloat("LONG", Float.MAX_VALUE);
        if (latitude != Float.MAX_VALUE && longitude != Float.MAX_VALUE) {
          contents = "geo:" + latitude + ',' + longitude;
          displayContents = latitude + "," + longitude;
          title = activity.getString(R.string.contents_location);
        }
      }
      break;
  }
}
 
源代码25 项目: weex   文件: QRCodeEncoder.java
private void encodeQRCodeContents(Intent intent, String type) {
  switch (type) {
    case Contents.Type.TEXT:
      String textData = intent.getStringExtra(Intents.Encode.DATA);
      if (textData != null && !textData.isEmpty()) {
        contents = textData;
        displayContents = textData;
        title = activity.getString(R.string.contents_text);
      }
      break;

    case Contents.Type.EMAIL:
      String emailData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (emailData != null) {
        contents = "mailto:" + emailData;
        displayContents = emailData;
        title = activity.getString(R.string.contents_email);
      }
      break;

    case Contents.Type.PHONE:
      String phoneData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (phoneData != null) {
        contents = "tel:" + phoneData;
        displayContents = PhoneNumberUtils.formatNumber(phoneData);
        title = activity.getString(R.string.contents_phone);
      }
      break;

    case Contents.Type.SMS:
      String smsData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (smsData != null) {
        contents = "sms:" + smsData;
        displayContents = PhoneNumberUtils.formatNumber(smsData);
        title = activity.getString(R.string.contents_sms);
      }
      break;

    case Contents.Type.CONTACT:
      Bundle contactBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (contactBundle != null) {

        String name = contactBundle.getString(ContactsContract.Intents.Insert.NAME);
        String organization = contactBundle.getString(ContactsContract.Intents.Insert.COMPANY);
        String address = contactBundle.getString(ContactsContract.Intents.Insert.POSTAL);
        List<String> phones = getAllBundleValues(contactBundle, Contents.PHONE_KEYS);
        List<String> phoneTypes = getAllBundleValues(contactBundle, Contents.PHONE_TYPE_KEYS);
        List<String> emails = getAllBundleValues(contactBundle, Contents.EMAIL_KEYS);
        String url = contactBundle.getString(Contents.URL_KEY);
        List<String> urls = url == null ? null : Collections.singletonList(url);
        String note = contactBundle.getString(Contents.NOTE_KEY);

        ContactEncoder encoder = useVCard ? new VCardContactEncoder() : new MECARDContactEncoder();
        String[] encoded = encoder.encode(Collections.singletonList(name),
                                          organization,
                                          Collections.singletonList(address),
                                          phones,
                                          phoneTypes,
                                          emails,
                                          urls,
                                          note);
        // Make sure we've encoded at least one field.
        if (!encoded[1].isEmpty()) {
          contents = encoded[0];
          displayContents = encoded[1];
          title = activity.getString(R.string.contents_contact);
        }

      }
      break;

    case Contents.Type.LOCATION:
      Bundle locationBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (locationBundle != null) {
        // These must use Bundle.getFloat(), not getDouble(), it's part of the API.
        float latitude = locationBundle.getFloat("LAT", Float.MAX_VALUE);
        float longitude = locationBundle.getFloat("LONG", Float.MAX_VALUE);
        if (latitude != Float.MAX_VALUE && longitude != Float.MAX_VALUE) {
          contents = "geo:" + latitude + ',' + longitude;
          displayContents = latitude + "," + longitude;
          title = activity.getString(R.string.contents_location);
        }
      }
      break;
  }
}
 
源代码26 项目: Study_Android_Demo   文件: QRCodeEncoder.java
private void encodeQRCodeContents(Intent intent, String type) {
  switch (type) {
    case Contents.Type.TEXT:
      String textData = intent.getStringExtra(Intents.Encode.DATA);
      if (textData != null && !textData.isEmpty()) {
        contents = textData;
        displayContents = textData;
        title = activity.getString(R.string.contents_text);
      }
      break;

    case Contents.Type.EMAIL:
      String emailData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (emailData != null) {
        contents = "mailto:" + emailData;
        displayContents = emailData;
        title = activity.getString(R.string.contents_email);
      }
      break;

    case Contents.Type.PHONE:
      String phoneData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (phoneData != null) {
        contents = "tel:" + phoneData;
        displayContents = PhoneNumberUtils.formatNumber(phoneData);
        title = activity.getString(R.string.contents_phone);
      }
      break;

    case Contents.Type.SMS:
      String smsData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (smsData != null) {
        contents = "sms:" + smsData;
        displayContents = PhoneNumberUtils.formatNumber(smsData);
        title = activity.getString(R.string.contents_sms);
      }
      break;

    case Contents.Type.CONTACT:
      Bundle contactBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (contactBundle != null) {

        String name = contactBundle.getString(ContactsContract.Intents.Insert.NAME);
        String organization = contactBundle.getString(ContactsContract.Intents.Insert.COMPANY);
        String address = contactBundle.getString(ContactsContract.Intents.Insert.POSTAL);
        List<String> phones = getAllBundleValues(contactBundle, Contents.PHONE_KEYS);
        List<String> phoneTypes = getAllBundleValues(contactBundle, Contents.PHONE_TYPE_KEYS);
        List<String> emails = getAllBundleValues(contactBundle, Contents.EMAIL_KEYS);
        String url = contactBundle.getString(Contents.URL_KEY);
        List<String> urls = url == null ? null : Collections.singletonList(url);
        String note = contactBundle.getString(Contents.NOTE_KEY);

        ContactEncoder encoder = useVCard ? new VCardContactEncoder() : new MECARDContactEncoder();
        String[] encoded = encoder.encode(Collections.singletonList(name),
                                          organization,
                                          Collections.singletonList(address),
                                          phones,
                                          phoneTypes,
                                          emails,
                                          urls,
                                          note);
        // Make sure we've encoded at least one field.
        if (!encoded[1].isEmpty()) {
          contents = encoded[0];
          displayContents = encoded[1];
          title = activity.getString(R.string.contents_contact);
        }

      }
      break;

    case Contents.Type.LOCATION:
      Bundle locationBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (locationBundle != null) {
        // These must use Bundle.getFloat(), not getDouble(), it's part of the API.
        float latitude = locationBundle.getFloat("LAT", Float.MAX_VALUE);
        float longitude = locationBundle.getFloat("LONG", Float.MAX_VALUE);
        if (latitude != Float.MAX_VALUE && longitude != Float.MAX_VALUE) {
          contents = "geo:" + latitude + ',' + longitude;
          displayContents = latitude + "," + longitude;
          title = activity.getString(R.string.contents_location);
        }
      }
      break;
  }
}
 
源代码27 项目: barcodescanner-lib-aar   文件: QRCodeEncoder.java
private void encodeQRCodeContents(Intent intent, String type) {
  switch (type) {
    case Contents.Type.TEXT:
      String textData = intent.getStringExtra(Intents.Encode.DATA);
      if (textData != null && !textData.isEmpty()) {
        contents = textData;
        displayContents = textData;
        title = activity.getString(R.string.contents_text);
      }
      break;

    case Contents.Type.EMAIL:
      String emailData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (emailData != null) {
        contents = "mailto:" + emailData;
        displayContents = emailData;
        title = activity.getString(R.string.contents_email);
      }
      break;

    case Contents.Type.PHONE:
      String phoneData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (phoneData != null) {
        contents = "tel:" + phoneData;
        displayContents = PhoneNumberUtils.formatNumber(phoneData);
        title = activity.getString(R.string.contents_phone);
      }
      break;

    case Contents.Type.SMS:
      String smsData = ContactEncoder.trim(intent.getStringExtra(Intents.Encode.DATA));
      if (smsData != null) {
        contents = "sms:" + smsData;
        displayContents = PhoneNumberUtils.formatNumber(smsData);
        title = activity.getString(R.string.contents_sms);
      }
      break;

    case Contents.Type.CONTACT:
      Bundle contactBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (contactBundle != null) {

        String name = contactBundle.getString(ContactsContract.Intents.Insert.NAME);
        String organization = contactBundle.getString(ContactsContract.Intents.Insert.COMPANY);
        String address = contactBundle.getString(ContactsContract.Intents.Insert.POSTAL);
        List<String> phones = getAllBundleValues(contactBundle, Contents.PHONE_KEYS);
        List<String> phoneTypes = getAllBundleValues(contactBundle, Contents.PHONE_TYPE_KEYS);
        List<String> emails = getAllBundleValues(contactBundle, Contents.EMAIL_KEYS);
        String url = contactBundle.getString(Contents.URL_KEY);
        List<String> urls = url == null ? null : Collections.singletonList(url);
        String note = contactBundle.getString(Contents.NOTE_KEY);

        ContactEncoder encoder = useVCard ? new VCardContactEncoder() : new MECARDContactEncoder();
        String[] encoded = encoder.encode(Collections.singletonList(name),
                                          organization,
                                          Collections.singletonList(address),
                                          phones,
                                          phoneTypes,
                                          emails,
                                          urls,
                                          note);
        // Make sure we've encoded at least one field.
        if (!encoded[1].isEmpty()) {
          contents = encoded[0];
          displayContents = encoded[1];
          title = activity.getString(R.string.contents_contact);
        }

      }
      break;

    case Contents.Type.LOCATION:
      Bundle locationBundle = intent.getBundleExtra(Intents.Encode.DATA);
      if (locationBundle != null) {
        // These must use Bundle.getFloat(), not getDouble(), it's part of the API.
        float latitude = locationBundle.getFloat("LAT", Float.MAX_VALUE);
        float longitude = locationBundle.getFloat("LONG", Float.MAX_VALUE);
        if (latitude != Float.MAX_VALUE && longitude != Float.MAX_VALUE) {
          contents = "geo:" + latitude + ',' + longitude;
          displayContents = latitude + "," + longitude;
          title = activity.getString(R.string.contents_location);
        }
      }
      break;
  }
}
 
 类所在包
 同包方法