List of usage examples for android.net Uri encode
public static String encode(String s)
From source file:com.google.android.dialer.provider.DialerProvider.java
@Override public Cursor query(Uri uri, final String[] projection, String selection, String[] selectionArgs, String sortOrder) {// ww w . ja v a 2s . c o m if (Log.isLoggable("DialerProvider", 2)) { Log.v("DialerProvider", "query: " + uri); } switch (sURIMatcher.match(uri)) { case 0: Context context = getContext(); if (!GoogleLocationSettingHelper.isGoogleLocationServicesEnabled(context) || !GoogleLocationSettingHelper.isSystemLocationSettingEnabled(context)) { if (Log.isLoggable("DialerProvider", Log.VERBOSE)) { Log.v("DialerProvider", "Location settings is disabled, ignoring query."); } return null; } final Location lastLocation = getLastLocation(); if (lastLocation == null) { if (Log.isLoggable("DialerProvider", Log.VERBOSE)) { Log.v("DialerProvider", "No location available, ignoring query."); } return null; } final String filter = Uri.encode(uri.getLastPathSegment()); String limit = uri.getQueryParameter("limit"); try { final int limitInt; if (limit == null) { limitInt = -1; } else { limitInt = Integer.parseInt(limit); } return execute(new Callable<Cursor>() { @Override public Cursor call() { return handleFilter(projection, filter, limitInt, lastLocation); } }, "FilterThread", 10000L, TimeUnit.MILLISECONDS); } catch (NumberFormatException e) { Log.e("DialerProvider", "query: invalid limit parameter: '" + limit + "'"); } break; } // TODO: Is this acceptable? return null; }
From source file:android.com.example.contactslist.ui.ContactDetailFragment.java
/** * Constructs a geo scheme Uri from a postal address. * * @param postalAddress A postal address. * @return the geo:// Uri for the postal address. *//*from w w w .j av a2s . c o m*/ private Uri constructGeoUri(String postalAddress) { // Concatenates the geo:// prefix to the postal address. The postal address must be // converted to Uri format and encoded for special characters. return Uri.parse(GEO_URI_SCHEME_PREFIX + Uri.encode(postalAddress)); }
From source file:miguelmaciel.play.anonymouscall.ui.ContactsListFragment.java
private void callPhoneNumber(String phoneNumber) { Intent intent = new Intent(Intent.ACTION_CALL); //Or replace the # by %23 intent.setData(Uri.parse("tel:" + Uri.encode("#31#") + phoneNumber)); startActivity(intent);//from www .ja va 2 s . co m }
From source file:com.radar.niyo.contacts.ContactsListFragment.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { // If this is the loader for finding contacts in the Contacts Provider // (the only one supported) if (id == ContactsQuery.QUERY_ID) { Uri contentUri;//from w ww. j a v a 2 s .c o m // There are two types of searches, one which displays all contacts and // one which filters contacts by a search query. If mSearchTerm is set // then a search query has been entered and the latter should be used. // if (mSearchTerm == null) { // // Since there's no search string, use the content URI that searches the entire // // Contacts table // contentUri = ContactsQuery.CONTENT_URI; // } else { // // Since there's a search string, use the special content Uri that searches the // // Contacts table. The URI consists of a base Uri and the search string. // contentUri = // Uri.withAppendedPath(ContactsQuery.FILTER_URI, Uri.encode(mSearchTerm)); // } if (mSearchTerm != null) { contentUri = Uri.withAppendedPath(CommonDataKinds.Email.CONTENT_FILTER_URI, Uri.encode(mSearchTerm)); } else { contentUri = CommonDataKinds.Email.CONTENT_URI; } // Returns a new CursorLoader for querying the Contacts table. No arguments are used // for the selection clause. The search string is either encoded onto the content URI, // or no contacts search string is used. The other search criteria are constants. See // the ContactsQuery interface. return new CursorLoader(getActivity(), contentUri, ContactsQuery.PROJECTION, ContactsQuery.SELECTION, null, ContactsQuery.SORT_ORDER); } Log.e(TAG, "onCreateLoader - incorrect ID provided (" + id + ")"); return null; }
From source file:net.ddns.mlsoftlaberge.contactslist.ui.ContactsListFragment.java
@Override public Loader<Cursor> onCreateLoader(int id, Bundle args) { // If this is the loader for finding contacts in the Contacts Provider // (the only one supported) if (id == ContactsQuery.QUERY_ID) { Uri contentUri;//from ww w . j av a2s . c om // There are two types of searches, one which displays all contacts and // one which filters contacts by a search query. If mSearchTerm is set // then a search query has been entered and the latter should be used. if (mSearchTerm == null) { // Since there's no search string, use the content URI that searches the entire // Contacts table contentUri = ContactsQuery.CONTENT_URI; } else { // Since there's a search string, use the special content Uri that searches the // Contacts table. The URI consists of a base Uri and the search string. contentUri = Uri.withAppendedPath(ContactsQuery.FILTER_URI, Uri.encode(mSearchTerm)); } // Returns a new CursorLoader for querying the Contacts table. No arguments are used // for the selection clause. The search string is either encoded onto the content URI, // or no contacts search string is used. The other search criteria are constants. See // the ContactsQuery interface. if (starredfind == 0) { return new CursorLoader(getActivity(), contentUri, ContactsQuery.PROJECTION, ContactsQuery.SELECTION, null, ContactsQuery.SORT_ORDER); } else { return new CursorLoader(getActivity(), contentUri, ContactsQuery.PROJECTION, ContactsQuery.SELECTION2, null, ContactsQuery.SORT_ORDER); } } Log.e(TAG, "onCreateLoader - incorrect ID provided (" + id + ")"); return null; }
From source file:group.pals.android.lib.ui.filechooser.utils.ui.bookmark.BookmarkFragment.java
/** * Shows a dialog to let user enter new name or change current name of a * bookmark.//from www . java2 s . co m * * @param context * {@link Context} * @param providerId * the provider ID. * @param id * the bookmark ID. * @param uri * the URI to the bookmark. * @param name * the name. To enter new name, this is the suggested name you * provide. To rename, this is the old name. */ public static void doEnterNewNameOrRenameBookmark(final Context context, final String providerId, final int id, final Uri uri, final String name) { final AlertDialog dialog = Dlg.newDlg(context); View view = LayoutInflater.from(context).inflate(R.layout.afc_simple_text_input_view, null); final EditText textName = (EditText) view.findViewById(R.id.afc_text1); textName.setText(name); textName.selectAll(); textName.setHint(R.string.afc_hint_new_name); textName.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_DONE) { Ui.showSoftKeyboard(textName, false); Button btn = dialog.getButton(DialogInterface.BUTTON_POSITIVE); if (btn.isEnabled()) btn.performClick(); return true; } return false; }// onEditorAction() }); dialog.setView(view); dialog.setIcon(R.drawable.afc_bookmarks_dark); dialog.setTitle(id < 0 ? R.string.afc_title_new_bookmark : R.string.afc_title_rename); dialog.setButton(DialogInterface.BUTTON_POSITIVE, context.getString(android.R.string.ok), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { String newName = textName.getText().toString().trim(); if (android.text.TextUtils.isEmpty(newName)) { Dlg.toast(context, R.string.afc_msg_bookmark_name_is_invalid, Dlg._LengthShort); return; } Ui.showSoftKeyboard(textName, false); ContentValues values = new ContentValues(); values.put(BookmarkContract.Bookmark._ColumnName, newName); if (id >= 0) { values.put(BookmarkContract.Bookmark._ColumnModificationTime, DbUtils.formatNumber(new Date().getTime())); context.getContentResolver() .update(Uri.withAppendedPath(BookmarkContract.Bookmark._ContentIdUriBase, Uri.encode(Integer.toString(id))), values, null, null); } else { /* * Check if the URI exists or doesn't. If it exists, * update it instead of inserting the new one. */ Cursor cursor = context.getContentResolver().query( BookmarkContract.Bookmark._ContentUri, null, String.format("%s = %s AND %s LIKE %s", BookmarkContract.Bookmark._ColumnProviderId, DatabaseUtils.sqlEscapeString(providerId), BookmarkContract.Bookmark._ColumnUri, DatabaseUtils.sqlEscapeString(uri.toString())), null, null); try { if (cursor != null && cursor.moveToFirst()) { values.put(BookmarkContract.Bookmark._ColumnModificationTime, DbUtils.formatNumber(new Date().getTime())); context.getContentResolver().update( Uri.withAppendedPath(BookmarkContract.Bookmark._ContentIdUriBase, Uri.encode(cursor.getString( cursor.getColumnIndex(BookmarkContract.Bookmark._ID)))), values, null, null); } else { values.put(BookmarkContract.Bookmark._ColumnProviderId, providerId); values.put(BookmarkContract.Bookmark._ColumnUri, uri.toString()); context.getContentResolver().insert(BookmarkContract.Bookmark._ContentUri, values); } } finally { if (cursor != null) cursor.close(); } } Dlg.toast(context, context.getString(R.string.afc_msg_done), Dlg._LengthShort); }// onClick() }); dialog.show(); Ui.showSoftKeyboard(textName, true); final Button buttonOk = dialog.getButton(DialogInterface.BUTTON_POSITIVE); buttonOk.setEnabled(id < 0); textName.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { // TODO Auto-generated method stub } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { // TODO Auto-generated method stub } @Override public void afterTextChanged(Editable s) { String newName = s.toString().trim(); boolean enabled = !android.text.TextUtils.isEmpty(newName); buttonOk.setEnabled(enabled); /* * If renaming, only enable button OK if new name is not equal * to the old one. */ if (enabled && id >= 0) buttonOk.setEnabled(!newName.equals(name)); } }); }
From source file:com.wso2.mobile.mdm.services.Operation.java
@SuppressWarnings("static-access") @TargetApi(Build.VERSION_CODES.ICE_CREAM_SANDWICH) public void doTask(String code_in, String data_in, int req_mode) { String code_input = code_in;//from ww w. ja v a2s . co m String data_input = data_in; String notification = ""; String ssid = ""; String password = ""; devicePolicyManager = (DevicePolicyManager) context.getSystemService(Context.DEVICE_POLICY_SERVICE); appList = new ApplicationManager(context); deviceInfo = new DeviceInfo(context); gps = new GPSTracker(context); smsManager = SmsManager.getDefault(); conversations = new TrackCallSMS(context); deviceState = new PhoneState(context); if (code_input.equals(CommonUtilities.OPERATION_DEVICE_INFO)) { PhoneState phoneState = new PhoneState(context); JSONObject obj = new JSONObject(); JSONObject battery_obj = new JSONObject(); JSONObject inmemory_obj = new JSONObject(); JSONObject exmemory_obj = new JSONObject(); JSONObject location_obj = new JSONObject(); double latitude = 0; double longitude = 0; try { latitude = gps.getLatitude(); longitude = gps.getLongitude(); int batteryLevel = (int) Math.floor(phoneState.getBatteryLevel()); battery_obj.put("level", batteryLevel); inmemory_obj.put("total", deviceInfo.getTotalInternalMemorySize()); inmemory_obj.put("available", deviceInfo.getAvailableInternalMemorySize()); exmemory_obj.put("total", deviceInfo.getTotalExternalMemorySize()); exmemory_obj.put("available", deviceInfo.getAvailableExternalMemorySize()); location_obj.put("latitude", latitude); location_obj.put("longitude", longitude); obj.put("battery", battery_obj); obj.put("internal_memory", inmemory_obj); obj.put("external_memory", exmemory_obj); obj.put("location_obj", location_obj); obj.put("operator", deviceInfo.getNetworkOperatorName()); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); params.put("data", obj.toString()); Map<String, String> as = new HashMap<String, String>(); as.put("all", params.toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Battery Level : " + phoneState.getBatteryLevel() + ", Total Memory : " + deviceInfo.formatSizeGB(deviceInfo.getTotalInternalMemorySize() + deviceInfo.getTotalExternalMemorySize()) + ", Available Memory : " + deviceInfo.formatSizeGB(deviceInfo.getAvailableInternalMemorySize() + deviceInfo.getAvailableExternalMemorySize()), null, null); } } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_DEVICE_LOCATION)) { LocationServices ls = new LocationServices(context); Log.v("Latitude", ls.getLatitude()); double latitude = 0; double longitude = 0; JSONObject obj = new JSONObject(); try { latitude = gps.getLatitude(); longitude = gps.getLongitude(); obj.put("latitude", latitude); obj.put("longitude", longitude); Map<String, String> params = new HashMap<String, String>(); params.put("code", CommonUtilities.OPERATION_DEVICE_LOCATION); params.put("msgID", token); params.put("status", "200"); params.put("data", obj.toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Longitude : " + longitude + ",Latitude : " + latitude, null, null); } } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_GET_APPLICATION_LIST)) { ArrayList<PInfo> apps = appList.getInstalledApps(false); /* * false = * no system * packages */ JSONArray jsonArray = new JSONArray(); int max = apps.size(); String apz = ""; Log.e("APP TOTAL : ", "" + max); for (int i = 0; i < max; i++) { JSONObject jsonObj = new JSONObject(); try { jsonObj.put("name", apps.get(i).appname); jsonObj.put("package", apps.get(i).pname); jsonObj.put("icon", apps.get(i).icon); apz += apps.get(i).appname + " ,"; } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } jsonArray.put(jsonObj); } JSONObject appsObj = new JSONObject(); try { appsObj.put("apps", jsonArray); Map<String, String> params = new HashMap<String, String>(); params.put("code", CommonUtilities.OPERATION_GET_APPLICATION_LIST); params.put("msgID", token); params.put("status", "200"); params.put("data", Uri.encode(jsonArray.toString())); Log.e("PASSING MSG ID : ", token); Log.e("PASSING CODE : ", code_input); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, apz, null, null); } } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_LOCK_DEVICE)) { Log.d(TAG, "Locking device now"); try { Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Device Locked Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, params.toString()); } devicePolicyManager.lockNow(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_WIPE_DATA)) { Log.d(TAG, "RESETing device now - all user data will be ERASED to factory settings"); String pin = null; SharedPreferences mainPref = context.getSharedPreferences("com.mdm", Context.MODE_PRIVATE); String pinSaved = mainPref.getString("pin", ""); try { JSONObject jobj = new JSONObject(data_input); pin = (String) jobj.get("pin"); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); if (pin.trim().equals(pinSaved.trim())) { params.put("status", "200"); } else { params.put("status", "400"); } if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { if (pin.trim().equals(pinSaved.trim())) { smsManager.sendTextMessage(recepient, null, "Device Wiped Successfully", null, null); } else { smsManager.sendTextMessage(recepient, null, "Wrong PIN", null, null); } } if (pin.trim().equals(pinSaved.trim())) { Toast.makeText(context, "Device is being wiped", Toast.LENGTH_LONG).show(); startUnRegistration(context); try { Thread.sleep(4000); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } devicePolicyManager.wipeData(ACTIVATION_REQUEST); } else { Toast.makeText(context, "Device wipe failed due to wrong PIN", Toast.LENGTH_LONG).show(); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_CLEAR_PASSWORD)) { ComponentName demoDeviceAdmin = new ComponentName(context, WSO2DeviceAdminReceiver.class); try { Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Lock code cleared Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, params.toString()); } devicePolicyManager.setPasswordQuality(demoDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED); devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, 0); devicePolicyManager.resetPassword("", DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY); devicePolicyManager.lockNow(); devicePolicyManager.setPasswordQuality(demoDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_NOTIFICATION)) { JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (jobj.get("notification").toString() != null || jobj.get("notification").toString().equals("")) { notification = jobj.get("notification").toString(); } else if (jobj.get("Notification").toString() != null || jobj.get("Notification").toString().equals("")) { notification = jobj.get("Notification").toString(); } else { notification = ""; } Log.v("Notification", notification); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Notification Receieved Successfully", null, null); } Intent intent = new Intent(context, AlertActivity.class); intent.putExtra("message", notification); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_WIFI)) { boolean wifistatus = false; JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (!jobj.isNull("ssid")) { ssid = (String) jobj.get("ssid"); } if (!jobj.isNull("password")) { password = (String) jobj.get("password"); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } Map<String, String> inparams = new HashMap<String, String>(); inparams.put("code", code_input); inparams.put("msgID", token); WiFiConfig config = new WiFiConfig(context); try { wifistatus = config.saveWEPConfig(ssid, password); if (wifistatus) { inparams.put("status", "200"); } else { inparams.put("status", "400"); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(inparams, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "WiFi Configured Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, inparams.toString()); } } } else if (code_input.equals(CommonUtilities.OPERATION_DISABLE_CAMERA)) { boolean camFunc = false; JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (!jobj.isNull("function") && jobj.get("function").toString().equalsIgnoreCase("enable")) { camFunc = false; } else if (!jobj.isNull("function") && jobj.get("function").toString().equalsIgnoreCase("disable")) { camFunc = true; } else if (!jobj.isNull("function")) { camFunc = Boolean.parseBoolean(jobj.get("function").toString()); } ComponentName cameraAdmin = new ComponentName(context, WSO2DeviceAdminReceiver.class); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); String cammode = "Disabled"; if (camFunc) { cammode = "Disabled"; } else { cammode = "Enabled"; } if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Camera " + cammode + " Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, params.toString()); } if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { devicePolicyManager.setCameraDisabled(cameraAdmin, camFunc); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_INSTALL_APPLICATION) || code_input.equals(CommonUtilities.OPERATION_INSTALL_APPLICATION_BUNDLE)) { try { if (code_input.equals(CommonUtilities.OPERATION_INSTALL_APPLICATION)) { JSONObject jobj = new JSONObject(data_input); installApplication(jobj, code_input); } else if (code_input.equals(CommonUtilities.OPERATION_INSTALL_APPLICATION_BUNDLE)) { JSONArray jArray = null; jArray = new JSONArray(data_input); for (int i = 0; i < jArray.length(); i++) { JSONObject appObj = (JSONObject) jArray.getJSONObject(i); installApplication(appObj, code_input); } } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_UNINSTALL_APPLICATION)) { String packageName = ""; JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); packageName = (String) jobj.get("identity"); Log.v("Package Name : ", packageName); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Application uninstalled Successfully", null, null); } appList.unInstallApplication(packageName); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_ENCRYPT_STORAGE)) { boolean encryptFunc = true; String pass = ""; JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (!jobj.isNull("function") && jobj.get("function").toString().equalsIgnoreCase("encrypt")) { encryptFunc = true; } else if (!jobj.isNull("function") && jobj.get("function").toString().equalsIgnoreCase("decrypt")) { encryptFunc = false; } else if (!jobj.isNull("function")) { encryptFunc = Boolean.parseBoolean(jobj.get("function").toString()); } ComponentName admin = new ComponentName(context, WSO2DeviceAdminReceiver.class); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); if (encryptFunc && devicePolicyManager .getStorageEncryptionStatus() != devicePolicyManager.ENCRYPTION_STATUS_UNSUPPORTED) { if (devicePolicyManager .getStorageEncryptionStatus() == devicePolicyManager.ENCRYPTION_STATUS_INACTIVE) { if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { devicePolicyManager.setStorageEncryption(admin, encryptFunc); Intent intent = new Intent(DevicePolicyManager.ACTION_START_ENCRYPTION); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(intent); } } } else if (!encryptFunc && devicePolicyManager .getStorageEncryptionStatus() != devicePolicyManager.ENCRYPTION_STATUS_UNSUPPORTED) { if (devicePolicyManager .getStorageEncryptionStatus() == devicePolicyManager.ENCRYPTION_STATUS_ACTIVE || devicePolicyManager .getStorageEncryptionStatus() == devicePolicyManager.ENCRYPTION_STATUS_ACTIVATING) { if (android.os.Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) { devicePolicyManager.setStorageEncryption(admin, encryptFunc); } } } if (devicePolicyManager .getStorageEncryptionStatus() != devicePolicyManager.ENCRYPTION_STATUS_UNSUPPORTED) { params.put("status", "200"); } else { params.put("status", "400"); } if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Storage Encrypted Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, params.toString()); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_MUTE)) { Log.d(TAG, "Muting Device"); try { Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Device Muted Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, params.toString()); } muteDevice(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_TRACK_CALLS)) { try { Map<String, String> params = new HashMap<String, String>(); params.put("code", CommonUtilities.OPERATION_TRACK_CALLS); params.put("msgID", token); params.put("status", "200"); params.put("data", conversations.getCallDetails().toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, conversations.getCallDetails().toString(), null, null); } } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_TRACK_SMS)) { int MESSAGE_TYPE_INBOX = 1; int MESSAGE_TYPE_SENT = 2; JSONObject smsObj = new JSONObject(); try { smsObj.put("inbox", conversations.getSMS(MESSAGE_TYPE_INBOX)); smsObj.put("sent", conversations.getSMS(MESSAGE_TYPE_SENT)); Map<String, String> params = new HashMap<String, String>(); params.put("code", CommonUtilities.OPERATION_TRACK_SMS); params.put("msgID", token); params.put("status", "200"); params.put("data", smsObj.toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, smsObj.toString(), null, null); } } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_DATA_USAGE)) { JSONObject dataObj = new JSONObject(); try { Map<String, String> params = new HashMap<String, String>(); params.put("code", CommonUtilities.OPERATION_DATA_USAGE); params.put("msgID", token); params.put("status", "200"); params.put("data", deviceState.takeDataUsageSnapShot().toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, dataObj.toString(), null, null); } } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_STATUS)) { boolean encryptStatus = false; boolean passCodeStatus = false; try { if (devicePolicyManager .getStorageEncryptionStatus() != devicePolicyManager.ENCRYPTION_STATUS_UNSUPPORTED) { if (devicePolicyManager .getStorageEncryptionStatus() == devicePolicyManager.ENCRYPTION_STATUS_ACTIVE || devicePolicyManager .getStorageEncryptionStatus() == devicePolicyManager.ENCRYPTION_STATUS_ACTIVATING) { encryptStatus = true; } else { encryptStatus = false; } } if (devicePolicyManager.isActivePasswordSufficient()) { passCodeStatus = true; } else { passCodeStatus = false; } } catch (Exception ex) { ex.printStackTrace(); passCodeStatus = false; } JSONObject dataObj = new JSONObject(); try { dataObj.put("encryption", encryptStatus); dataObj.put("passcode", passCodeStatus); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); params.put("data", dataObj.toString()); if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, dataObj.toString(), null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, params.toString()); } } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_WEBCLIP)) { String appUrl = ""; String title = ""; JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); Log.v("WEBCLIP DATA : ", data.toString()); appUrl = (String) jobj.get("identity"); title = (String) jobj.get("title"); Log.v("Web App URL : ", appUrl); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "WebClip created Successfully", null, null); } appList.createWebAppBookmark(appUrl, title); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_PASSWORD_POLICY)) { ComponentName demoDeviceAdmin = new ComponentName(context, WSO2DeviceAdminReceiver.class); int attempts, length, history, specialChars; String alphanumeric, complex; boolean b_alphanumeric, b_complex; long timout; Map<String, String> inparams = new HashMap<String, String>(); JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (!jobj.isNull("maxFailedAttempts") && jobj.get("maxFailedAttempts") != null) { attempts = Integer.parseInt((String) jobj.get("maxFailedAttempts")); devicePolicyManager.setMaximumFailedPasswordsForWipe(demoDeviceAdmin, attempts); } if (!jobj.isNull("minLength") && jobj.get("minLength") != null) { length = Integer.parseInt((String) jobj.get("minLength")); devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, length); } if (!jobj.isNull("pinHistory") && jobj.get("pinHistory") != null) { history = Integer.parseInt((String) jobj.get("pinHistory")); devicePolicyManager.setPasswordHistoryLength(demoDeviceAdmin, history); } if (!jobj.isNull("minComplexChars") && jobj.get("minComplexChars") != null) { specialChars = Integer.parseInt((String) jobj.get("minComplexChars")); devicePolicyManager.setPasswordMinimumSymbols(demoDeviceAdmin, specialChars); } if (!jobj.isNull("requireAlphanumeric") && jobj.get("requireAlphanumeric") != null) { if (jobj.get("requireAlphanumeric") instanceof String) { alphanumeric = (String) jobj.get("requireAlphanumeric"); if (alphanumeric.equals("true")) { devicePolicyManager.setPasswordQuality(demoDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC); } } else if (jobj.get("requireAlphanumeric") instanceof Boolean) { b_alphanumeric = jobj.getBoolean("requireAlphanumeric"); if (b_alphanumeric) { devicePolicyManager.setPasswordQuality(demoDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_ALPHANUMERIC); } } } if (!jobj.isNull("allowSimple") && jobj.get("allowSimple") != null) { if (jobj.get("allowSimple") instanceof String) { complex = (String) jobj.get("allowSimple"); if (!complex.equals("true")) { devicePolicyManager.setPasswordQuality(demoDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_COMPLEX); } } else if (jobj.get("allowSimple") instanceof Boolean) { b_complex = jobj.getBoolean("allowSimple"); if (!b_complex) { devicePolicyManager.setPasswordQuality(demoDeviceAdmin, DevicePolicyManager.PASSWORD_QUALITY_COMPLEX); } } } if (!jobj.isNull("maxPINAgeInDays") && jobj.get("maxPINAgeInDays") != null) { int daysOfExp = Integer.parseInt((String) jobj.get("maxPINAgeInDays")); timout = (long) (daysOfExp * 24 * 60 * 60 * 1000); devicePolicyManager.setPasswordExpirationTimeout(demoDeviceAdmin, timout); } SharedPreferences mainPref = context.getSharedPreferences("com.mdm", Context.MODE_PRIVATE); String policy = mainPref.getString("policy", ""); inparams.put("code", code_input); inparams.put("msgID", token); inparams.put("status", "200"); } catch (Exception e) { // TODO Auto-generated catch block params.put("status", "400"); e.printStackTrace(); } finally { try { if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(inparams, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Password Policies Successfully Set", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, inparams.toString()); } } catch (Exception ex) { ex.printStackTrace(); } } } else if (code_input.equals(CommonUtilities.OPERATION_EMAIL_CONFIGURATION)) { String emailname = "", emailtype = "", ic_username = "", ic_password = "", ic_hostname = ""; long timout; Map<String, String> inparams = new HashMap<String, String>(); JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (!jobj.isNull("type") && jobj.get("type") != null) { emailtype = (String) jobj.get("type"); } if (!jobj.isNull("displayname") && jobj.get("displayname") != null) { emailname = (String) jobj.get("displayname"); } if (!jobj.isNull("username") && jobj.get("username") != null) { ic_username = (String) jobj.get("username"); } if (!jobj.isNull("password") && jobj.get("password") != null) { ic_password = (String) jobj.get("password"); } if (emailtype.trim().equals("GMAIL")) { ic_hostname = "imap.googlemail.com"; } else if (emailtype.equals("YAHOO")) { ic_hostname = ""; } else if (emailtype.equals("HOTMAIL")) { ic_hostname = ""; } inparams.put("code", code_input); inparams.put("msgID", token); inparams.put("status", "200"); } catch (Exception e) { // TODO Auto-generated catch block params.put("status", "400"); e.printStackTrace(); } finally { try { if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(inparams, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Email Configured Successfully Set", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, inparams.toString()); } } catch (Exception ex) { ex.printStackTrace(); } } } else if (code_input.equals(CommonUtilities.OPERATION_INSTALL_GOOGLE_APP)) { String packageName = ""; JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); packageName = (String) jobj.get("package"); Log.v("Package Name : ", packageName); Map<String, String> params = new HashMap<String, String>(); params.put("code", code_input); params.put("msgID", token); params.put("status", "200"); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Application installed Successfully", null, null); } Intent intent = new Intent(Intent.ACTION_VIEW); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); intent.setData(Uri.parse("market://details?id=" + packageName)); context.startActivity(intent); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_CHANGE_LOCK_CODE)) { ComponentName demoDeviceAdmin = new ComponentName(context, WSO2DeviceAdminReceiver.class); devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, 3); String pass = ""; Map<String, String> inparams = new HashMap<String, String>(); JSONParser jp = new JSONParser(); try { JSONObject jobj = new JSONObject(data_input); if (!jobj.isNull("password")) { pass = (String) jobj.get("password"); } inparams.put("code", code_input); inparams.put("msgID", token); inparams.put("status", "200"); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(inparams, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Lock code changed Successfully", null, null); } if (!pass.equals("")) { devicePolicyManager.resetPassword(pass, DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY); devicePolicyManager.lockNow(); } } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } finally { try { if (req_mode == REQUEST_MODE_NORMAL) { if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(inparams, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Lock code changed Successfully", null, null); } } else { if (policy_count != 0) { policy_count++; } bundle_params.put("" + policy_count, inparams.toString()); } } catch (Exception ex) { ex.printStackTrace(); } } } else if (code_input.equals(CommonUtilities.OPERATION_POLICY_BUNDLE)) { Map<String, String> params = new HashMap<String, String>(); try { params.put("code", code); params.put("msgID", policy_token); params.put("status", "200"); params.put("data", bundle_params.toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Bundle Executed Successfully", null, null); } } catch (Exception ex) { ex.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_POLICY_MONITOR)) { JSONArray sendjArray; try { JSONObject jobj = new JSONObject(this.data); sendjArray = jobj.getJSONArray("policies"); int type = Integer.parseInt((String) jobj.get("type").toString().trim()); if (type != 1 && type != 2 && type != 3) { type = 1; } Log.e("PASSING MSG ID : ", policy_token); Log.e("PASSING CODE : ", code_input); Log.e("PASSING TYPE : ", String.valueOf(type)); PolicyTester tester = new PolicyTester(context, sendjArray, type, policy_token); } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_POLICY_REVOKE)) { try { Map<String, String> inparams = new HashMap<String, String>(); inparams.put("code", code_input); inparams.put("msgID", token); inparams.put("status", "200"); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(inparams, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, "Lock code changed Successfully", null, null); } revokePolicy(); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } } else if (code_input.equals(CommonUtilities.OPERATION_BLACKLIST_APPS)) { ArrayList<PInfo> apps = appList.getInstalledApps(false); /* * false = * no system * packages */ JSONArray jsonArray = new JSONArray(); int max = apps.size(); if (max > 10) { //max = 10; } String apz = ""; try { JSONObject appsObj = new JSONObject(data_input); JSONObject appObj = (JSONObject) appsObj.get("data"); String identity = (String) appObj.get("identity"); for (int j = 0; j < max; j++) { JSONObject jsonObj = new JSONObject(); try { jsonObj.put("name", apps.get(j).appname); jsonObj.put("package", apps.get(j).pname); if (identity.trim().equals(apps.get(j).pname)) { jsonObj.put("notviolated", false); jsonObj.put("package", apps.get(j).pname); } else { jsonObj.put("notviolated", true); } } catch (JSONException e) { // TODO Auto-generated catch block e.printStackTrace(); } jsonArray.put(jsonObj); } } catch (Exception ex) { ex.printStackTrace(); } JSONObject appsObj = new JSONObject(); try { appsObj.put("apps", jsonArray); Map<String, String> params = new HashMap<String, String>(); params.put("code", CommonUtilities.OPERATION_GET_APPLICATION_LIST); params.put("msgID", token); params.put("status", "200"); params.put("data", jsonArray.toString()); if (mode == CommonUtilities.MESSAGE_MODE_GCM) { ServerUtilities.pushData(params, context); } else if (mode == CommonUtilities.MESSAGE_MODE_SMS) { smsManager.sendTextMessage(recepient, null, apz, null, null); } SharedPreferences mainPref = context.getSharedPreferences("com.mdm", Context.MODE_PRIVATE); String policy = mainPref.getString("policy", ""); if (policy != null && policy != "") { if (apz != null || !apz.trim().equals("")) { } } } catch (JSONException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } } }
From source file:com.shafiq.myfeedle.core.MyfeedleComments.java
@Override public void onClick(View v) { if (v == mSend) { if ((mMessage.getText().toString() != null) && (mMessage.getText().toString().length() > 0) && (mSid != null) && (mEsid != null)) { mMessage.setEnabled(false);/*from w w w .j a v a2 s .c o m*/ mSend.setEnabled(false); // post or comment! final ProgressDialog loadingDialog = new ProgressDialog(this); final AsyncTask<Void, String, String> asyncTask = new AsyncTask<Void, String, String>() { @Override protected String doInBackground(Void... arg0) { List<NameValuePair> params; String message; String response = null; HttpPost httpPost; MyfeedleOAuth myfeedleOAuth; String serviceName = Myfeedle.getServiceName(getResources(), mService); publishProgress(serviceName); switch (mService) { case TWITTER: // limit tweets to 140, breaking up the message if necessary myfeedleOAuth = new MyfeedleOAuth(TWITTER_KEY, TWITTER_SECRET, mToken, mSecret); message = mMessage.getText().toString(); while (message.length() > 0) { final String send; if (message.length() > 140) { // need to break on a word int end = 0; int nextSpace = 0; for (int i = 0, i2 = message.length(); i < i2; i++) { end = nextSpace; if (message.substring(i, i + 1).equals(" ")) { nextSpace = i; } } // in case there are no spaces, just break on 140 if (end == 0) { end = 140; } send = message.substring(0, end); message = message.substring(end + 1); } else { send = message; message = ""; } httpPost = new HttpPost(String.format(TWITTER_UPDATE, TWITTER_BASE_URL)); // resolve Error 417 Expectation by Twitter httpPost.getParams().setBooleanParameter("http.protocol.expect-continue", false); params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair(Sstatus, send)); params.add(new BasicNameValuePair(Sin_reply_to_status_id, mSid)); try { httpPost.setEntity(new UrlEncodedFormEntity(params)); response = MyfeedleHttpClient.httpResponse(mHttpClient, myfeedleOAuth.getSignedRequest(httpPost)); } catch (UnsupportedEncodingException e) { Log.e(TAG, e.toString()); } } break; case FACEBOOK: httpPost = new HttpPost(String.format(FACEBOOK_COMMENTS, FACEBOOK_BASE_URL, mSid, Saccess_token, mToken)); params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair(Smessage, mMessage.getText().toString())); try { httpPost.setEntity(new UrlEncodedFormEntity(params)); response = MyfeedleHttpClient.httpResponse(mHttpClient, httpPost); } catch (UnsupportedEncodingException e) { Log.e(TAG, e.toString()); } break; case MYSPACE: myfeedleOAuth = new MyfeedleOAuth(MYSPACE_KEY, MYSPACE_SECRET, mToken, mSecret); try { httpPost = new HttpPost(String.format(MYSPACE_URL_STATUSMOODCOMMENTS, MYSPACE_BASE_URL, mEsid, mSid)); httpPost.setEntity(new StringEntity(String.format(MYSPACE_STATUSMOODCOMMENTS_BODY, mMessage.getText().toString()))); response = MyfeedleHttpClient.httpResponse(mHttpClient, myfeedleOAuth.getSignedRequest(httpPost)); } catch (IOException e) { Log.e(TAG, e.toString()); } break; case FOURSQUARE: try { message = URLEncoder.encode(mMessage.getText().toString(), "UTF-8"); httpPost = new HttpPost(String.format(FOURSQUARE_ADDCOMMENT, FOURSQUARE_BASE_URL, mSid, message, mToken)); response = MyfeedleHttpClient.httpResponse(mHttpClient, httpPost); } catch (UnsupportedEncodingException e) { Log.e(TAG, e.toString()); } break; case LINKEDIN: myfeedleOAuth = new MyfeedleOAuth(LINKEDIN_KEY, LINKEDIN_SECRET, mToken, mSecret); try { httpPost = new HttpPost( String.format(LINKEDIN_UPDATE_COMMENTS, LINKEDIN_BASE_URL, mSid)); httpPost.setEntity(new StringEntity( String.format(LINKEDIN_COMMENT_BODY, mMessage.getText().toString()))); httpPost.addHeader(new BasicHeader("Content-Type", "application/xml")); response = MyfeedleHttpClient.httpResponse(mHttpClient, myfeedleOAuth.getSignedRequest(httpPost)); } catch (IOException e) { Log.e(TAG, e.toString()); } break; case IDENTICA: // limit tweets to 140, breaking up the message if necessary myfeedleOAuth = new MyfeedleOAuth(IDENTICA_KEY, IDENTICA_SECRET, mToken, mSecret); message = mMessage.getText().toString(); while (message.length() > 0) { final String send; if (message.length() > 140) { // need to break on a word int end = 0; int nextSpace = 0; for (int i = 0, i2 = message.length(); i < i2; i++) { end = nextSpace; if (message.substring(i, i + 1).equals(" ")) { nextSpace = i; } } // in case there are no spaces, just break on 140 if (end == 0) { end = 140; } send = message.substring(0, end); message = message.substring(end + 1); } else { send = message; message = ""; } httpPost = new HttpPost(String.format(IDENTICA_UPDATE, IDENTICA_BASE_URL)); // resolve Error 417 Expectation by Twitter httpPost.getParams().setBooleanParameter("http.protocol.expect-continue", false); params = new ArrayList<NameValuePair>(); params.add(new BasicNameValuePair(Sstatus, send)); params.add(new BasicNameValuePair(Sin_reply_to_status_id, mSid)); try { httpPost.setEntity(new UrlEncodedFormEntity(params)); response = MyfeedleHttpClient.httpResponse(mHttpClient, myfeedleOAuth.getSignedRequest(httpPost)); } catch (UnsupportedEncodingException e) { Log.e(TAG, e.toString()); } } break; case GOOGLEPLUS: break; case CHATTER: httpPost = new HttpPost(String.format(CHATTER_URL_COMMENT, mChatterInstance, mSid, Uri.encode(mMessage.getText().toString()))); httpPost.setHeader("Authorization", "OAuth " + mChatterToken); response = MyfeedleHttpClient.httpResponse(mHttpClient, httpPost); break; } return ((response == null) && (mService == MYSPACE)) ? null : serviceName + " " + getString(response != null ? R.string.success : R.string.failure); } @Override protected void onProgressUpdate(String... params) { loadingDialog.setMessage(String.format(getString(R.string.sending), params[0])); } @Override protected void onPostExecute(String result) { if (result != null) { (Toast.makeText(MyfeedleComments.this, result, Toast.LENGTH_LONG)).show(); } else if (mService == MYSPACE) { // myspace permissions (Toast.makeText(MyfeedleComments.this, MyfeedleComments.this.getResources() .getStringArray(R.array.service_entries)[MYSPACE] + getString(R.string.failure) + " " + getString(R.string.myspace_permissions_message), Toast.LENGTH_LONG)).show(); } if (loadingDialog.isShowing()) loadingDialog.dismiss(); finish(); } }; loadingDialog.setMessage(getString(R.string.loading)); loadingDialog.setCancelable(true); loadingDialog.setOnCancelListener(new DialogInterface.OnCancelListener() { @Override public void onCancel(DialogInterface dialog) { if (!asyncTask.isCancelled()) asyncTask.cancel(true); } }); loadingDialog.setButton(ProgressDialog.BUTTON_NEGATIVE, getString(android.R.string.cancel), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.cancel(); } }); loadingDialog.show(); asyncTask.execute(); } else { (Toast.makeText(MyfeedleComments.this, "error parsing message body", Toast.LENGTH_LONG)).show(); mMessage.setEnabled(true); mSend.setEnabled(true); } } }
From source file:org.peterbaldwin.vlcremote.app.PlaybackActivity.java
@Override public boolean onKeyDown(int keyCode, KeyEvent event) { int c = event.getUnicodeChar(); if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) { if (mVolumeLevel != VOLUME_LEVEL_UNKNOWN) { setVolume(mVolumeLevel + 20); } else {//from ww w . ja v a 2 s. c om mMediaServer.status().command.volumeUp(); } return true; } else if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) { if (mVolumeLevel != VOLUME_LEVEL_UNKNOWN) { setVolume(mVolumeLevel - 20); } else { mMediaServer.status().command.volumeDown(); } return true; } else if (keyCode == KeyEvent.KEYCODE_DPAD_LEFT) { if (event.isAltPressed()) { mMediaServer.status().command.seek(Uri.encode("-".concat(Preferences.get(this).getSeekTime()))); return true; } else if (event.isShiftPressed()) { mMediaServer.status().command.seek(Uri.encode("-3")); return true; } else { mMediaServer.status().command.key("nav-left"); return true; } } else if (keyCode == KeyEvent.KEYCODE_DPAD_RIGHT) { if (event.isAltPressed()) { mMediaServer.status().command.seek(Uri.encode("+".concat(Preferences.get(this).getSeekTime()))); return true; } else if (event.isShiftPressed()) { mMediaServer.status().command.seek(Uri.encode("+3")); return true; } else { mMediaServer.status().command.key("nav-right"); return true; } } else if (keyCode == KeyEvent.KEYCODE_DPAD_UP) { mMediaServer.status().command.key("nav-up"); return true; } else if (keyCode == KeyEvent.KEYCODE_DPAD_DOWN) { mMediaServer.status().command.key("nav-down"); return true; } else if (keyCode == KeyEvent.KEYCODE_DPAD_CENTER) { mMediaServer.status().command.key("nav-activate"); return true; } else if (c == ' ') { mMediaServer.status().command.playback.pause(); return true; } else if (c == 's') { mMediaServer.status().command.playback.stop(); return true; } else if (c == 'p') { mMediaServer.status().command.playback.previous(); return true; } else if (c == 'n') { mMediaServer.status().command.playback.next(); return true; } else if (c == '+') { // TODO: Play faster return super.onKeyDown(keyCode, event); } else if (c == '-') { // TODO: Play slower return super.onKeyDown(keyCode, event); } else if (c == 'f') { mMediaServer.status().command.fullscreen(); return true; } else if (c == 'm') { mute(); return true; } else { return super.onKeyDown(keyCode, event); } }
From source file:com.haibison.android.anhuu.utils.ui.bookmark.BookmarkFragment.java
/** * Shows a dialog to let the user enter new name or change current name of a * bookmark./* w w w . j a v a2 s . c o m*/ * * @param context * {@link Context} * @param providerId * the provider ID. * @param id * the bookmark ID. * @param uri * the URI to the bookmark. * @param name * the name. To enter new name, this is the suggested name you * provide. To rename, this is the old name. */ public static void doEnterNewNameOrRenameBookmark(final Context context, final String providerId, final int id, final Uri uri, final String name) { final AlertDialog dialog = Dlg.newAlertDlg(context); View view = LayoutInflater.from(context).inflate(R.layout.anhuu_f5be488d_simple_text_input_view, null); final EditText textName = (EditText) view.findViewById(R.id.anhuu_f5be488d_text1); textName.setText(name); textName.selectAll(); textName.setHint(R.string.anhuu_f5be488d_hint_new_name); textName.setOnEditorActionListener(new TextView.OnEditorActionListener() { @Override public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { if (actionId == EditorInfo.IME_ACTION_DONE) { UI.showSoftKeyboard(textName, false); Button btn = dialog.getButton(DialogInterface.BUTTON_POSITIVE); if (btn.isEnabled()) btn.performClick(); return true; } return false; }// onEditorAction() }); dialog.setView(view); dialog.setIcon(R.drawable.anhuu_f5be488d_bookmarks_dark); dialog.setTitle(id < 0 ? R.string.anhuu_f5be488d_title_new_bookmark : R.string.anhuu_f5be488d_title_rename); dialog.setButton(DialogInterface.BUTTON_POSITIVE, context.getString(android.R.string.ok), new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { String newName = textName.getText().toString().trim(); if (android.text.TextUtils.isEmpty(newName)) { Dlg.toast(context, R.string.anhuu_f5be488d_msg_bookmark_name_is_invalid, Dlg.LENGTH_SHORT); return; } UI.showSoftKeyboard(textName, false); ContentValues values = new ContentValues(); values.put(BookmarkContract.COLUMN_NAME, newName); if (id >= 0) { values.put(BookmarkContract.COLUMN_MODIFICATION_TIME, DbUtils.formatNumber(new Date().getTime())); context.getContentResolver().update( ContentUris.withAppendedId(BookmarkContract.genContentIdUriBase(context), id), values, null, null); } else { /* * Check if the URI exists or doesn't. If it exists, * update it instead of inserting the new one. */ Cursor cursor = context.getContentResolver().query( BookmarkContract.genContentUri(context), null, String.format("%s = %s AND %s LIKE %s", BookmarkContract.COLUMN_PROVIDER_ID, DatabaseUtils.sqlEscapeString(providerId), BookmarkContract.COLUMN_URI, DatabaseUtils.sqlEscapeString(uri.toString())), null, null); try { if (cursor != null && cursor.moveToFirst()) { values.put(BookmarkContract.COLUMN_MODIFICATION_TIME, DbUtils.formatNumber(new Date().getTime())); context.getContentResolver().update( Uri.withAppendedPath(BookmarkContract.genContentIdUriBase(context), Uri.encode(cursor.getString( cursor.getColumnIndex(BookmarkContract._ID)))), values, null, null); } else { values.put(BookmarkContract.COLUMN_PROVIDER_ID, providerId); values.put(BookmarkContract.COLUMN_URI, uri.toString()); context.getContentResolver().insert(BookmarkContract.genContentUri(context), values); } } finally { if (cursor != null) cursor.close(); } } Dlg.toast(context, context.getString(R.string.anhuu_f5be488d_msg_done), Dlg.LENGTH_SHORT); }// onClick() }); dialog.show(); UI.showSoftKeyboard(textName, true); final Button buttonOk = dialog.getButton(DialogInterface.BUTTON_POSITIVE); buttonOk.setEnabled(id < 0); textName.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, int count) { // TODO Auto-generated method stub } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { // TODO Auto-generated method stub } @Override public void afterTextChanged(Editable s) { String newName = s.toString().trim(); boolean enabled = !android.text.TextUtils.isEmpty(newName); buttonOk.setEnabled(enabled); /* * If renaming, only enable button OK if new name is not equal * to the old one. */ if (enabled && id >= 0) buttonOk.setEnabled(!newName.equals(name)); } }); }