Skip to content

Commit eef7926

Browse files
committed
doing refactor README
1 parent 80a54f0 commit eef7926

File tree

1 file changed

+52
-31
lines changed

1 file changed

+52
-31
lines changed

README.md

Lines changed: 52 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -4,20 +4,44 @@
44
<img src="./files/banner.png" width="100%">
55
</p>
66

7-
[![iOS][iOS]][iOS-URL] [![Android][Android]][Android-URL] [![Swift][Swift]][Swift-URL] [![Kotlin][Kotlin]][Kotlin-URL] [![React-Native][React-Native]][React-Native-URL] ![SmoothScroll][SmoothScroll] ![CROP-IMAGE](https://img.shields.io/badge/Crop_Image-EA4C89?style=for-the-badge)
7+
[![iOS][iOS]][iOS-URL] [![Android][Android]][Android-URL] [![Swift][Swift]][Swift-URL] [![Kotlin][Kotlin]][Kotlin-URL] [![React-Native][React-Native]][React-Native-URL]
88

99
## Overview
1010

11-
enables application to pick images and videos from multiple smart album in iOS/Android, similar to the current Facebook App. React Native Multiple Image Picker is based on two libraries available, [TLPhotoPicker](https://github.com/tilltue/TLPhotoPicker) and [PictureSelector](https://github.com/LuckSiege/PictureSelector)
11+
![NativeModule](https://img.shields.io/badge/Native_Module-0052CC?style=for-the-badge) ![SmoothScroll](https://img.shields.io/badge/Smooth_Scroll-FCC624?style=for-the-badge) ![CropImage](https://img.shields.io/badge/Crop_Image-EA4C89?style=for-the-badge)
12+
13+
React Native Multiple Image Picker enables application to pick images and videos from multiple smart album in iOS/Android, similar to the current Facebook App. React Native Multiple Image Picker is based on two libraries available, [TLPhotoPicker](https://github.com/tilltue/TLPhotoPicker) and [PictureSelector](https://github.com/LuckSiege/PictureSelector)
1214

1315
> Related: [React Native Photo Editor](https://github.com/baronha/react-native-photo-editor)
1416
17+
## Features 🔥
18+
19+
| | ![Logo][Logo] |
20+
| --- | ------------------------------------------------------------------------------ |
21+
| 🌄 | Choose multiple images/video. |
22+
| 📦 | Support smart album `(camera roll, selfies, panoramas, favorites, videos...)`. |
23+
| 0️⃣ | Selected order index. |
24+
| 📺 | Display video duration. |
25+
| 🎆 | Preview image/video. |
26+
| ⛅️ | Support iCloud Photo Library. |
27+
| 🔪 | Crop image (new) ✨ |
28+
| 🌚 | Crop image circle for Avatar (new) ✨ |
29+
| 🌪 | Scrolling performance |
30+
| ▶️ | Playback video and live photos(for iOS) |
31+
32+
## Video Demo 📺
33+
34+
### Picker
1535

16-
## Demo 👉👈
36+
| ![ios] | ![android] |
37+
| ------ | ---------- |
38+
| | |
1739

18-
| iOS | Android |
19-
| ---------------------------------------------------- | -------------------------------------------------------- |
20-
| <img src="./files/demo-main-ios.gif" height="720px"> | <img src="./files/demo-main-android.gif" height="720px"> |
40+
### Crop
41+
42+
| ![ios] | ![android] |
43+
| ------ | ---------- |
44+
| | |
2145

2246
## Installation
2347

@@ -73,9 +97,21 @@ Here are some related issues in the RN repo: [Issue 30202](https://github.com/fa
7397
> Add Permission in `AndroidManifest.xml`
7498
7599
```xml
76-
<uses-permission android:name="android.permission.CAMERA" />
77-
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
78-
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
100+
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
101+
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
102+
<uses-permission android:name="android.permission.WRITE_MEDIA_STORAGE" />
103+
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
104+
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
105+
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
106+
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
107+
<uses-permission android:name="android.permission.RECORD_AUDIO" />
108+
<uses-permission android:name="android.permission.CAMERA" />
109+
<uses-permission android:name="android.permission.VIBRATE" />
110+
111+
Android 13
112+
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
113+
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" />
114+
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" />
79115
```
80116
## Usage
81117

@@ -87,22 +123,6 @@ import MultipleImagePicker from '@baronha/react-native-multiple-image-picker';
87123
const response = await MultipleImagePicker.openPicker(options);
88124
```
89125

90-
## Features
91-
92-
- [x] Selected order index.
93-
- [x] Support smart album collection.
94-
- [x] Camera roll, selfies, panoramas, favorites, videos, custom users album
95-
- [x] Support Camera
96-
- [x] Playback video and live photos.
97-
- [x] Just one. playback first video or live Photo in bounds of visible cell.
98-
- [x] Display video duration.
99-
- [x] Async phasset request and displayed cell.
100-
- [x] Scrolling performance is better than facebook in displaying video assets collection.
101-
- [x] Reload of changes that occur in the Photos library.
102-
- [x] Preview photo.
103-
- [x] Download from iCloud.
104-
...etc
105-
106126
## Options
107127

108128
| Property | Type | Default value | Platform | Description |
@@ -128,8 +148,8 @@ const response = await MultipleImagePicker.openPicker(options);
128148
| maximumMessageTitle | string | Notification | iOS | The title of the alert when the user chooses to exceed the specified number of pictures |
129149
| messageTitleButton | string | Notification | iOS | The title of button in the alert when the user chooses to exceed the specified number of pictures |
130150
| tapHereToChange | string | Tap here to change | iOS | The sub-title in navigation bar (under albums's name in iOS) |
131-
| maximumMessage | string | You have selected the maximum number of media allowed | iOS | The description of the alert when the user chooses to exceed the specified number of pictures |
132-
| maximumVideoMessage | string | You have selected the maximum number of media allowed | iOS | The description of the alert when the user chooses to exceed the specified number of videos |
151+
| maximumMessage | string | You have selected the maximum number of media allowed | iOS | The description of the alert when the user chooses to exceed the specified number of pictures |
152+
| maximumVideoMessage | string | You have selected the maximum number of media allowed | iOS | The description of the alert when the user chooses to exceed the specified number of videos |
133153

134154
#### selectedAssets (Important)
135155

@@ -140,7 +160,7 @@ Get an Array value only(Only works when ```singleSelectedMode === false```). If
140160
| Property | Type | Platform | Description |
141161
| ---------------- | :----: | :------: | :--------------------------------------------------------------------------------------------------- |
142162
| path | string | Both | Selected media's path |
143-
| fileName | string | Both | Selected media's file name |
163+
| fileName | string | Both | Selected media's file name |
144164
| localIdentifier | string | Both | Selected media's local identifier |
145165
| width | number | Both | Selected photo/video width |
146166
| height | number | Both | Selected photo/video height |
@@ -155,8 +175,8 @@ Get an Array value only(Only works when ```singleSelectedMode === false```). If
155175

156176
## To Do
157177

158-
- [ ] (Bug) Record Video (iOS).
159-
- [ ] Crop Image in iOS.
178+
- [x] Crop Image in iOS.
179+
- [ ] Preview Controller for `iOS`
160180

161181
## Performance
162182

@@ -195,4 +215,5 @@ MIT
195215
[Kotlin]: https://img.shields.io/badge/Kotlin-0095D5?&style=for-the-badge&logo=kotlin&logoColor=white
196216
[Kotlin-URL]: https://kotlinlang.org/
197217

198-
[SmoothScroll]: https://img.shields.io/badge/Smooth_Scroll-FCC624?style=for-the-badge
218+
[Logo]: https://img.shields.io/badge/Multiple_Image_Picker-000000?style=for-the-badge
219+

0 commit comments

Comments
 (0)