android / permissions-samples
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 24% duplication:
    • 630 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 156 duplicated lines
  • 5 duplicates
system24% (156 lines)
Duplication per Extension
kt32% (156 lines)
Duplication per Component (primary)
RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/camera63% (42 lines)
PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/camera63% (42 lines)
RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/util69% (30 lines)
PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/util90% (30 lines)
DataAccessAuditingKotlin/app/src/main/java/com/example/android/dataaccessauditingkotlin4% (6 lines)
DataAccessAuditingKotlin/thirdPartyLibrary/src/main/java/com/examplelibrary/android/shoppinglibrary14% (6 lines)
DataAccessAuditingKotlin/thirdPartyLibrary0% (0 lines)
RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions0% (0 lines)
PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions0% (0 lines)
RuntimePermissionsBasic/Application/src/main/java/com/example/android/basicpermissions0% (0 lines)
RuntimePermissionsBasic/Application/src/main/java/com/example/android/basicpermissions/camera0% (0 lines)

Duplication Between Components (50+ lines)

G PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/camera PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/camera RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/camera RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/camera PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/camera--RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/camera 84 PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/util PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/util RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/util RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/util PermissionsActivityResultKotlin/Application/src/main/java/com/example/android/basicpermissions/util--RuntimePermissionsBasicKotlin/Application/src/main/java/com/example/android/basicpermissions/util 60

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 5 longest duplicates.
See data for all 5 duplicates...
Size#FoldersFilesLinesCode
31 x 2 PermissionsActivityResul...basicpermissions/camera
RuntimePermissionsBasicK...basicpermissions/camera
CameraPreview.kt
CameraPreview.kt
42:96 (91%)
40:94 (88%)
view
18 x 2 PermissionsActivityResul...d/basicpermissions/util
RuntimePermissionsBasicK...d/basicpermissions/util
ViewExt.kt
ViewExt.kt
26:45 (85%)
30:49 (78%)
view
12 x 2 PermissionsActivityResul...d/basicpermissions/util
RuntimePermissionsBasicK...d/basicpermissions/util
CameraExt.kt
CameraExt.kt
17:36 (100%)
17:36 (100%)
view
11 x 2 PermissionsActivityResul...basicpermissions/camera
RuntimePermissionsBasicK...basicpermissions/camera
CameraPreviewActivity.kt
CameraPreviewActivity.kt
17:54 (34%)
17:54 (35%)
view
6 x 2 DataAccessAuditingKotlin...ataaccessauditingkotlin
DataAccessAuditingKotlin...android/shoppinglibrary
Utils.kt
Utils.kt
28:36 (35%)
26:34 (85%)
view
Duplicated Units
The list of top 2 duplicated units.
See data for all 2 unit duplicates...
Size#FoldersFilesLinesCode
15 x 2 RuntimePermissionsBasicK...basicpermissions/camera
PermissionsActivityResul...basicpermissions/camera
CameraPreview.kt
CameraPreview.kt
76:96 
78:98 
view
10 x 2 RuntimePermissionsBasicK...basicpermissions/camera
PermissionsActivityResul...basicpermissions/camera
CameraPreview.kt
CameraPreview.kt
58:70 
60:72 
view