Releases: DylanCaiCoding/Longan
Releases · DylanCaiCoding/Longan
1.1.1
Activity.kt
- Replace
Context.activity
withContext.asActivity()
- Replace
Context.checkPermission(permission)
withContext.isPermissionGranted(permission)
#13 - Add
Context.arePermissionsGranted(permissions)
- Fix #12
Rom.kt
- Add
isXiaomiRom
- Add
isHuaweiRom
- Add
isOppoRom
- Add
isVivoRom
- Add
isOnePlusRom
- Add
isSmartisanRom
- Add
isMeiZuRom
- Add
isSamsungRom
- Add
isGoogleRom
- Add
isSonyRom
- Add
isRomOf(names)
- Add
isHarmonyOS
View.kt
- Add
View.expandClickArea(...)
1.1.0
Activity.kt
- Add
finishToActivity<T>()
- Add
finishAllActivitiesExcept<T>()
- Add
ComponentActivity.doOnBackPressed {...}
ActivityResult.kt
Optimize the usage to make it closer to the usage of ActivityResult API.
- Replace all methed name
xxxxLauncher
withregisterForXXXXResult
. For example, replacerequestPermissionLauncher {...}
withregisterForRequestPermissionResult {...}
. - Fix #8
Application.kt
- Add
appIcon
- Replace
launchAppDetailsSettings()
withlaunchAppSettings()
Crash.kt
- Add
handleMainThreadException {...}
DateTime.kt
Replace kotlinx-datetime
with Java8 LocalDateTime and remove functions that are not needed.
Fragment.kt
- Add
Fragment.pressBackTwiceToExitApp(...)
- Add
Fragment.pressBackToNotExitApp()
- Add
Fragment.doOnBackPressed {...}
Keyboard.kt
The receiver can only be a view.
- Remove
Activity/Fragment.showKeyboard()
- Remove
Activity/Fragment.hideKeyboard()
- Remove
Activity/Fragment.toggleKeyboard()
- Remove
Activity/Fragment.isKeyboardVisible
- Remove
Activity/Fragment.keyboardHeight
Lifecycle.kt
- Fix #11
Network.kt
- Add new class
WifiListLiveData
- Add
ScanResult.is24GHz
- Add
ScanResult.is5GHz
Shell.kt
- Add
executeCmd(command)
String.kt
- Add
Float/Double.toNumberString([fractionDigits], [minIntDigits], [isGrouping], [isHalfUp])
TextView.kt
- Add
TextView.enableWhenAllChecked(checkBoxes)
Thread.kt
- Add
isMainThread
RecyclerView.kt
- Add
RecyclerView.addItemPadding(...)
1.0.5
Clipboard.kt
- Add
CharSequence/Uri/Intent.copyToClipboard([label])
- Add
getTextFromClipboard()
- Add
clearClipboard()
- Add
doOnClipboardChanged(listener)
- Add
ClipboardManager.OnPrimaryClipChangedListener.cancel()
DateTime.kt
- Add
Instant.Companion.parse(text, pattern)
- Add
String.toInstant(pattern)
- Add
Instant.format(pattern)
- Add
LocalDateTime/LocalDate.isToday()
- Add
LocalDateTime/LocalDate.isYesterday()
- add
LocalDateTime/LocalDate.withYear(year)
- add
LocalDateTime/LocalDate.withMonth(month)
- add
LocalDateTime/LocalDate.withDayOfMonth(dayOfMonth)
- add
LocalDateTime/LocalDate.withDayOfYear(dayOfYear)
- add
LocalDateTime/LocalDate.with {...}
- add
LocalDateTime.withHour(hour)
- add
LocalDateTime.withMinute(minute)
- add
LocalDateTime.withSecond(second)
- add
LocalDateTime.withNano(nano)
- Add
LocalDateTime.firstDayOfYear()
- Add
LocalDateTime.lastDayOfYear()
- Add
LocalDateTime.firstDayOfNextYear()
- Add
LocalDateTime.firstDayOfLastYear()
- Add
LocalDateTime.firstDayOfMonth()
- Add
LocalDateTime.lastDayOfMonth()
- Add
LocalDateTime.firstDayOfNextMonth()
- Add
LocalDateTime.firstDayOfLastMonth()
- Add
LocalDateTime.firstInMonth(dayOfWeek)
- Add
LocalDateTime.lastInMonth(dayOfWeek)
- Add
LocalDateTime.dayOfWeekInMonth(ordinal, dayOfWeek)
- Add
LocalDateTime.next(dayOfWeek)
- Add
LocalDateTime.nextOrSame(dayOfWeek)
- Add
LocalDateTime.previous(dayOfWeek)
- Add
LocalDateTime.previousOrSame(dayOfWeek)
- Add
Instant.plus(period)
- Add
Instant.plus([value], unit)
- Add
Instant.minus(period)
- Add
Instant.minus([value], unit)
- Add
Instant.until(instant, unit)
- Add
Instant.daysUntil(instant)
- Add
Instant.monthsUntil(instant)
- Add
Instant.yearsUntil(instant)
- Add
Instant.periodUntil(instant)
1.0.4
Add org.jetbrains.kotlinx:kotlinx-datetime:0.3.2
dependency.
DateTime.kt
- Add
Instant.Companion.parse(text, pattern, timeZone)
- Add
LocalDateTime.Companion.parse(text, pattern)
- Add
LocalDate.Companion.parse(text, pattern)
- Add
String.toInstant(pattern, timeZone)
- Add
String.toLocalDateTime(pattern)
- Add
String.toLocalDate(pattern)
- Add
Instant.format(pattern, timeZone)
- Add
LocalDateTime.format(pattern)
- Add
LocalDate.format(pattern)
- Add
LocalDateTime/LocalDate.isToday(timeZone)
- Add
LocalDateTime/LocalDate.isYesterday(timeZone)
- Add
LocalDate.firstDayOfYear()
- Add
LocalDate.lastDayOfYear()
- Add
LocalDate.firstDayOfNextYear()
- Add
LocalDate.firstDayOfLastYear()
- Add
LocalDate.firstDayOfMonth()
- Add
LocalDate.lastDayOfMonth()
- Add
LocalDate.firstDayOfNextMonth()
- Add
LocalDate.firstDayOfLastMonth()
- Add
LocalDate.firstInMonth(dayOfWeek)
- Add
LocalDate.lastInMonth(dayOfWeek)
- Add
LocalDate.dayOfWeekInMonth(ordinal, dayOfWeek)
- Add
LocalDate.next(dayOfWeek)
- Add
LocalDate.nextOrSame(dayOfWeek)
- Add
LocalDate.previous(dayOfWeek)
- Add
LocalDate.previousOrSame(dayOfWeek)
SpannableStringBuilder.kt
- Add
SpannableStringBuilder.size(size) {...}
- Add
SpannableStringBuilder.alignCenter {...}
- Add
SpannableStringBuilder.alignOpposite {...}
- Add
SpannableStringBuilder.alignment(alignment) {...}
- Add
SpannableStringBuilder.blur(radius, [style]) {...}
- Add
SpannableStringBuilder.fontFamily(family) {...}
- Add
SpannableStringBuilder.typeface(typeface) {...}
- Add
SpannableStringBuilder.url(url) {...}
- Add
SpannableStringBuilder.bullet(gapWidth, [color]) {...}
- Add
SpannableStringBuilder.quote([color]) {...}
- Add
SpannableStringBuilder.leadingMargin(first, [rest]) {...}
- Add
SpannableStringBuilder.append(drawable, [width], [height]) {...}
- Add
SpannableStringBuilder.append(drawableId) {...}
- Add
SpannableStringBuilder.append(bitmap) {...}
- Add
SpannableStringBuilder.appendClickable(text, [color], [isUnderlineText]) {...}
- Add
SpannableStringBuilder.appendClickable(drawable, [width], [height]) {...}
- Add
SpannableStringBuilder.appendClickable(drawableId) {...}
- Add
SpannableStringBuilder.appendClickable(bitmap) {...}
- Add
SpannableStringBuilder.appendSpace(size, [color]) {...}
ViewPager2.kt
- Add
FragmentActivity/Fragment.FragmentStateAdapter(fragments, isLazyLoading)
- Add
FragmentActivity/Fragment.FragmentStateAdapter(itemCount, isLazyLoading) {...}
1.0.3
File.kt
- Add
File#isExistOrCreateNewFile()
- Add
File?#isExistOrCreateNewDir()
- Add
File#createNewFileAfterDeleteExist()
- Add
File#rename(name)
MetaData.kt
- Add
applicationMetaDataOf(name)
- Add
activityMetaDataOf<T>(name)
- Add
serviceMetaDataOf<T>(name)
- Add
providerMetaDataOf<T>(name)
- Add
receiverMetaDataOf<T>(name)
Resoures.kt
- Remove
Context/View#getCompatDimen(id)
- Add
Context/View/Fragment#getDimension(id)
- Add
Fragment#getCompatColor(id)
- Add
Fragment#getCompatDrawable(id)
- Add
Fragment#getCompatFont(id)
String.kt
- Update
String#isPhone()
returns whether the string is exact phone number.
View.kt
- Deprecate
View#withStyledAttrs(...)
- Add
View#withStyledAttributes(...)
1.0.2
ActivityResult.kt - Usage
- Add
ActivityResultCaller#startActivityLauncher {...}
- Add
ActivityResultCaller#startIntentSenderLauncher {...}
- Add
ActivityResultCaller#requestPermissionLauncher {...}
- Add
ActivityResultCaller#requestMultiplePermissionsLauncher {...}
- Add
ActivityResultCaller#takePicturePreviewLauncher {...}
- Add
ActivityResultCaller#takePictureLauncher {...}
- Add
ActivityResultCaller#takeVideoLauncher {...}
- Add
ActivityResultCaller#pickContactLauncher {...}
- Add
ActivityResultCaller#pickContentLauncher {...}
- Add
ActivityResultCaller#getContentLauncher {...}
- Add
ActivityResultCaller#getMultipleContentsLauncher {...}
- Add
ActivityResultCaller#openDocumentLauncher {...}
- Add
ActivityResultCaller#openMultipleDocumentsLauncher {...}
- Add
ActivityResultCaller#openDocumentTreeLauncher {...}
- Add
ActivityResultCaller#createDocumentLauncher {...}
- Add
ActivityResultCaller#launchAppSettingsLauncher {...}
- Add
ActivityResultCaller#cropPictureLauncher {...}
- Add
ActivityResultCaller#enableLocationLauncher {...}
- Add
ActivityResultCaller#enableBluetoothLauncher {...}
- Add
ActivityResultCaller#launchWifiSettingsLauncher {...}
- Add
ActivityResultCaller#openWifiPanelLauncher {...}
- Add
ActivityResultLauncher<Unit/Viod>#launch()
- Add
ActivityResultLauncher<Array<T>>#launch(varage input)
- Add
ActivityResultLauncher<Intent>#launch<SomeActivity>(...)
- Add
ActivityResultLauncher<IntentSenderRequest>#launch(intentSender, ...)
- Add
ActivityResultLauncher<CropPictureRequest>#launch(inputUri, ...)
Keyboard.kt
- Add
Activity/Fragment#showKeyboard()
- Add
Activity/Fragment#hideKeyboard()
- Add
Activity/Fragment#toggleKeyboard()
- Add
Activity/Fragment#isKeyboardVisible
- Add
Activity/Fragment#keyboardHeight
Lifecycle.kt
- Add
Application#doOnActivityLifecycle(...)
SystemBars.kt
- Fix getting navigation bar height incorrectly for some phones
1.0.1
Encrypt.kt
- Add
String/ByteArray#encrtpyMD5()
- Add
String/ByteArray#encrtpySHA1()
- Add
String/ByteArray#encrtpySHA256()
- Add
String/ByteArray#encrtpySHA512()
- Add
String/ByteArray#encrtpyHmacSHA1(...)
- Add
String/ByteArray#encrtpyHmacSHA256(...)
- Add
String/ByteArray#encrtpyHmacSHA512(...)
File.kt
- Add
File#checkMD5(...)
- Add
File#checkSHA1(...)
- Add
File#checkSHA256(...)
- Add
File#checkSHA512(...)
- Add
File#checkHmacSHA1(...)
- Add
File#checkHmacSHA256(...)
- Add
File#checkHmacSHA512(...)
- Add
File#calculateMD5()
- Add
File#calculateSHA1()
- Add
File#calculateSHA256()
- Add
File#calculateSHA512()
- Add
File#calculateHmacSHA1(...)
- Add
File#calculateHmacSHA256(...)
- Add
File#calculateHmacSHA512(...)
Network.kt
- Add
isWifiConnected
- Add
isMobileData
- Add
isWifiEnabled
View.kt
- Add
View#roundCorners
ViewModel.kt
- Support for Hilt
- Remove
ViewModel.applicationViewModels()
1.0.0
A collection of Kotlin utils which makes Android application development faster and easier