AndroidUtils
Lots of Android utils every project should have
Quick start
Add jcenter to your project's gradle file
allprojects {
repositories {
jcenter()
}
}
Gradle
compile 'com.github.shahar2k5:androidutils:1.0.1'
Maven
<dependency>
<groupId>com.github.shahar2k5</groupId>
<artifactId>androidutils</artifactId>
<version>1.0.1</version>
<type>pom</type>
</dependency>
Usage
A few examples on how to use the library
int sizeInPixels = SizeUtils.dpToPx(this, 20);
boolean hasNetwork = NetworkUtils.isNetworkAvailable(this);
ViewUtils.listViewScrollToBottom(listView, true);
IntentUtils.openPlayStoreAppPage(this);
DialogUtils.showOkDialog(this, dialogTitle, dialogMessage, new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
// do something when the OK button was clicked
}
});
API
» DateUtils
- Convert Date to string with long format ->
formatDateLong
- Check if the date is less than 7 days from now ->
isLessThanOneWeek
- Check if the specific date is today ->
isToday
- Is the specific date yesterday ->
isYesterday
- Check for a leap year ->
isLeapYear
- return date string from milliseconds ->
millisecondsToString
- create time in milliseconds from a formatted string ->
stringToMilliseconds
- create a date from formatted string ->
stringToDate
- Create a formatted date ->
dateToString
- Convert date object to milliseconds ->
dateToMilliseconds
- Convert milliseconds to date object ->
millisecondsToDate
- Convert milliseconds to specific time unit ->
millisecondsToTimeUnit
- Get current time in milliseconds ->
getCurrentTimeMillis
- Get current time in formatted string ->
getCurrentTimeString
- Get current time in date object ->
getCurrentTimeDate
- Calculate time interval from now ->
getTimeIntervalFromNow
- Calculate time interval between 2 dates ->
getTimeIntervalBetweenDates
» DialogUtils
- Show an Alert Dialog with one button ->
showOneButtonsDialog
- Show an Alert Dialog with two buttons ->
showTwoButtonsDialog
- Displays a dialog box with an OK button ->
showOkDialog
- Creates a dialog box with an OK button ->
createOkDialog
- Dismiss dialog safely ->
dismissDialogSafely
» EncryptionUtils
- Create MD5 String from string ->
getMD5String
- Create MD5 String with salt ->
getMD5String
- Create MD5 String from byte array ->
getMD5String
- Create MD5 String from byte array with salt ->
getMD5String
- Encrypt byte array ->
encryptMD5
- Create a MD5 String from file path ->
getMD5File
- Create a MD5 String from file ->
getMD5File
- Get SHA1 from String ->
getSHA
- Get SHA1 from byte array ->
getSHA
- Encrypt SHA1 ->
encryptSHA
- Convert bytes to Hex ->
bytesToHex
» ImageUtils
- Create a Bitmap from URI ->
getBitmapFromUri
- Get file system path from a URI ->
getRealPathFromURI
- Normalize a bitmap to 640px ->
normalize
- Normalize a bitmap to specific size ->
normalize
- Get image rotated by degree from metedata ->
getImageRotatedByMetadata
- Create a fullscreen image and punch a hole inside ->
punchARoundedHoleInABitmap
» IntentUtils
- Makes a call ->
callNumber
- Dial a number in the phone's keypad ->
dialNumber
- Open compose email activity ->
openComposeEmailActivity
- Open SMS activity to send SMS ->
openSendSmsActivity
- Create a WhatsApp share intent ->
createWhatsAppShareIntent
- Starts an Activity if it is exists ->
startIntentIfPossible
- Check if there is a valid Activity for the intent ->
isActivityAvailableForIntent
- Open the playstore page for the current app ->
openPlayStoreAppPage
- Check if a service is running ->
isRunningService
» IOUtils
- Save a Bitmap to a local file ->
saveBitmapToFile
- Delete a selected directory recursively ->
deleteDir
- Create a directory if needed ->
createParentDirIfNotExists
» JavaUtils
- Get the index of an object ->
indexOf
- Create a Integer arrayList from String arrayList ->
convertStringArrayToIntegerArray
- Check if object is null and throw ->
checkNotNull
» KeyboardUtils
- Hide soft keyboard ->
hideSoftKeyboard
- Show soft keyboard ->
showSoftKeyboard
- Toggle soft keyboard state ->
toggleKeyboradState
» NetworkUtils
- Check if there is an active network ->
isNetworkAvailable
- Get the network type ->
getNetworkType
- Toggle soft keyboard state ->
toggleKeyboradState
» PermissionUtils
- Open the app settings to enable permissions ->
openPermissionsSettings
- Check if user denied permissions with the flag NEVER ASK AGAIN ->
checkDeniedPermissionsNeverAskAgain
» ResourcesUtils
- Load resource id by name ->
getResIdFromString
» ScreenUtils
- Get screen width ->
getScreenWidthInPx
- Get screen height ->
getScreenHeightInPx
- ScreenSize ->
getScreenSize
- Set transparent status bar ->
setTransparentStatusBar
- Get status bar height ->
getStatusBarHeight
- Check if we have status bar ->
hasStatusBar
- Get the action bar height ->
getActionBarHeight
- Take a screenshot with the status bar ->
takeScreenShotWithStatusBar
- Take a screenshot without the status bar ->
takeScreenShoteWithoutStatusBar
- Check if the screen is locked ->
isScreenLocked
» SizeUtils
- Convert DP to PX ->
dpToPx
- Convert PX to DP ->
pxToDp
- Convert SP to PX ->
spToPx
- Convert PX to SP ->
pxToSp
» StringUtils
- Checks if a String is whitespace, empty ("") or null. ->
isBlank
- Checks if a String is not empty (""), not null and not whitespace only. ->
isNotBlank
- Check if a string is empty ->
isEmpty
- Check if a string is NOT empty ->
isNotEmpty
- Capital only first letter ->
capitalizeFirstLetter
- Create a String from stacktrace ->
exceptionStackTraceToString
- Get initials from a string ->
getInitialsFromString
» ThreadUtils
- Makes the thread sleep for some time ->
threadSleep
- Check if running on main thread ->
checkUiThread
» ValidationUtils
- Check if an email is valid ->
isValidEmail
- Check if an IP Address is valid ->
isValidIPAddress
- Check if a url is valid ->
isValidUrl
» VersionUtils
isNougatOrHigher
isMarshmallowOrHigher
isLollipopOrHigher
isKitKatOrHigher
isJellyBeanOrHigher
» ViewUtils
- Set visibility to sibling views ->
setSiblingsVisibility
- Scroll listview to bottom ->
listViewScrollToBottom
- Create an underline text clickable ->
makeUnderlinedTextClickable