Showing
100 changed files
with
3406 additions
and
95 deletions
Too many changes to show.
To preserve performance only 100 of 100+ files are displayed.
| @@ -91,9 +91,9 @@ class Utils { | @@ -91,9 +91,9 @@ class Utils { | ||
| 91 | static void launchAppGallery() async { | 91 | static void launchAppGallery() async { |
| 92 | final appid = Constant.ohos_app_id; //可以是应用id、也可以是鸿蒙应用包名 | 92 | final appid = Constant.ohos_app_id; //可以是应用id、也可以是鸿蒙应用包名 |
| 93 | // final url='store://appgallery.huawei.com/app/detail?id=$appid'; | 93 | // final url='store://appgallery.huawei.com/app/detail?id=$appid'; |
| 94 | - | 94 | +// &channelId=LAUNCHERSHARE |
| 95 | final url = | 95 | final url = |
| 96 | - 'store://appgallery.huawei.com/app/detail?id=com.jd.hm.mall&channelId=LAUNCHERSHARE'; | 96 | + 'store://appgallery.huawei.com/app/detail?id=com.naji.one_key_harmonyOS'; |
| 97 | 97 | ||
| 98 | try { | 98 | try { |
| 99 | await launchUrl(Uri.parse(url)); | 99 | await launchUrl(Uri.parse(url)); |
| @@ -2,8 +2,8 @@ | @@ -2,8 +2,8 @@ | ||
| 2 | "app": { | 2 | "app": { |
| 3 | "bundleName": "com.naji.one_key_harmonyOS", | 3 | "bundleName": "com.naji.one_key_harmonyOS", |
| 4 | "debug": true, | 4 | "debug": true, |
| 5 | - "versionCode": 103, | ||
| 6 | - "versionName": "1.0.3", | 5 | + "versionCode": 1, |
| 6 | + "versionName": "1.0.0", | ||
| 7 | "minAPIVersion": 50100018, | 7 | "minAPIVersion": 50100018, |
| 8 | "targetAPIVersion": 60000020, | 8 | "targetAPIVersion": 60000020, |
| 9 | "apiReleaseType": "Release", | 9 | "apiReleaseType": "Release", |
| @@ -2,8 +2,8 @@ | @@ -2,8 +2,8 @@ | ||
| 2 | "app": { | 2 | "app": { |
| 3 | "bundleName": "com.naji.one_key_harmonyOS", | 3 | "bundleName": "com.naji.one_key_harmonyOS", |
| 4 | "debug": true, | 4 | "debug": true, |
| 5 | - "versionCode": 103, | ||
| 6 | - "versionName": "1.0.3", | 5 | + "versionCode": 1, |
| 6 | + "versionName": "1.0.0", | ||
| 7 | "minAPIVersion": 50100018, | 7 | "minAPIVersion": 50100018, |
| 8 | "targetAPIVersion": 60000020, | 8 | "targetAPIVersion": 60000020, |
| 9 | "apiReleaseType": "Release", | 9 | "apiReleaseType": "Release", |
| @@ -37,10 +37,10 @@ packages: | @@ -37,10 +37,10 @@ packages: | ||
| 37 | dependency: transitive | 37 | dependency: transitive |
| 38 | description: | 38 | description: |
| 39 | name: collection | 39 | name: collection |
| 40 | - sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf | 40 | + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a |
| 41 | url: "https://pub.flutter-io.cn" | 41 | url: "https://pub.flutter-io.cn" |
| 42 | source: hosted | 42 | source: hosted |
| 43 | - version: "1.19.0" | 43 | + version: "1.18.0" |
| 44 | fake_async: | 44 | fake_async: |
| 45 | dependency: transitive | 45 | dependency: transitive |
| 46 | description: | 46 | description: |
| @@ -71,18 +71,18 @@ packages: | @@ -71,18 +71,18 @@ packages: | ||
| 71 | dependency: transitive | 71 | dependency: transitive |
| 72 | description: | 72 | description: |
| 73 | name: leak_tracker | 73 | name: leak_tracker |
| 74 | - sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" | 74 | + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" |
| 75 | url: "https://pub.flutter-io.cn" | 75 | url: "https://pub.flutter-io.cn" |
| 76 | source: hosted | 76 | source: hosted |
| 77 | - version: "10.0.7" | 77 | + version: "10.0.4" |
| 78 | leak_tracker_flutter_testing: | 78 | leak_tracker_flutter_testing: |
| 79 | dependency: transitive | 79 | dependency: transitive |
| 80 | description: | 80 | description: |
| 81 | name: leak_tracker_flutter_testing | 81 | name: leak_tracker_flutter_testing |
| 82 | - sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" | 82 | + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" |
| 83 | url: "https://pub.flutter-io.cn" | 83 | url: "https://pub.flutter-io.cn" |
| 84 | source: hosted | 84 | source: hosted |
| 85 | - version: "3.0.8" | 85 | + version: "3.0.3" |
| 86 | leak_tracker_testing: | 86 | leak_tracker_testing: |
| 87 | dependency: transitive | 87 | dependency: transitive |
| 88 | description: | 88 | description: |
| @@ -111,18 +111,18 @@ packages: | @@ -111,18 +111,18 @@ packages: | ||
| 111 | dependency: transitive | 111 | dependency: transitive |
| 112 | description: | 112 | description: |
| 113 | name: material_color_utilities | 113 | name: material_color_utilities |
| 114 | - sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec | 114 | + sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" |
| 115 | url: "https://pub.flutter-io.cn" | 115 | url: "https://pub.flutter-io.cn" |
| 116 | source: hosted | 116 | source: hosted |
| 117 | - version: "0.11.1" | 117 | + version: "0.8.0" |
| 118 | meta: | 118 | meta: |
| 119 | dependency: transitive | 119 | dependency: transitive |
| 120 | description: | 120 | description: |
| 121 | name: meta | 121 | name: meta |
| 122 | - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 | 122 | + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" |
| 123 | url: "https://pub.flutter-io.cn" | 123 | url: "https://pub.flutter-io.cn" |
| 124 | source: hosted | 124 | source: hosted |
| 125 | - version: "1.15.0" | 125 | + version: "1.12.0" |
| 126 | path: | 126 | path: |
| 127 | dependency: transitive | 127 | dependency: transitive |
| 128 | description: | 128 | description: |
| @@ -143,7 +143,7 @@ packages: | @@ -143,7 +143,7 @@ packages: | ||
| 143 | dependency: transitive | 143 | dependency: transitive |
| 144 | description: flutter | 144 | description: flutter |
| 145 | source: sdk | 145 | source: sdk |
| 146 | - version: "0.0.0" | 146 | + version: "0.0.99" |
| 147 | source_span: | 147 | source_span: |
| 148 | dependency: transitive | 148 | dependency: transitive |
| 149 | description: | 149 | description: |
| @@ -156,10 +156,10 @@ packages: | @@ -156,10 +156,10 @@ packages: | ||
| 156 | dependency: transitive | 156 | dependency: transitive |
| 157 | description: | 157 | description: |
| 158 | name: stack_trace | 158 | name: stack_trace |
| 159 | - sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" | 159 | + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" |
| 160 | url: "https://pub.flutter-io.cn" | 160 | url: "https://pub.flutter-io.cn" |
| 161 | source: hosted | 161 | source: hosted |
| 162 | - version: "1.12.0" | 162 | + version: "1.11.1" |
| 163 | stream_channel: | 163 | stream_channel: |
| 164 | dependency: transitive | 164 | dependency: transitive |
| 165 | description: | 165 | description: |
| @@ -172,10 +172,10 @@ packages: | @@ -172,10 +172,10 @@ packages: | ||
| 172 | dependency: transitive | 172 | dependency: transitive |
| 173 | description: | 173 | description: |
| 174 | name: string_scanner | 174 | name: string_scanner |
| 175 | - sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" | 175 | + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" |
| 176 | url: "https://pub.flutter-io.cn" | 176 | url: "https://pub.flutter-io.cn" |
| 177 | source: hosted | 177 | source: hosted |
| 178 | - version: "1.3.0" | 178 | + version: "1.2.0" |
| 179 | term_glyph: | 179 | term_glyph: |
| 180 | dependency: transitive | 180 | dependency: transitive |
| 181 | description: | 181 | description: |
| @@ -188,10 +188,10 @@ packages: | @@ -188,10 +188,10 @@ packages: | ||
| 188 | dependency: transitive | 188 | dependency: transitive |
| 189 | description: | 189 | description: |
| 190 | name: test_api | 190 | name: test_api |
| 191 | - sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" | 191 | + sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" |
| 192 | url: "https://pub.flutter-io.cn" | 192 | url: "https://pub.flutter-io.cn" |
| 193 | source: hosted | 193 | source: hosted |
| 194 | - version: "0.7.3" | 194 | + version: "0.7.0" |
| 195 | vector_math: | 195 | vector_math: |
| 196 | dependency: transitive | 196 | dependency: transitive |
| 197 | description: | 197 | description: |
| @@ -204,10 +204,10 @@ packages: | @@ -204,10 +204,10 @@ packages: | ||
| 204 | dependency: transitive | 204 | dependency: transitive |
| 205 | description: | 205 | description: |
| 206 | name: vm_service | 206 | name: vm_service |
| 207 | - sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b | 207 | + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" |
| 208 | url: "https://pub.flutter-io.cn" | 208 | url: "https://pub.flutter-io.cn" |
| 209 | source: hosted | 209 | source: hosted |
| 210 | - version: "14.3.0" | 210 | + version: "14.2.1" |
| 211 | sdks: | 211 | sdks: |
| 212 | - dart: ">=3.4.0 <4.0.0" | 212 | + dart: ">=3.3.0 <4.0.0" |
| 213 | flutter: ">=3.18.0-18.0.pre.54" | 213 | flutter: ">=3.18.0-18.0.pre.54" |
| @@ -37,10 +37,10 @@ packages: | @@ -37,10 +37,10 @@ packages: | ||
| 37 | dependency: transitive | 37 | dependency: transitive |
| 38 | description: | 38 | description: |
| 39 | name: collection | 39 | name: collection |
| 40 | - sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf | 40 | + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a |
| 41 | url: "https://pub.flutter-io.cn" | 41 | url: "https://pub.flutter-io.cn" |
| 42 | source: hosted | 42 | source: hosted |
| 43 | - version: "1.19.0" | 43 | + version: "1.18.0" |
| 44 | fake_async: | 44 | fake_async: |
| 45 | dependency: transitive | 45 | dependency: transitive |
| 46 | description: | 46 | description: |
| @@ -79,18 +79,18 @@ packages: | @@ -79,18 +79,18 @@ packages: | ||
| 79 | dependency: transitive | 79 | dependency: transitive |
| 80 | description: | 80 | description: |
| 81 | name: leak_tracker | 81 | name: leak_tracker |
| 82 | - sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" | 82 | + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" |
| 83 | url: "https://pub.flutter-io.cn" | 83 | url: "https://pub.flutter-io.cn" |
| 84 | source: hosted | 84 | source: hosted |
| 85 | - version: "10.0.7" | 85 | + version: "10.0.4" |
| 86 | leak_tracker_flutter_testing: | 86 | leak_tracker_flutter_testing: |
| 87 | dependency: transitive | 87 | dependency: transitive |
| 88 | description: | 88 | description: |
| 89 | name: leak_tracker_flutter_testing | 89 | name: leak_tracker_flutter_testing |
| 90 | - sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" | 90 | + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" |
| 91 | url: "https://pub.flutter-io.cn" | 91 | url: "https://pub.flutter-io.cn" |
| 92 | source: hosted | 92 | source: hosted |
| 93 | - version: "3.0.8" | 93 | + version: "3.0.3" |
| 94 | leak_tracker_testing: | 94 | leak_tracker_testing: |
| 95 | dependency: transitive | 95 | dependency: transitive |
| 96 | description: | 96 | description: |
| @@ -119,18 +119,18 @@ packages: | @@ -119,18 +119,18 @@ packages: | ||
| 119 | dependency: transitive | 119 | dependency: transitive |
| 120 | description: | 120 | description: |
| 121 | name: material_color_utilities | 121 | name: material_color_utilities |
| 122 | - sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec | 122 | + sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" |
| 123 | url: "https://pub.flutter-io.cn" | 123 | url: "https://pub.flutter-io.cn" |
| 124 | source: hosted | 124 | source: hosted |
| 125 | - version: "0.11.1" | 125 | + version: "0.8.0" |
| 126 | meta: | 126 | meta: |
| 127 | dependency: transitive | 127 | dependency: transitive |
| 128 | description: | 128 | description: |
| 129 | name: meta | 129 | name: meta |
| 130 | - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 | 130 | + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" |
| 131 | url: "https://pub.flutter-io.cn" | 131 | url: "https://pub.flutter-io.cn" |
| 132 | source: hosted | 132 | source: hosted |
| 133 | - version: "1.15.0" | 133 | + version: "1.12.0" |
| 134 | path: | 134 | path: |
| 135 | dependency: transitive | 135 | dependency: transitive |
| 136 | description: | 136 | description: |
| @@ -143,7 +143,7 @@ packages: | @@ -143,7 +143,7 @@ packages: | ||
| 143 | dependency: transitive | 143 | dependency: transitive |
| 144 | description: flutter | 144 | description: flutter |
| 145 | source: sdk | 145 | source: sdk |
| 146 | - version: "0.0.0" | 146 | + version: "0.0.99" |
| 147 | source_span: | 147 | source_span: |
| 148 | dependency: transitive | 148 | dependency: transitive |
| 149 | description: | 149 | description: |
| @@ -156,10 +156,10 @@ packages: | @@ -156,10 +156,10 @@ packages: | ||
| 156 | dependency: transitive | 156 | dependency: transitive |
| 157 | description: | 157 | description: |
| 158 | name: stack_trace | 158 | name: stack_trace |
| 159 | - sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" | 159 | + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" |
| 160 | url: "https://pub.flutter-io.cn" | 160 | url: "https://pub.flutter-io.cn" |
| 161 | source: hosted | 161 | source: hosted |
| 162 | - version: "1.12.0" | 162 | + version: "1.11.1" |
| 163 | stream_channel: | 163 | stream_channel: |
| 164 | dependency: transitive | 164 | dependency: transitive |
| 165 | description: | 165 | description: |
| @@ -172,10 +172,10 @@ packages: | @@ -172,10 +172,10 @@ packages: | ||
| 172 | dependency: transitive | 172 | dependency: transitive |
| 173 | description: | 173 | description: |
| 174 | name: string_scanner | 174 | name: string_scanner |
| 175 | - sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" | 175 | + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" |
| 176 | url: "https://pub.flutter-io.cn" | 176 | url: "https://pub.flutter-io.cn" |
| 177 | source: hosted | 177 | source: hosted |
| 178 | - version: "1.3.0" | 178 | + version: "1.2.0" |
| 179 | term_glyph: | 179 | term_glyph: |
| 180 | dependency: transitive | 180 | dependency: transitive |
| 181 | description: | 181 | description: |
| @@ -188,10 +188,10 @@ packages: | @@ -188,10 +188,10 @@ packages: | ||
| 188 | dependency: transitive | 188 | dependency: transitive |
| 189 | description: | 189 | description: |
| 190 | name: test_api | 190 | name: test_api |
| 191 | - sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" | 191 | + sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" |
| 192 | url: "https://pub.flutter-io.cn" | 192 | url: "https://pub.flutter-io.cn" |
| 193 | source: hosted | 193 | source: hosted |
| 194 | - version: "0.7.3" | 194 | + version: "0.7.0" |
| 195 | vector_math: | 195 | vector_math: |
| 196 | dependency: transitive | 196 | dependency: transitive |
| 197 | description: | 197 | description: |
| @@ -204,10 +204,10 @@ packages: | @@ -204,10 +204,10 @@ packages: | ||
| 204 | dependency: transitive | 204 | dependency: transitive |
| 205 | description: | 205 | description: |
| 206 | name: vm_service | 206 | name: vm_service |
| 207 | - sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b | 207 | + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" |
| 208 | url: "https://pub.flutter-io.cn" | 208 | url: "https://pub.flutter-io.cn" |
| 209 | source: hosted | 209 | source: hosted |
| 210 | - version: "14.3.0" | 210 | + version: "14.2.1" |
| 211 | sdks: | 211 | sdks: |
| 212 | - dart: ">=3.4.0 <4.0.0" | 212 | + dart: ">=3.3.0 <4.0.0" |
| 213 | flutter: ">=3.18.0-18.0.pre.54" | 213 | flutter: ">=3.18.0-18.0.pre.54" |
| @@ -2,8 +2,8 @@ | @@ -2,8 +2,8 @@ | ||
| 2 | "app": { | 2 | "app": { |
| 3 | "bundleName": "com.naji.one_key_harmonyOS", | 3 | "bundleName": "com.naji.one_key_harmonyOS", |
| 4 | "debug": true, | 4 | "debug": true, |
| 5 | - "versionCode": 103, | ||
| 6 | - "versionName": "1.0.3", | 5 | + "versionCode": 1, |
| 6 | + "versionName": "1.0.0", | ||
| 7 | "minAPIVersion": 50100018, | 7 | "minAPIVersion": 50100018, |
| 8 | "targetAPIVersion": 60000020, | 8 | "targetAPIVersion": 60000020, |
| 9 | "apiReleaseType": "Release", | 9 | "apiReleaseType": "Release", |
| @@ -2,8 +2,8 @@ | @@ -2,8 +2,8 @@ | ||
| 2 | "app": { | 2 | "app": { |
| 3 | "bundleName": "com.naji.one_key_harmonyOS", | 3 | "bundleName": "com.naji.one_key_harmonyOS", |
| 4 | "debug": true, | 4 | "debug": true, |
| 5 | - "versionCode": 103, | ||
| 6 | - "versionName": "1.0.3", | 5 | + "versionCode": 1, |
| 6 | + "versionName": "1.0.0", | ||
| 7 | "minAPIVersion": 50100018, | 7 | "minAPIVersion": 50100018, |
| 8 | "targetAPIVersion": 60000020, | 8 | "targetAPIVersion": 60000020, |
| 9 | "apiReleaseType": "Release", | 9 | "apiReleaseType": "Release", |
| @@ -2,8 +2,8 @@ | @@ -2,8 +2,8 @@ | ||
| 2 | "app": { | 2 | "app": { |
| 3 | "bundleName": "com.naji.one_key_harmonyOS", | 3 | "bundleName": "com.naji.one_key_harmonyOS", |
| 4 | "debug": true, | 4 | "debug": true, |
| 5 | - "versionCode": 103, | ||
| 6 | - "versionName": "1.0.3", | 5 | + "versionCode": 1, |
| 6 | + "versionName": "1.0.0", | ||
| 7 | "minAPIVersion": 50100018, | 7 | "minAPIVersion": 50100018, |
| 8 | "targetAPIVersion": 60000020, | 8 | "targetAPIVersion": 60000020, |
| 9 | "apiReleaseType": "Release", | 9 | "apiReleaseType": "Release", |
| @@ -37,10 +37,10 @@ packages: | @@ -37,10 +37,10 @@ packages: | ||
| 37 | dependency: transitive | 37 | dependency: transitive |
| 38 | description: | 38 | description: |
| 39 | name: collection | 39 | name: collection |
| 40 | - sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf | 40 | + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a |
| 41 | url: "https://pub.flutter-io.cn" | 41 | url: "https://pub.flutter-io.cn" |
| 42 | source: hosted | 42 | source: hosted |
| 43 | - version: "1.19.0" | 43 | + version: "1.18.0" |
| 44 | cupertino_icons: | 44 | cupertino_icons: |
| 45 | dependency: "direct main" | 45 | dependency: "direct main" |
| 46 | description: | 46 | description: |
| @@ -94,18 +94,18 @@ packages: | @@ -94,18 +94,18 @@ packages: | ||
| 94 | dependency: transitive | 94 | dependency: transitive |
| 95 | description: | 95 | description: |
| 96 | name: leak_tracker | 96 | name: leak_tracker |
| 97 | - sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" | 97 | + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" |
| 98 | url: "https://pub.flutter-io.cn" | 98 | url: "https://pub.flutter-io.cn" |
| 99 | source: hosted | 99 | source: hosted |
| 100 | - version: "10.0.7" | 100 | + version: "10.0.4" |
| 101 | leak_tracker_flutter_testing: | 101 | leak_tracker_flutter_testing: |
| 102 | dependency: transitive | 102 | dependency: transitive |
| 103 | description: | 103 | description: |
| 104 | name: leak_tracker_flutter_testing | 104 | name: leak_tracker_flutter_testing |
| 105 | - sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" | 105 | + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" |
| 106 | url: "https://pub.flutter-io.cn" | 106 | url: "https://pub.flutter-io.cn" |
| 107 | source: hosted | 107 | source: hosted |
| 108 | - version: "3.0.8" | 108 | + version: "3.0.3" |
| 109 | leak_tracker_testing: | 109 | leak_tracker_testing: |
| 110 | dependency: transitive | 110 | dependency: transitive |
| 111 | description: | 111 | description: |
| @@ -142,18 +142,18 @@ packages: | @@ -142,18 +142,18 @@ packages: | ||
| 142 | dependency: transitive | 142 | dependency: transitive |
| 143 | description: | 143 | description: |
| 144 | name: material_color_utilities | 144 | name: material_color_utilities |
| 145 | - sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec | 145 | + sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" |
| 146 | url: "https://pub.flutter-io.cn" | 146 | url: "https://pub.flutter-io.cn" |
| 147 | source: hosted | 147 | source: hosted |
| 148 | - version: "0.11.1" | 148 | + version: "0.8.0" |
| 149 | meta: | 149 | meta: |
| 150 | dependency: transitive | 150 | dependency: transitive |
| 151 | description: | 151 | description: |
| 152 | name: meta | 152 | name: meta |
| 153 | - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 | 153 | + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" |
| 154 | url: "https://pub.flutter-io.cn" | 154 | url: "https://pub.flutter-io.cn" |
| 155 | source: hosted | 155 | source: hosted |
| 156 | - version: "1.15.0" | 156 | + version: "1.12.0" |
| 157 | path: | 157 | path: |
| 158 | dependency: transitive | 158 | dependency: transitive |
| 159 | description: | 159 | description: |
| @@ -166,7 +166,7 @@ packages: | @@ -166,7 +166,7 @@ packages: | ||
| 166 | dependency: transitive | 166 | dependency: transitive |
| 167 | description: flutter | 167 | description: flutter |
| 168 | source: sdk | 168 | source: sdk |
| 169 | - version: "0.0.0" | 169 | + version: "0.0.99" |
| 170 | source_span: | 170 | source_span: |
| 171 | dependency: transitive | 171 | dependency: transitive |
| 172 | description: | 172 | description: |
| @@ -179,10 +179,10 @@ packages: | @@ -179,10 +179,10 @@ packages: | ||
| 179 | dependency: transitive | 179 | dependency: transitive |
| 180 | description: | 180 | description: |
| 181 | name: stack_trace | 181 | name: stack_trace |
| 182 | - sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" | 182 | + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" |
| 183 | url: "https://pub.flutter-io.cn" | 183 | url: "https://pub.flutter-io.cn" |
| 184 | source: hosted | 184 | source: hosted |
| 185 | - version: "1.12.0" | 185 | + version: "1.11.1" |
| 186 | stream_channel: | 186 | stream_channel: |
| 187 | dependency: transitive | 187 | dependency: transitive |
| 188 | description: | 188 | description: |
| @@ -195,10 +195,10 @@ packages: | @@ -195,10 +195,10 @@ packages: | ||
| 195 | dependency: transitive | 195 | dependency: transitive |
| 196 | description: | 196 | description: |
| 197 | name: string_scanner | 197 | name: string_scanner |
| 198 | - sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" | 198 | + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" |
| 199 | url: "https://pub.flutter-io.cn" | 199 | url: "https://pub.flutter-io.cn" |
| 200 | source: hosted | 200 | source: hosted |
| 201 | - version: "1.3.0" | 201 | + version: "1.2.0" |
| 202 | term_glyph: | 202 | term_glyph: |
| 203 | dependency: transitive | 203 | dependency: transitive |
| 204 | description: | 204 | description: |
| @@ -211,10 +211,10 @@ packages: | @@ -211,10 +211,10 @@ packages: | ||
| 211 | dependency: transitive | 211 | dependency: transitive |
| 212 | description: | 212 | description: |
| 213 | name: test_api | 213 | name: test_api |
| 214 | - sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" | 214 | + sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" |
| 215 | url: "https://pub.flutter-io.cn" | 215 | url: "https://pub.flutter-io.cn" |
| 216 | source: hosted | 216 | source: hosted |
| 217 | - version: "0.7.3" | 217 | + version: "0.7.0" |
| 218 | vector_math: | 218 | vector_math: |
| 219 | dependency: transitive | 219 | dependency: transitive |
| 220 | description: | 220 | description: |
| @@ -227,10 +227,10 @@ packages: | @@ -227,10 +227,10 @@ packages: | ||
| 227 | dependency: transitive | 227 | dependency: transitive |
| 228 | description: | 228 | description: |
| 229 | name: vm_service | 229 | name: vm_service |
| 230 | - sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b | 230 | + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" |
| 231 | url: "https://pub.flutter-io.cn" | 231 | url: "https://pub.flutter-io.cn" |
| 232 | source: hosted | 232 | source: hosted |
| 233 | - version: "14.3.0" | 233 | + version: "14.2.1" |
| 234 | sdks: | 234 | sdks: |
| 235 | - dart: ">=3.4.0 <4.0.0" | 235 | + dart: ">=3.3.0 <4.0.0" |
| 236 | flutter: ">=3.18.0-18.0.pre.54" | 236 | flutter: ">=3.18.0-18.0.pre.54" |
| @@ -37,10 +37,10 @@ packages: | @@ -37,10 +37,10 @@ packages: | ||
| 37 | dependency: transitive | 37 | dependency: transitive |
| 38 | description: | 38 | description: |
| 39 | name: collection | 39 | name: collection |
| 40 | - sha256: a1ace0a119f20aabc852d165077c036cd864315bd99b7eaa10a60100341941bf | 40 | + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a |
| 41 | url: "https://pub.flutter-io.cn" | 41 | url: "https://pub.flutter-io.cn" |
| 42 | source: hosted | 42 | source: hosted |
| 43 | - version: "1.19.0" | 43 | + version: "1.18.0" |
| 44 | fake_async: | 44 | fake_async: |
| 45 | dependency: transitive | 45 | dependency: transitive |
| 46 | description: | 46 | description: |
| @@ -71,18 +71,18 @@ packages: | @@ -71,18 +71,18 @@ packages: | ||
| 71 | dependency: transitive | 71 | dependency: transitive |
| 72 | description: | 72 | description: |
| 73 | name: leak_tracker | 73 | name: leak_tracker |
| 74 | - sha256: "7bb2830ebd849694d1ec25bf1f44582d6ac531a57a365a803a6034ff751d2d06" | 74 | + sha256: "7f0df31977cb2c0b88585095d168e689669a2cc9b97c309665e3386f3e9d341a" |
| 75 | url: "https://pub.flutter-io.cn" | 75 | url: "https://pub.flutter-io.cn" |
| 76 | source: hosted | 76 | source: hosted |
| 77 | - version: "10.0.7" | 77 | + version: "10.0.4" |
| 78 | leak_tracker_flutter_testing: | 78 | leak_tracker_flutter_testing: |
| 79 | dependency: transitive | 79 | dependency: transitive |
| 80 | description: | 80 | description: |
| 81 | name: leak_tracker_flutter_testing | 81 | name: leak_tracker_flutter_testing |
| 82 | - sha256: "9491a714cca3667b60b5c420da8217e6de0d1ba7a5ec322fab01758f6998f379" | 82 | + sha256: "06e98f569d004c1315b991ded39924b21af84cf14cc94791b8aea337d25b57f8" |
| 83 | url: "https://pub.flutter-io.cn" | 83 | url: "https://pub.flutter-io.cn" |
| 84 | source: hosted | 84 | source: hosted |
| 85 | - version: "3.0.8" | 85 | + version: "3.0.3" |
| 86 | leak_tracker_testing: | 86 | leak_tracker_testing: |
| 87 | dependency: transitive | 87 | dependency: transitive |
| 88 | description: | 88 | description: |
| @@ -119,18 +119,18 @@ packages: | @@ -119,18 +119,18 @@ packages: | ||
| 119 | dependency: transitive | 119 | dependency: transitive |
| 120 | description: | 120 | description: |
| 121 | name: material_color_utilities | 121 | name: material_color_utilities |
| 122 | - sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec | 122 | + sha256: "0e0a020085b65b6083975e499759762399b4475f766c21668c4ecca34ea74e5a" |
| 123 | url: "https://pub.flutter-io.cn" | 123 | url: "https://pub.flutter-io.cn" |
| 124 | source: hosted | 124 | source: hosted |
| 125 | - version: "0.11.1" | 125 | + version: "0.8.0" |
| 126 | meta: | 126 | meta: |
| 127 | dependency: transitive | 127 | dependency: transitive |
| 128 | description: | 128 | description: |
| 129 | name: meta | 129 | name: meta |
| 130 | - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 | 130 | + sha256: "7687075e408b093f36e6bbf6c91878cc0d4cd10f409506f7bc996f68220b9136" |
| 131 | url: "https://pub.flutter-io.cn" | 131 | url: "https://pub.flutter-io.cn" |
| 132 | source: hosted | 132 | source: hosted |
| 133 | - version: "1.15.0" | 133 | + version: "1.12.0" |
| 134 | path: | 134 | path: |
| 135 | dependency: transitive | 135 | dependency: transitive |
| 136 | description: | 136 | description: |
| @@ -143,7 +143,7 @@ packages: | @@ -143,7 +143,7 @@ packages: | ||
| 143 | dependency: transitive | 143 | dependency: transitive |
| 144 | description: flutter | 144 | description: flutter |
| 145 | source: sdk | 145 | source: sdk |
| 146 | - version: "0.0.0" | 146 | + version: "0.0.99" |
| 147 | source_span: | 147 | source_span: |
| 148 | dependency: transitive | 148 | dependency: transitive |
| 149 | description: | 149 | description: |
| @@ -156,10 +156,10 @@ packages: | @@ -156,10 +156,10 @@ packages: | ||
| 156 | dependency: transitive | 156 | dependency: transitive |
| 157 | description: | 157 | description: |
| 158 | name: stack_trace | 158 | name: stack_trace |
| 159 | - sha256: "9f47fd3630d76be3ab26f0ee06d213679aa425996925ff3feffdec504931c377" | 159 | + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" |
| 160 | url: "https://pub.flutter-io.cn" | 160 | url: "https://pub.flutter-io.cn" |
| 161 | source: hosted | 161 | source: hosted |
| 162 | - version: "1.12.0" | 162 | + version: "1.11.1" |
| 163 | stream_channel: | 163 | stream_channel: |
| 164 | dependency: transitive | 164 | dependency: transitive |
| 165 | description: | 165 | description: |
| @@ -172,10 +172,10 @@ packages: | @@ -172,10 +172,10 @@ packages: | ||
| 172 | dependency: transitive | 172 | dependency: transitive |
| 173 | description: | 173 | description: |
| 174 | name: string_scanner | 174 | name: string_scanner |
| 175 | - sha256: "688af5ed3402a4bde5b3a6c15fd768dbf2621a614950b17f04626c431ab3c4c3" | 175 | + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" |
| 176 | url: "https://pub.flutter-io.cn" | 176 | url: "https://pub.flutter-io.cn" |
| 177 | source: hosted | 177 | source: hosted |
| 178 | - version: "1.3.0" | 178 | + version: "1.2.0" |
| 179 | term_glyph: | 179 | term_glyph: |
| 180 | dependency: transitive | 180 | dependency: transitive |
| 181 | description: | 181 | description: |
| @@ -188,10 +188,10 @@ packages: | @@ -188,10 +188,10 @@ packages: | ||
| 188 | dependency: transitive | 188 | dependency: transitive |
| 189 | description: | 189 | description: |
| 190 | name: test_api | 190 | name: test_api |
| 191 | - sha256: "664d3a9a64782fcdeb83ce9c6b39e78fd2971d4e37827b9b06c3aa1edc5e760c" | 191 | + sha256: "9955ae474176f7ac8ee4e989dadfb411a58c30415bcfb648fa04b2b8a03afa7f" |
| 192 | url: "https://pub.flutter-io.cn" | 192 | url: "https://pub.flutter-io.cn" |
| 193 | source: hosted | 193 | source: hosted |
| 194 | - version: "0.7.3" | 194 | + version: "0.7.0" |
| 195 | vector_math: | 195 | vector_math: |
| 196 | dependency: transitive | 196 | dependency: transitive |
| 197 | description: | 197 | description: |
| @@ -204,10 +204,10 @@ packages: | @@ -204,10 +204,10 @@ packages: | ||
| 204 | dependency: transitive | 204 | dependency: transitive |
| 205 | description: | 205 | description: |
| 206 | name: vm_service | 206 | name: vm_service |
| 207 | - sha256: f6be3ed8bd01289b34d679c2b62226f63c0e69f9fd2e50a6b3c1c729a961041b | 207 | + sha256: "3923c89304b715fb1eb6423f017651664a03bf5f4b29983627c4da791f74a4ec" |
| 208 | url: "https://pub.flutter-io.cn" | 208 | url: "https://pub.flutter-io.cn" |
| 209 | source: hosted | 209 | source: hosted |
| 210 | - version: "14.3.0" | 210 | + version: "14.2.1" |
| 211 | sdks: | 211 | sdks: |
| 212 | - dart: ">=3.4.0 <4.0.0" | 212 | + dart: ">=3.3.0 <4.0.0" |
| 213 | flutter: ">=3.18.0-18.0.pre.54" | 213 | flutter: ">=3.18.0-18.0.pre.54" |
| @@ -2,8 +2,8 @@ | @@ -2,8 +2,8 @@ | ||
| 2 | "app": { | 2 | "app": { |
| 3 | "bundleName": "com.naji.one_key_harmonyOS", | 3 | "bundleName": "com.naji.one_key_harmonyOS", |
| 4 | "debug": true, | 4 | "debug": true, |
| 5 | - "versionCode": 103, | ||
| 6 | - "versionName": "1.0.3", | 5 | + "versionCode": 1, |
| 6 | + "versionName": "1.0.0", | ||
| 7 | "minAPIVersion": 50100018, | 7 | "minAPIVersion": 50100018, |
| 8 | "targetAPIVersion": 60000020, | 8 | "targetAPIVersion": 60000020, |
| 9 | "apiReleaseType": "Release", | 9 | "apiReleaseType": "Release", |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/.github/workflows/main.yml
0 → 100644
| 1 | +name: github pages | ||
| 2 | + | ||
| 3 | +on: | ||
| 4 | + push: | ||
| 5 | + branches: | ||
| 6 | + - master | ||
| 7 | + | ||
| 8 | +jobs: | ||
| 9 | + deploy: | ||
| 10 | + runs-on: ubuntu-18.04 | ||
| 11 | + steps: | ||
| 12 | + - uses: actions/checkout@v2 | ||
| 13 | + | ||
| 14 | + - name: Setup Flutter | ||
| 15 | + uses: subosito/flutter-action@v1 | ||
| 16 | + with: | ||
| 17 | + channel: 'dev' | ||
| 18 | + | ||
| 19 | + - name: Install | ||
| 20 | + run: | | ||
| 21 | + flutter config --enable-web | ||
| 22 | + flutter pub get | ||
| 23 | + - name: Build | ||
| 24 | + run: cd example && flutter build web | ||
| 25 | + | ||
| 26 | + - name: Deploy | ||
| 27 | + uses: peaceiris/actions-gh-pages@v3 | ||
| 28 | + with: | ||
| 29 | + deploy_key: ${{ secrets.ACTIONS_DEPLOY_KEY }} | ||
| 30 | + publish_dir: ./example/build/web |
| 1 | +# Miscellaneous | ||
| 2 | +*.class | ||
| 3 | +*.lock | ||
| 4 | +*.log | ||
| 5 | +*.pyc | ||
| 6 | +*.swp | ||
| 7 | +.DS_Store | ||
| 8 | +.atom/ | ||
| 9 | +.buildlog/ | ||
| 10 | +.history | ||
| 11 | +.svn/ | ||
| 12 | + | ||
| 13 | +# IntelliJ related | ||
| 14 | +*.iml | ||
| 15 | +*.ipr | ||
| 16 | +*.iws | ||
| 17 | +.idea/ | ||
| 18 | + | ||
| 19 | +# Visual Studio Code related | ||
| 20 | +.classpath | ||
| 21 | +.project | ||
| 22 | +.settings/ | ||
| 23 | +.vscode/ | ||
| 24 | + | ||
| 25 | +# Flutter repo-specific | ||
| 26 | +/bin/cache/ | ||
| 27 | +/bin/mingit/ | ||
| 28 | +/dev/benchmarks/mega_gallery/ | ||
| 29 | +/dev/bots/.recipe_deps | ||
| 30 | +/dev/bots/android_tools/ | ||
| 31 | +/dev/docs/doc/ | ||
| 32 | +/dev/docs/flutter.docs.zip | ||
| 33 | +/dev/docs/lib/ | ||
| 34 | +/dev/docs/pubspec.yaml | ||
| 35 | +/dev/integration_tests/**/xcuserdata | ||
| 36 | +/dev/integration_tests/**/Pods | ||
| 37 | +/packages/flutter/coverage/ | ||
| 38 | +version | ||
| 39 | + | ||
| 40 | +# packages file containing multi-root paths | ||
| 41 | +.packages.generated | ||
| 42 | + | ||
| 43 | +# Flutter/Dart/Pub related | ||
| 44 | +**/doc/api/ | ||
| 45 | +.dart_tool/ | ||
| 46 | +.flutter-plugins | ||
| 47 | +.flutter-plugins-dependencies | ||
| 48 | +.packages | ||
| 49 | +.pub-cache/ | ||
| 50 | +.pub/ | ||
| 51 | +build/ | ||
| 52 | +flutter_*.png | ||
| 53 | +linked_*.ds | ||
| 54 | +unlinked.ds | ||
| 55 | +unlinked_spec.ds | ||
| 56 | + | ||
| 57 | +# Android related | ||
| 58 | +**/android/**/gradle-wrapper.jar | ||
| 59 | +**/android/.gradle | ||
| 60 | +**/android/captures/ | ||
| 61 | +**/android/gradlew | ||
| 62 | +**/android/gradlew.bat | ||
| 63 | +**/android/local.properties | ||
| 64 | +**/android/**/GeneratedPluginRegistrant.java | ||
| 65 | +**/android/key.properties | ||
| 66 | +*.jks | ||
| 67 | + | ||
| 68 | +# iOS/XCode related | ||
| 69 | +**/ios/**/*.mode1v3 | ||
| 70 | +**/ios/**/*.mode2v3 | ||
| 71 | +**/ios/**/*.moved-aside | ||
| 72 | +**/ios/**/*.pbxuser | ||
| 73 | +**/ios/**/*.perspectivev3 | ||
| 74 | +**/ios/**/*sync/ | ||
| 75 | +**/ios/**/.sconsign.dblite | ||
| 76 | +**/ios/**/.tags* | ||
| 77 | +**/ios/**/.vagrant/ | ||
| 78 | +**/ios/**/DerivedData/ | ||
| 79 | +**/ios/**/Icon? | ||
| 80 | +**/ios/**/Pods/ | ||
| 81 | +**/ios/**/.symlinks/ | ||
| 82 | +**/ios/**/profile | ||
| 83 | +**/ios/**/xcuserdata | ||
| 84 | +**/ios/.generated/ | ||
| 85 | +**/ios/Flutter/App.framework | ||
| 86 | +**/ios/Flutter/Flutter.framework | ||
| 87 | +**/ios/Flutter/Flutter.podspec | ||
| 88 | +**/ios/Flutter/Generated.xcconfig | ||
| 89 | +**/ios/Flutter/app.flx | ||
| 90 | +**/ios/Flutter/app.zip | ||
| 91 | +**/ios/Flutter/flutter_assets/ | ||
| 92 | +**/ios/Flutter/flutter_export_environment.sh | ||
| 93 | +**/ios/ServiceDefinitions.json | ||
| 94 | +**/ios/Runner/GeneratedPluginRegistrant.* | ||
| 95 | + | ||
| 96 | +# ohos | ||
| 97 | +**/ohos/.idea/ | ||
| 98 | +**/ohos/**/.hvigor/ | ||
| 99 | +**/ohos/**/build/ | ||
| 100 | +**/ohos/**/oh_modules/ | ||
| 101 | +**/ohos/**/local.properties | ||
| 102 | +**/ohos/**/flutter_embedding.har | ||
| 103 | +**/ohos/**/oh-package-lock.json5 | ||
| 104 | + | ||
| 105 | +# macOS | ||
| 106 | +**/macos/Flutter/GeneratedPluginRegistrant.swift | ||
| 107 | +**/macos/Flutter/Flutter-Debug.xcconfig | ||
| 108 | +**/macos/Flutter/Flutter-Release.xcconfig | ||
| 109 | +**/macos/Flutter/Flutter-Profile.xcconfig | ||
| 110 | + | ||
| 111 | +# Coverage | ||
| 112 | +coverage/ | ||
| 113 | + | ||
| 114 | +# Symbols | ||
| 115 | +app.*.symbols | ||
| 116 | + | ||
| 117 | +# Exceptions to above rules. | ||
| 118 | +!**/ios/**/default.mode1v3 | ||
| 119 | +!**/ios/**/default.mode2v3 | ||
| 120 | +!**/ios/**/default.pbxuser | ||
| 121 | +!**/ios/**/default.perspectivev3 | ||
| 122 | +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages | ||
| 123 | +!/dev/ci/**/Gemfile.lock |
| 1 | +# This file tracks properties of this Flutter project. | ||
| 2 | +# Used by Flutter tool to assess capabilities and perform upgrades etc. | ||
| 3 | +# | ||
| 4 | +# This file should be version controlled and should not be manually edited. | ||
| 5 | + | ||
| 6 | +version: | ||
| 7 | + revision: 8be33b97e62dd51fc4799e611632ce78875ff370 | ||
| 8 | + channel: dev |
| 1 | +# 2.3.3 | ||
| 2 | + | ||
| 3 | +* Adding ability to send SMS directly on Android (#57). | ||
| 4 | + | ||
| 5 | +# 2.3.2 | ||
| 6 | + | ||
| 7 | +* Update Android plugin to use V2 embedding. | ||
| 8 | + | ||
| 9 | +## 2.3.1 | ||
| 10 | + | ||
| 11 | +* Full null safety | ||
| 12 | +* Fixing support for web | ||
| 13 | +* Removing macos folder | ||
| 14 | +* Fixing example | ||
| 15 | + | ||
| 16 | +## 2.3.0 | ||
| 17 | + | ||
| 18 | +* Null Safety (1 dependency needs to be upgraded for full null safety: flutter_user_agent) | ||
| 19 | + | ||
| 20 | +## 2.2.0 | ||
| 21 | + | ||
| 22 | +* Upgrading dependencies | ||
| 23 | +* Updating example (lint issues) | ||
| 24 | + | ||
| 25 | +## 2.1.1 | ||
| 26 | + | ||
| 27 | +* Fixing Issue with Web | ||
| 28 | + | ||
| 29 | +## 2.1.0 | ||
| 30 | + | ||
| 31 | +* Fixing Bugs with iOS | ||
| 32 | +* Adding URL fallback | ||
| 33 | + | ||
| 34 | +## 2.0.0 | ||
| 35 | + | ||
| 36 | +* Adding Online Demo | ||
| 37 | +* Adding Support for Web | ||
| 38 | + | ||
| 39 | +## 1.1.0 | ||
| 40 | + | ||
| 41 | +* Updating for latest ios/android flutter plugin template | ||
| 42 | + | ||
| 43 | +## 1.0.1 | ||
| 44 | + | ||
| 45 | +* Android result added | ||
| 46 | + | ||
| 47 | +## 1.0.0 * 04.29.2019 | ||
| 48 | + | ||
| 49 | +* Reduce minSdkVersion to 16 | ||
| 50 | +* Fix crash on android when `recipients` is empty (substring on empty string) | ||
| 51 | +* Add `canSendSMS` API | ||
| 52 | + - Checks if device is SMS capable (iOS and Android) | ||
| 53 | + - Checks if `smsto:` Intent is resolved and resulting activity exported (Android) | ||
| 54 | +* sendSMS: Return error when device is not SMS capable (Android) | ||
| 55 | +* Remove unused AndroidX dependency | ||
| 56 | +* Use Intent.ACTION_SENDTO and Intent.EXTRA_TEXT to increase message app support coverage | ||
| 57 | + | ||
| 58 | +## 0.2.0 * 04.06.2019 | ||
| 59 | + | ||
| 60 | +* Updating example to be desktop aware | ||
| 61 | + | ||
| 62 | +## 0.1.0 | ||
| 63 | + | ||
| 64 | +* Fix for Android Multiple People | ||
| 65 | +* Fixes Issues #8 and #4 | ||
| 66 | + | ||
| 67 | +## 0.0.5 | ||
| 68 | + | ||
| 69 | +* Removed SMS Permissions on Android | ||
| 70 | + | ||
| 71 | +## 0.0.4 | ||
| 72 | + | ||
| 73 | +* Bug Fix Send Result | ||
| 74 | +* Added Can Send Text | ||
| 75 | + | ||
| 76 | +## 0.0.3 | ||
| 77 | + | ||
| 78 | +* Bug Fix for iOS Simulator Error | ||
| 79 | + | ||
| 80 | +## 0.0.2 | ||
| 81 | + | ||
| 82 | +* Fixing Version | ||
| 83 | + | ||
| 84 | +## 0.0.1 | ||
| 85 | + | ||
| 86 | +* SMS and MMS for Android and iOS |
| 1 | +MIT License | ||
| 2 | + | ||
| 3 | +Copyright (c) 2018 Rody Davis | ||
| 4 | + | ||
| 5 | +Permission is hereby granted, free of charge, to any person obtaining a copy | ||
| 6 | +of this software and associated documentation files (the "Software"), to deal | ||
| 7 | +in the Software without restriction, including without limitation the rights | ||
| 8 | +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell | ||
| 9 | +copies of the Software, and to permit persons to whom the Software is | ||
| 10 | +furnished to do so, subject to the following conditions: | ||
| 11 | + | ||
| 12 | +The above copyright notice and this permission notice shall be included in all | ||
| 13 | +copies or substantial portions of the Software. | ||
| 14 | + | ||
| 15 | +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR | ||
| 16 | +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, | ||
| 17 | +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE | ||
| 18 | +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER | ||
| 19 | +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, | ||
| 20 | +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE | ||
| 21 | +SOFTWARE. |
| 1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
| 2 | +<!-- Copyright (c) 2021 Huawei Device Co., Ltd. | ||
| 3 | + | ||
| 4 | + Licensed under the Apache License, Version 2.0 (the "License"); | ||
| 5 | + you may not use this file except in compliance with the License. | ||
| 6 | + You may obtain a copy of the License at | ||
| 7 | + | ||
| 8 | + http://www.apache.org/licenses/LICENSE-2.0 | ||
| 9 | + | ||
| 10 | + Unless required by applicable law or agreed to in writing, software | ||
| 11 | + distributed under the License is distributed on an "AS IS" BASIS, | ||
| 12 | + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||
| 13 | + See the License for the specific language governing permissions and | ||
| 14 | + limitations under the License. | ||
| 15 | + | ||
| 16 | + This is the configuration file template for OpenHarmony OSS Audit Tool, please copy it to your project root dir and modify it refer to OpenHarmony/tools_oat/README. | ||
| 17 | + All configurations in this file will be merged to OAT-Default.xml, if you have any questions or concerns, please create issue in OpenHarmony/tools_oat and @jalenchen or chenyaxun. | ||
| 18 | + | ||
| 19 | + licensefile: | ||
| 20 | + 1.If the project don't have "LICENSE" in root dir, please define all the license files in this project in , OAT will check license files according to this rule. | ||
| 21 | + | ||
| 22 | + policylist: | ||
| 23 | + 1. policy: If the OAT-Default.xml policies do not meet your requirements, please add policies here. | ||
| 24 | + 2. policyitem: The fields type, name, path, desc is required, and the fields rule, group, filefilter is optional,the default value is: | ||
| 25 | + <policyitem type="" name="" path="" desc="" rule="may" group="defaultGroup" filefilter="defaultPolicyFilter"/> | ||
| 26 | + 3. policyitem type: | ||
| 27 | + "compatibility" is used to check license compatibility in the specified path; | ||
| 28 | + "license" is used to check source license header in the specified path; | ||
| 29 | + "copyright" is used to check source copyright header in the specified path; | ||
| 30 | + "import" is used to check source dependency in the specified path, such as import ... ,include ... | ||
| 31 | + "filetype" is used to check file type in the specified path, supported file types: archive, binary | ||
| 32 | + "filename" is used to check whether the specified file exists in the specified path(projectroot means the root dir of the project), supported file names: LICENSE, README, README.OpenSource | ||
| 33 | + 4. policyitem name: This field is used for define the license, copyright, "*" means match all, the "!" prefix means could not match this value. For example, "!GPL" means can not use GPL license. | ||
| 34 | + 5. policyitem path: This field is used for define the source file scope to apply this policyitem, the "!" prefix means exclude the files. For example, "!.*/lib/.*" means files in lib dir will be exclude while process this policyitem. | ||
| 35 | + 6. policyitem rule and group: These two fields are used together to merge policy results. "may" policyitems in the same group means any one in this group passed, the result will be passed. | ||
| 36 | + 7. policyitem filefilter: Used to bind filefilter which define filter rules. | ||
| 37 | + 7. policyitem desc: Used to describe the reason of this policy item, committers will check this while merging the code. | ||
| 38 | + 8. filefilter: Filter rules, the type filename is used to filter file name, the type filepath is used to filter file path. | ||
| 39 | + | ||
| 40 | + Note:If the text contains special characters, please escape them according to the following rules: | ||
| 41 | + " == " | ||
| 42 | + & == & | ||
| 43 | + ' == ' | ||
| 44 | + < == < | ||
| 45 | + > == > | ||
| 46 | +--> | ||
| 47 | + | ||
| 48 | +<configuration> | ||
| 49 | + <oatconfig> | ||
| 50 | + <licensefile></licensefile> | ||
| 51 | + <policylist> | ||
| 52 | + <policy | ||
| 53 | + desc="" | ||
| 54 | + name="projectPolicy"> | ||
| 55 | + <policyitem | ||
| 56 | + desc="Developed By Shenzhen Kaihong Digital Industry Development Co, Ltd." | ||
| 57 | + filefilter="copyrightPolicyFilter" | ||
| 58 | + group="defaultGroup" | ||
| 59 | + name="Shenzhen Kaihong Digital Industry Development Co., Ltd." | ||
| 60 | + path=".*" | ||
| 61 | + rule="may" | ||
| 62 | + type="copyright"/> | ||
| 63 | + <policyitem | ||
| 64 | + desc="Developed By The Flutter Authors. All rights reserved." | ||
| 65 | + filefilter="copyrightPolicyFilter" | ||
| 66 | + group="defaultGroup" | ||
| 67 | + name="The Flutter Authors. All rights reserved" | ||
| 68 | + path=".*" | ||
| 69 | + rule="may" | ||
| 70 | + type="copyright"/> | ||
| 71 | + <policyitem type="license" name="BSD-3-Clause" path=".*" filefilter="defaultPolicyFilter" desc="不影响兼容性"/> | ||
| 72 | + <policyitem type="license" name="BSD 3-Clause License" path=".*" filefilter="defaultPolicyFilter" desc="不影响兼容性"/> | ||
| 73 | + <policyitem type="license" name="BSD-2-Clause" path=".*" filefilter="defaultPolicyFilter" desc="不影响兼容性"/> | ||
| 74 | + <policyitem type="license" name="BSD 2-Clause License" path=".*" filefilter="defaultPolicyFilter" desc="不影响兼容性"/> | ||
| 75 | + <policyitem type="compatibility" name="BSD-3-Clause" path=".*" desc="不影响兼容性"/> | ||
| 76 | + <policyitem type="compatibility" name="BSD-2-Clause" path=".*" desc="不影响兼容性"/> | ||
| 77 | + <policyitem type="license" name="BSDStyleLicense" path=".*" filefilter="defaultPolicyFilter" desc="不影响兼容性"/> | ||
| 78 | + </policy> | ||
| 79 | + <policy name="projectPolicy" desc=""> | ||
| 80 | + <policyitem type="compatibility" name="GPL-2.0+" path=".*" desc="Process that runs independently, invoked by the X process."/> | ||
| 81 | + <policyitem type="compatibility" name="Apache-2.0" path=".*" desc="不影响兼容性"/> | ||
| 82 | + <policyitem type="compatibility" name="BSDStyleLicense" path=".*" desc="不影响兼容性" /> | ||
| 83 | + </policy> | ||
| 84 | + </policylist> | ||
| 85 | + | ||
| 86 | + <filefilterlist> | ||
| 87 | + <filefilter name="defaultFilter" desc="Files not to check"> | ||
| 88 | + <filteritem type="filename" name="*.iml|*.json|*.txt" desc="desc files"/> | ||
| 89 | + <filteritem type="filename" name="*.png|*.ico|*.jpg|*.webp|*.ttf|*.enc|*.mp3" desc="app resource files"/> | ||
| 90 | + <filteritem type="filename" name="*.so|*.har" desc="engine二进制文件,不影响兼容性"/> | ||
| 91 | + <filteritem type="filename" name="*.tgz" desc="hvigor本地插件,不影响兼容性"/> | ||
| 92 | + <filteritem type="filename" name="**.json5" desc="配置文件,flutter插件项目编译时会重写覆盖"/> | ||
| 93 | + <filteritem type="filepath" name="*/ohos/har/" desc="hvigor本地插件,不影响兼容性"/> | ||
| 94 | + <filteritem type="filepath" name="*/ohos/entry/src/main/resources/rawfile/flutter_assets/" desc="资源文件,不影响兼容性"/> | ||
| 95 | + <filteritem type="filepath" name="*/ohos/dta/icudtl.dat" desc="ohos字体库文件,不影响兼容性"/> | ||
| 96 | + <filteritem type="filepath" name="*/ohos/hvigor/hvigor-wrapper.js" desc="hvigorw编译程序,不影响兼容性"/> | ||
| 97 | + <filteritem type="filepath" name="*/ohos/hvigorw.bat" desc="hvigorw编译程序,不影响兼容性"/> | ||
| 98 | + <filteritem type="filepath" name="*/ohos/har/har_product/flutter_embedding.har.profile.10" desc="二进制文件,不影响兼容性"/> | ||
| 99 | + <filteritem type="filepath" name="*/android/*" desc="android文件,不涉及适配"/> | ||
| 100 | + <filteritem type="filepath" name="*/ios/*" desc="iOS文件,不涉及适配"/> | ||
| 101 | + <filteritem type="filepath" name="*/macos/*" desc="macos文件,不涉及适配"/> | ||
| 102 | + <filteritem type="filepath" name="*/plugins/GeneratedPluginRegistrant.ets" desc="自动生成的文件"/> | ||
| 103 | + <filteritem type="filepath" name="*/ohos/BuildProfile.ets" desc="自动生成的文件"/> | ||
| 104 | + <filteritem type="filepath" name="*/ohos/hvigorw.bat" desc="自动生成的文件"/> | ||
| 105 | + <filteritem type="filepath" name="*/example/analysis_options.yaml" desc="自动生成的文件"/> | ||
| 106 | + </filefilter> | ||
| 107 | + <filefilter name="defaultPolicyFilter" desc="Filters for compatibility,license header policies"> | ||
| 108 | + <filteritem type="filepath" name="**/ohos/hvigor/hvigor-wrapper.js" desc="hvigorw编译程序,不影响兼容性"/> | ||
| 109 | + <filteritem type="filename" name="**.json5" desc="配置文件,flutter插件项目编译时会重写覆盖"/> | ||
| 110 | + <filteritem type="filepath" name="*/android/*" desc="android文件,不涉及适配"/> | ||
| 111 | + <filteritem type="filepath" name="*/ios/*" desc="iOS文件,不涉及适配"/> | ||
| 112 | + <filteritem type="filepath" name="*/macos/*" desc="macos文件,不涉及适配"/> | ||
| 113 | + <filteritem type="filepath" name="*/plugins/GeneratedPluginRegistrant.ets" desc="自动生成的文件"/> | ||
| 114 | + <filteritem type="filepath" name="*/ohos/BuildProfile.ets" desc="自动生成的文件"/> | ||
| 115 | + <filteritem type="filepath" name="*/ohos/hvigorw.bat" desc="自动生成的文件"/> | ||
| 116 | + <filteritem type="filepath" name="*/example/analysis_options.yaml" desc="自动生成的文件"/> | ||
| 117 | + </filefilter> | ||
| 118 | + <filefilter name="copyrightPolicyFilter" desc="Filters for copyright header policies"> | ||
| 119 | + <filteritem type="filename" name="**.dart" desc="dart原始代码"/> | ||
| 120 | + <filteritem type="filepath" name="**/ohos/hvigor/hvigor-wrapper.js" desc="hvigorw编译程序,不影响兼容性"/> | ||
| 121 | + <filteritem type="filepath" name="*/android/*" desc="android文件,不涉及适配"/> | ||
| 122 | + <filteritem type="filepath" name="*/ios/*" desc="iOS文件,不涉及适配"/> | ||
| 123 | + <filteritem type="filepath" name="*/macos/*" desc="macos文件,不涉及适配"/> | ||
| 124 | + <filteritem type="filepath" name="*/plugins/GeneratedPluginRegistrant.ets" desc="自动生成的文件"/> | ||
| 125 | + <filteritem type="filepath" name="*/ohos/BuildProfile.ets" desc="自动生成的文件"/> | ||
| 126 | + <filteritem type="filepath" name="*/ohos/hvigorw.bat" desc="自动生成的文件"/> | ||
| 127 | + <filteritem type="filepath" name="*/example/analysis_options.yaml" desc="自动生成的文件"/> | ||
| 128 | + </filefilter> | ||
| 129 | + <filefilter name="licenseFileNamePolicyFilter" desc="Filters for LICENSE file policies"> | ||
| 130 | + </filefilter> | ||
| 131 | + <filefilter name="readmeFileNamePolicyFilter" desc="Filters for README file policies"> | ||
| 132 | + </filefilter> | ||
| 133 | + <filefilter name="readmeOpenSourcefileNamePolicyFilter" desc="Filters for README.OpenSource file policies"> | ||
| 134 | + </filefilter> | ||
| 135 | + <filefilter name="binaryFileTypePolicyFilter" desc="Filters for binary file policies"> | ||
| 136 | + <filteritem type="filename" name="*.iml|*.json|*.txt" desc="desc files"/> | ||
| 137 | + <filteritem type='filepath' name="example/ohos/dta/icudtl.dat" desc='二进制文件,不影响兼容性'/> | ||
| 138 | + <filteritem type="filepath" name="*/android/*" desc="android文件,不涉及适配"/> | ||
| 139 | + <filteritem type="filepath" name="*/ios/*" desc="iOS文件,不涉及适配"/> | ||
| 140 | + <filteritem type="filepath" name="*/macos/*" desc="macos文件,不涉及适配"/> | ||
| 141 | + </filefilter> | ||
| 142 | + </filefilterlist> | ||
| 143 | + </oatconfig> | ||
| 144 | +</configuration> | ||
| 145 | + |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/README.OpenHarmony.md
0 → 100644
| 1 | +> Template version: v0.0.1 | ||
| 2 | + | ||
| 3 | +<p align="center"> | ||
| 4 | + <h1 align="center"> <code>flutter_sms</code> </h1> | ||
| 5 | +</p> | ||
| 6 | + | ||
| 7 | +This project is based on [flutter_sms](https://pub.dev/packages/flutter_sms). | ||
| 8 | + | ||
| 9 | +## 1. Installation and Usage | ||
| 10 | + | ||
| 11 | +### 1.1 Installation | ||
| 12 | + | ||
| 13 | +Go to the project directory and add the following dependencies in pubspec.yaml | ||
| 14 | + | ||
| 15 | +<!-- tabs:start --> | ||
| 16 | + | ||
| 17 | +#### pubspec.yaml | ||
| 18 | + | ||
| 19 | +```yaml | ||
| 20 | +... | ||
| 21 | + | ||
| 22 | +dependencies: | ||
| 23 | + flutter_sms: | ||
| 24 | + git: | ||
| 25 | + url: https://gitcode.com/openharmony-sig/fluttertpc_flutter_sms.git | ||
| 26 | +... | ||
| 27 | +``` | ||
| 28 | + | ||
| 29 | +Execute Command | ||
| 30 | + | ||
| 31 | +```bash | ||
| 32 | +flutter pub get | ||
| 33 | +``` | ||
| 34 | + | ||
| 35 | +<!-- tabs:end --> | ||
| 36 | + | ||
| 37 | +### 1.2 Usage | ||
| 38 | + | ||
| 39 | +For use cases [ohos/example](./example/lib/main.dart) | ||
| 40 | + | ||
| 41 | +## 2. Constraints | ||
| 42 | + | ||
| 43 | +### 2.1 Compatibility | ||
| 44 | + | ||
| 45 | +This document is verified based on the following versions: | ||
| 46 | + | ||
| 47 | +1. Flutter: 3.7.12-ohos-1.0.6; SDK: 5.0.0(12); IDE: DevEco Studio: 5.0.13.200; ROM: 5.1.0.120 SP3; | ||
| 48 | +2. Flutter: 3.22.1-ohos-1.0.1; SDK: 5.0.0(12); IDE: DevEco Studio: 5.0.13.200; ROM: 5.1.0.120 SP3; | ||
| 49 | + | ||
| 50 | +## 3. API | ||
| 51 | + | ||
| 52 | +> [!TIP] If the value of **ohos Support** is **yes**, it means that the ohos platform supports this property; **no** means the opposite; **partially** means some capabilities of this property are supported. The usage method is the same on different platforms and the effect is the same as that of iOS or Android. | ||
| 53 | + | ||
| 54 | +| Name | Description | Type | Input | Output | ohos Support | | ||
| 55 | +| -------------- | --------------------------------------------- | -------- | ---------------------------------------------------------------------------------- | -------------- | ------------ | | ||
| 56 | +| sendSMS | Open SMS Dialog on ohos | fuction | {required String message,required List<String> recipients,bool sendDirect = false} | Future<String> | yes | | ||
| 57 | +| launchSms | Launch SMS Url Scheme for single recipien | fuction | {String? message,String? number} | Future<bool> | yes | | ||
| 58 | +| launchSmsMulti | Launch SMS Url Scheme for multiple recipients | function | {required String message,required List<String> numbers} | Future<bool> | yes | | ||
| 59 | +| canSendSMS | Check if you can send SMS on this platform | fuction | / | Future<bool> | yes | | ||
| 60 | + | ||
| 61 | +## 4. Known Issues | ||
| 62 | + | ||
| 63 | +## 5. Others | ||
| 64 | + | ||
| 65 | +## 6. License | ||
| 66 | + | ||
| 67 | +This project is licensed under [The MIT License (MIT)](./LICENSE). |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/README.OpenHarmony_CN.md
0 → 100644
| 1 | +> 模板版本: v0.0.1 | ||
| 2 | + | ||
| 3 | +<p align="center"> | ||
| 4 | + <h1 align="center"> <code>flutter_sms</code> </h1> | ||
| 5 | +</p> | ||
| 6 | + | ||
| 7 | +本项目基于 [flutter_sms](https://pub.dev/packages/flutter_sms) 开发。 | ||
| 8 | + | ||
| 9 | +## 1. 安装与使用 | ||
| 10 | + | ||
| 11 | +### 1.1 安装方式 | ||
| 12 | + | ||
| 13 | +进入到工程目录并在 pubspec.yaml 中添加以下依赖: | ||
| 14 | + | ||
| 15 | +<!-- tabs:start --> | ||
| 16 | + | ||
| 17 | +#### pubspec.yaml | ||
| 18 | + | ||
| 19 | +```yaml | ||
| 20 | +... | ||
| 21 | + | ||
| 22 | +dependencies: | ||
| 23 | + flutter_sms: | ||
| 24 | + git: | ||
| 25 | + url: https://gitcode.com/openharmony-sig/fluttertpc_flutter_sms.git | ||
| 26 | +... | ||
| 27 | +``` | ||
| 28 | + | ||
| 29 | +执行命令 | ||
| 30 | + | ||
| 31 | +```bash | ||
| 32 | +flutter pub get | ||
| 33 | +``` | ||
| 34 | + | ||
| 35 | +<!-- tabs:end --> | ||
| 36 | + | ||
| 37 | +### 1.2 使用案例 | ||
| 38 | + | ||
| 39 | +使用案例详见 [ohos/example](./example/lib/main.dart) | ||
| 40 | + | ||
| 41 | +## 2. 约束与限制 | ||
| 42 | + | ||
| 43 | +### 2.1 兼容性 | ||
| 44 | + | ||
| 45 | +在以下版本中已测试通过 | ||
| 46 | + | ||
| 47 | +1. Flutter: 3.7.12-ohos-1.0.6; SDK: 5.0.0(12); IDE: DevEco Studio: 5.0.13.200; ROM: 5.1.0.120 SP3; | ||
| 48 | +2. Flutter: 3.22.1-ohos-1.0.1; SDK: 5.0.0(12); IDE: DevEco Studio: 5.0.13.200; ROM: 5.1.0.120 SP3; | ||
| 49 | + | ||
| 50 | +## 3. API | ||
| 51 | + | ||
| 52 | +> [!TIP] "ohos Support"列为 yes 表示 ohos 平台支持该属性;no 则表示不支持;partially 表示部分支持。使用方法跨平台一致,效果对标 iOS 或 Android 的效果。 | ||
| 53 | + | ||
| 54 | +| Name | Description | Type | Input | Output | ohos Support | | ||
| 55 | +| -------------- | --------------------------------------------- | -------- | ---------------------------------------------------------------------------------- | -------------- | ------------ | | ||
| 56 | +| sendSMS | Open SMS Dialog on ohos | fuction | {required String message,required List<String> recipients,bool sendDirect = false} | Future<String> | yes | | ||
| 57 | +| launchSms | Launch SMS Url Scheme for single recipien | fuction | {String? message,String? number} | Future<bool> | yes | | ||
| 58 | +| launchSmsMulti | Launch SMS Url Scheme for multiple recipients | function | {required String message,required List<String> numbers} | Future<bool> | yes | | ||
| 59 | +| canSendSMS | Check if you can send SMS on this platform | fuction | / | Future<bool> | yes | | ||
| 60 | + | ||
| 61 | +## 4. 遗留问题 | ||
| 62 | + | ||
| 63 | +## 5. 其他 | ||
| 64 | + | ||
| 65 | +## 6. 开源协议 | ||
| 66 | + | ||
| 67 | +本项目基于 [The MIT License (MIT)](./LICENSE) ,请自由地享受和参与开源。 |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/README.OpenSource
0 → 100644
| 1 | +[ | ||
| 2 | + { | ||
| 3 | + "Name": "flutter_sms", | ||
| 4 | + "License": "MIT License", | ||
| 5 | + "License File": "LICENSE", | ||
| 6 | + "Version Number": "eea09849c355405d77175542c982a2f567d76232", | ||
| 7 | + "Owner": "george.lihui@huawei.com", | ||
| 8 | + "Upstream URL": "https://github.com/fluttercommunity/flutter_sms", | ||
| 9 | + "Description": "A Flutter plugin to Send SMS and MMS on iOS and Android. If iMessage is enabled it will send as iMessage on iOS. This plugin must be tested on a real device on iOS." | ||
| 10 | + } | ||
| 11 | +] |
| 1 | +[](https://github.com/fluttercommunity/community) | ||
| 2 | + | ||
| 3 | +[](https://www.buymeacoffee.com/rodydavis) | ||
| 4 | +[](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WSH3GVC49GNNJ) | ||
| 5 | + | ||
| 6 | +[](https://github.com/fluttercommunity/flutter_sms) | ||
| 7 | +[](https://pub.dev/packages/flutter_sms) | ||
| 8 | + | ||
| 9 | +# flutter_sms | ||
| 10 | + | ||
| 11 | + | ||
| 12 | + | ||
| 13 | +Online Demo: https://fluttercommunity.github.io/flutter_sms/ | ||
| 14 | + | ||
| 15 | +## Description | ||
| 16 | + | ||
| 17 | +Flutter Plugin for sending SMS and MMS on Android and iOS. If you send to more than one person it will send as MMS. On the iOS if the number is an iPhone and iMessage is enabled it will send as an iMessage. | ||
| 18 | + | ||
| 19 | +## How To Use | ||
| 20 | + | ||
| 21 | +You can send multiple ways: | ||
| 22 | + | ||
| 23 | +1. Message and No People | ||
| 24 | +2. People and No Message | ||
| 25 | +3. Message and People | ||
| 26 | + | ||
| 27 | +This will populate the correct fields. | ||
| 28 | + | ||
| 29 | + | ||
| 30 | +## Example | ||
| 31 | + | ||
| 32 | +Make sure to Install and Import the Package. | ||
| 33 | + | ||
| 34 | +``` dart | ||
| 35 | +import 'package:flutter_sms/flutter_sms.dart'; | ||
| 36 | +``` | ||
| 37 | + | ||
| 38 | +Create a function for sending messages. | ||
| 39 | + | ||
| 40 | +``` dart | ||
| 41 | +void _sendSMS(String message, List<String> recipents) async { | ||
| 42 | + String _result = await sendSMS(message: message, recipients: recipents) | ||
| 43 | + .catchError((onError) { | ||
| 44 | + print(onError); | ||
| 45 | + }); | ||
| 46 | +print(_result); | ||
| 47 | +} | ||
| 48 | +``` | ||
| 49 | + | ||
| 50 | +You can quickly send the message with this function. | ||
| 51 | + | ||
| 52 | +``` dart | ||
| 53 | +String message = "This is a test message!"; | ||
| 54 | +List<String> recipents = ["1234567890", "5556787676"]; | ||
| 55 | + | ||
| 56 | +_sendSMS(message, recipents); | ||
| 57 | +``` | ||
| 58 | + | ||
| 59 | + | ||
| 60 | +## Sending Direct | ||
| 61 | + | ||
| 62 | +**WARNING, there is a narrow category of apps that can get into the play store | ||
| 63 | +using this feature. Using it is only advisable if you fit into this category or | ||
| 64 | +you intent to distribute through a third party platform** | ||
| 65 | + | ||
| 66 | +On Android, you can skip the additional dialog with the sendDirect parameter. | ||
| 67 | + | ||
| 68 | +``` dart | ||
| 69 | +String message = "This is a test message!"; | ||
| 70 | +List<String> recipents = ["1234567890", "5556787676"]; | ||
| 71 | + | ||
| 72 | + String _result = await sendSMS(message: message, recipients: recipents, sendDirect: true) | ||
| 73 | + .catchError((onError) { | ||
| 74 | + print(onError); | ||
| 75 | + }); | ||
| 76 | +print(_result); | ||
| 77 | +``` | ||
| 78 | + | ||
| 79 | +NOTE: This also requires the SEND_SMS permission to be added to the AndroidManifest.xml | ||
| 80 | + | ||
| 81 | +``` | ||
| 82 | + <uses-permission android:name="android.permission.SEND_SMS"/> | ||
| 83 | + | ||
| 84 | + <application | ||
| 85 | + ... | ||
| 86 | +``` | ||
| 87 | + | ||
| 88 | + | ||
| 89 | +## Screenshots | ||
| 90 | + | ||
| 91 | +iOS SMS | Android MMS | ||
| 92 | +:-------------------------:|:-------------------------: | ||
| 93 | + |  | ||
| 94 | + | ||
| 95 | +You can find other [screenshots here](https://github.com/fluttercommunity/flutter_sms/tree/master/screenshots). |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/README_OpenHarmony.md
0 → 100644
| 1 | +# flutter_sms | ||
| 2 | + | ||
| 3 | +原始仓来源:https://github.com/fluttercommunity/flutter_sms | ||
| 4 | + | ||
| 5 | +## 仓库简介 | ||
| 6 | +flutter_sms是一个Flutter插件,旨在帮助开发者在Flutter应用中实现短信发送功能。 | ||
| 7 | +该仓库为flutter_sms库适配OpenHarmony的仓库。 | ||
| 8 | + | ||
| 9 | +## 引入背景简述 | ||
| 10 | +OpenHarmony北向生态发展过程中,已经适配Flutter的厂商在接入OpenHarmony过程中存在使用flutter_sms的诉求。鉴于此OpenHarmony为支持北向生态伙伴快速接入适配、快速实现产品化而提供的flutter_sms,本方案采用插件化的适配器模式实现flutter_sms适配OpenHarmony平台。 | ||
| 11 | + | ||
| 12 | +## 使用场景 | ||
| 13 | +本方案仅供应用厂商中已支持Flutter框架的设备在移植OpenHarmony系统过程中作为备选方案使用。 | ||
| 14 | + | ||
| 15 | +## 使用文档 | ||
| 16 | + | ||
| 17 | +适配OpenHarmony平台的使用指导请见:[Flutter使用指导文档](https://gitee.com/openharmony-sig/flutter_samples/blob/master/ohos/docs/07_plugin/ohos%E5%B9%B3%E5%8F%B0%E9%80%82%E9%85%8Dflutter%E4%B8%89%E6%96%B9%E5%BA%93%E6%8C%87%E5%AF%BC.md) | ||
| 18 | + | ||
| 19 | +## License | ||
| 20 | + | ||
| 21 | +MIT License | ||
| 22 | + | ||
| 23 | +见 [LICENSE](LICENSE) |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/android/build.gradle
0 → 100644
| 1 | +group 'com.example.flutter_sms' | ||
| 2 | +version '1.0-SNAPSHOT' | ||
| 3 | + | ||
| 4 | +buildscript { | ||
| 5 | + ext.kotlin_version = '1.7.10' | ||
| 6 | + repositories { | ||
| 7 | + google() | ||
| 8 | + jcenter() | ||
| 9 | + } | ||
| 10 | + | ||
| 11 | + dependencies { | ||
| 12 | + classpath 'com.android.tools.build:gradle:3.5.4' | ||
| 13 | + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" | ||
| 14 | + } | ||
| 15 | +} | ||
| 16 | + | ||
| 17 | +rootProject.allprojects { | ||
| 18 | + repositories { | ||
| 19 | + google() | ||
| 20 | + jcenter() | ||
| 21 | + } | ||
| 22 | +} | ||
| 23 | + | ||
| 24 | +apply plugin: 'com.android.library' | ||
| 25 | +apply plugin: 'kotlin-android' | ||
| 26 | + | ||
| 27 | +android { | ||
| 28 | + compileSdkVersion 31 | ||
| 29 | + | ||
| 30 | + sourceSets { | ||
| 31 | + main.java.srcDirs += 'src/main/kotlin' | ||
| 32 | + } | ||
| 33 | + defaultConfig { | ||
| 34 | + minSdkVersion 16 | ||
| 35 | + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" | ||
| 36 | + } | ||
| 37 | + lintOptions { | ||
| 38 | + disable 'InvalidPackage' | ||
| 39 | + } | ||
| 40 | +} | ||
| 41 | + | ||
| 42 | +dependencies { | ||
| 43 | + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" | ||
| 44 | +} |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/android/settings.gradle
0 → 100644
| 1 | +rootProject.name = 'flutter_sms' |
| 1 | +package com.example.flutter_sms | ||
| 2 | + | ||
| 3 | +import android.annotation.TargetApi | ||
| 4 | +import android.app.Activity | ||
| 5 | +import android.app.PendingIntent | ||
| 6 | +import android.content.Intent | ||
| 7 | +import android.content.pm.PackageManager | ||
| 8 | +import android.net.Uri | ||
| 9 | +import android.os.Build | ||
| 10 | +import android.telephony.SmsManager | ||
| 11 | +import android.util.Log | ||
| 12 | +import androidx.annotation.NonNull | ||
| 13 | +import io.flutter.embedding.engine.plugins.FlutterPlugin | ||
| 14 | +import io.flutter.embedding.engine.plugins.activity.ActivityAware | ||
| 15 | +import io.flutter.embedding.engine.plugins.activity.ActivityPluginBinding | ||
| 16 | +import io.flutter.plugin.common.BinaryMessenger | ||
| 17 | +import io.flutter.plugin.common.MethodCall | ||
| 18 | +import io.flutter.plugin.common.MethodChannel | ||
| 19 | +import io.flutter.plugin.common.MethodChannel.MethodCallHandler | ||
| 20 | +import io.flutter.plugin.common.MethodChannel.Result | ||
| 21 | +import io.flutter.plugin.common.PluginRegistry.Registrar | ||
| 22 | + | ||
| 23 | + | ||
| 24 | +class FlutterSmsPlugin: FlutterPlugin, MethodCallHandler, ActivityAware { | ||
| 25 | + private lateinit var mChannel: MethodChannel | ||
| 26 | + private var activity: Activity? = null | ||
| 27 | + private val REQUEST_CODE_SEND_SMS = 205 | ||
| 28 | + | ||
| 29 | + override fun onAttachedToActivity(binding: ActivityPluginBinding) { | ||
| 30 | + activity = binding.activity | ||
| 31 | + } | ||
| 32 | + | ||
| 33 | + override fun onDetachedFromActivity() { | ||
| 34 | + activity = null | ||
| 35 | + } | ||
| 36 | + | ||
| 37 | + override fun onDetachedFromActivityForConfigChanges() { | ||
| 38 | + activity = null | ||
| 39 | + } | ||
| 40 | + | ||
| 41 | + override fun onReattachedToActivityForConfigChanges(binding: ActivityPluginBinding) { | ||
| 42 | + activity = binding.activity | ||
| 43 | + } | ||
| 44 | + | ||
| 45 | + override fun onAttachedToEngine(@NonNull flutterPluginBinding: FlutterPlugin.FlutterPluginBinding) { | ||
| 46 | + setupCallbackChannels(flutterPluginBinding.binaryMessenger) | ||
| 47 | + } | ||
| 48 | + | ||
| 49 | + override fun onDetachedFromEngine(@NonNull binding: FlutterPlugin.FlutterPluginBinding) { | ||
| 50 | + teardown() | ||
| 51 | + } | ||
| 52 | + | ||
| 53 | + private fun setupCallbackChannels(messenger: BinaryMessenger) { | ||
| 54 | + mChannel = MethodChannel(messenger, "flutter_sms") | ||
| 55 | + mChannel.setMethodCallHandler(this) | ||
| 56 | + } | ||
| 57 | + | ||
| 58 | + private fun teardown() { | ||
| 59 | + mChannel.setMethodCallHandler(null) | ||
| 60 | + } | ||
| 61 | + | ||
| 62 | + // V1 embedding entry point. This is deprecated and will be removed in a future Flutter | ||
| 63 | + // release but we leave it here in case someone's app does not utilize the V2 embedding yet. | ||
| 64 | + companion object { | ||
| 65 | + @JvmStatic | ||
| 66 | + fun registerWith(registrar: Registrar) { | ||
| 67 | + val inst = FlutterSmsPlugin() | ||
| 68 | + inst.activity = registrar.activity() | ||
| 69 | + inst.setupCallbackChannels(registrar.messenger()) | ||
| 70 | + } | ||
| 71 | + } | ||
| 72 | + | ||
| 73 | + override fun onMethodCall(call: MethodCall, result: Result) { | ||
| 74 | + when (call.method) { | ||
| 75 | + "sendSMS" -> { | ||
| 76 | + if (!canSendSMS()) { | ||
| 77 | + result.error( | ||
| 78 | + "device_not_capable", | ||
| 79 | + "The current device is not capable of sending text messages.", | ||
| 80 | + "A device may be unable to send messages if it does not support messaging or if it is not currently configured to send messages. This only applies to the ability to send text messages via iMessage, SMS, and MMS.") | ||
| 81 | + return | ||
| 82 | + } | ||
| 83 | + val message = call.argument<String?>("message") ?: "" | ||
| 84 | + val recipients = call.argument<String?>("recipients") ?: "" | ||
| 85 | + val sendDirect = call.argument<Boolean?>("sendDirect") ?: false | ||
| 86 | + sendSMS(result, recipients, message!!, sendDirect) | ||
| 87 | + } | ||
| 88 | + "canSendSMS" -> result.success(canSendSMS()) | ||
| 89 | + else -> result.notImplemented() | ||
| 90 | + } | ||
| 91 | + } | ||
| 92 | + | ||
| 93 | + @TargetApi(Build.VERSION_CODES.ECLAIR) | ||
| 94 | + private fun canSendSMS(): Boolean { | ||
| 95 | + if (!activity!!.packageManager.hasSystemFeature(PackageManager.FEATURE_TELEPHONY)) | ||
| 96 | + return false | ||
| 97 | + val intent = Intent(Intent.ACTION_SENDTO) | ||
| 98 | + intent.data = Uri.parse("smsto:") | ||
| 99 | + val activityInfo = intent.resolveActivityInfo(activity!!.packageManager, intent.flags.toInt()) | ||
| 100 | + return !(activityInfo == null || !activityInfo.exported) | ||
| 101 | + } | ||
| 102 | + | ||
| 103 | + private fun sendSMS(result: Result, phones: String, message: String, sendDirect: Boolean) { | ||
| 104 | + if (sendDirect) { | ||
| 105 | + sendSMSDirect(result, phones, message); | ||
| 106 | + } | ||
| 107 | + else { | ||
| 108 | + sendSMSDialog(result, phones, message); | ||
| 109 | + } | ||
| 110 | + } | ||
| 111 | + | ||
| 112 | + private fun sendSMSDirect(result: Result, phones: String, message: String) { | ||
| 113 | + // SmsManager is android.telephony | ||
| 114 | + val sentIntent = PendingIntent.getBroadcast(activity, 0, Intent("SMS_SENT_ACTION"), PendingIntent.FLAG_IMMUTABLE) | ||
| 115 | + val mSmsManager = SmsManager.getDefault() | ||
| 116 | + val numbers = phones.split(";") | ||
| 117 | + | ||
| 118 | + for (num in numbers) { | ||
| 119 | + Log.d("Flutter SMS", "msg.length() : " + message.toByteArray().size) | ||
| 120 | + if (message.toByteArray().size > 80) { | ||
| 121 | + val partMessage = mSmsManager.divideMessage(message) | ||
| 122 | + mSmsManager.sendMultipartTextMessage(num, null, partMessage, null, null) | ||
| 123 | + } else { | ||
| 124 | + mSmsManager.sendTextMessage(num, null, message, sentIntent, null) | ||
| 125 | + } | ||
| 126 | + } | ||
| 127 | + | ||
| 128 | + result.success("SMS Sent!") | ||
| 129 | + } | ||
| 130 | + | ||
| 131 | + private fun sendSMSDialog(result: Result, phones: String, message: String) { | ||
| 132 | + val intent = Intent(Intent.ACTION_SENDTO) | ||
| 133 | + intent.data = Uri.parse("smsto:$phones") | ||
| 134 | + intent.putExtra("sms_body", message) | ||
| 135 | + intent.putExtra(Intent.EXTRA_TEXT, message) | ||
| 136 | + activity?.startActivityForResult(intent, REQUEST_CODE_SEND_SMS) | ||
| 137 | + result.success("SMS Sent!") | ||
| 138 | + } | ||
| 139 | +} |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/.gitignore
0 → 100644
| 1 | +# Miscellaneous | ||
| 2 | +*.class | ||
| 3 | +*.log | ||
| 4 | +*.pyc | ||
| 5 | +*.swp | ||
| 6 | +.DS_Store | ||
| 7 | +.atom/ | ||
| 8 | +.buildlog/ | ||
| 9 | +.history | ||
| 10 | +.svn/ | ||
| 11 | + | ||
| 12 | +# IntelliJ related | ||
| 13 | +*.iml | ||
| 14 | +*.ipr | ||
| 15 | +*.iws | ||
| 16 | +.idea/ | ||
| 17 | + | ||
| 18 | +# The .vscode folder contains launch configuration and tasks you configure in | ||
| 19 | +# VS Code which you may wish to be included in version control, so this line | ||
| 20 | +# is commented out by default. | ||
| 21 | +#.vscode/ | ||
| 22 | + | ||
| 23 | +# Flutter/Dart/Pub related | ||
| 24 | +**/doc/api/ | ||
| 25 | +.dart_tool/ | ||
| 26 | +.flutter-plugins | ||
| 27 | +.packages | ||
| 28 | +.pub-cache/ | ||
| 29 | +.pub/ | ||
| 30 | +/build/ | ||
| 31 | + | ||
| 32 | +# Web related | ||
| 33 | +lib/generated_plugin_registrant.dart | ||
| 34 | + | ||
| 35 | +# Exceptions to above rules. | ||
| 36 | +!/packages/flutter_tools/test/data/dart_dependencies_test/**/.packages |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/.metadata
0 → 100644
| 1 | +# This file tracks properties of this Flutter project. | ||
| 2 | +# Used by Flutter tool to assess capabilities and perform upgrades etc. | ||
| 3 | +# | ||
| 4 | +# This file should be version controlled. | ||
| 5 | + | ||
| 6 | +version: | ||
| 7 | + revision: 52f3e60cd29ce0e2a21301abbda13ee7299c6ba3 | ||
| 8 | + channel: master | ||
| 9 | + | ||
| 10 | +project_type: app | ||
| 11 | + | ||
| 12 | +# Tracks metadata for the flutter migrate command | ||
| 13 | +migration: | ||
| 14 | + platforms: | ||
| 15 | + - platform: root | ||
| 16 | + create_revision: 52f3e60cd29ce0e2a21301abbda13ee7299c6ba3 | ||
| 17 | + base_revision: 52f3e60cd29ce0e2a21301abbda13ee7299c6ba3 | ||
| 18 | + - platform: ohos | ||
| 19 | + create_revision: 52f3e60cd29ce0e2a21301abbda13ee7299c6ba3 | ||
| 20 | + base_revision: 52f3e60cd29ce0e2a21301abbda13ee7299c6ba3 | ||
| 21 | + | ||
| 22 | + # User provided section | ||
| 23 | + | ||
| 24 | + # List of Local paths (relative to this file) that should be | ||
| 25 | + # ignored by the migrate tool. | ||
| 26 | + # | ||
| 27 | + # Files that are not part of the templates will be ignored by default. | ||
| 28 | + unmanaged_files: | ||
| 29 | + - 'lib/main.dart' | ||
| 30 | + - 'ios/Runner.xcodeproj/project.pbxproj' |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/README.md
0 → 100644
| 1 | +# flutter_sms_example | ||
| 2 | + | ||
| 3 | +Demonstrates how to use the flutter_sms plugin. | ||
| 4 | + | ||
| 5 | +## Getting Started | ||
| 6 | + | ||
| 7 | +This project is a starting point for a Flutter application. | ||
| 8 | + | ||
| 9 | +A few resources to get you started if this is your first Flutter project: | ||
| 10 | + | ||
| 11 | +- [Lab: Write your first Flutter app](https://flutter.dev/docs/get-started/codelab) | ||
| 12 | +- [Cookbook: Useful Flutter samples](https://flutter.dev/docs/cookbook) | ||
| 13 | + | ||
| 14 | +For help getting started with Flutter, view our | ||
| 15 | +[online documentation](https://flutter.dev/docs), which offers tutorials, | ||
| 16 | +samples, guidance on mobile development, and a full API reference. |
| 1 | +# This file configures the analyzer, which statically analyzes Dart code to | ||
| 2 | +# check for errors, warnings, and lints. | ||
| 3 | +# | ||
| 4 | +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled | ||
| 5 | +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be | ||
| 6 | +# invoked from the command line by running `flutter analyze`. | ||
| 7 | + | ||
| 8 | +# The following line activates a set of recommended lints for Flutter apps, | ||
| 9 | +# packages, and plugins designed to encourage good coding practices. | ||
| 10 | +include: package:flutter_lints/flutter.yaml | ||
| 11 | + | ||
| 12 | +linter: | ||
| 13 | + # The lint rules applied to this project can be customized in the | ||
| 14 | + # section below to disable rules from the `package:flutter_lints/flutter.yaml` | ||
| 15 | + # included above or to enable additional rules. A list of all available lints | ||
| 16 | + # and their documentation is published at | ||
| 17 | + # https://dart-lang.github.io/linter/lints/index.html. | ||
| 18 | + # | ||
| 19 | + # Instead of disabling a lint rule for the entire project in the | ||
| 20 | + # section below, it can also be suppressed for a single line of code | ||
| 21 | + # or a specific dart file by using the `// ignore: name_of_lint` and | ||
| 22 | + # `// ignore_for_file: name_of_lint` syntax on the line or in the file | ||
| 23 | + # producing the lint. | ||
| 24 | + rules: | ||
| 25 | + # avoid_print: false # Uncomment to disable the `avoid_print` rule | ||
| 26 | + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule | ||
| 27 | + | ||
| 28 | +# Additional information about this file can be found at | ||
| 29 | +# https://dart.dev/guides/language/analysis-options |
| 1 | +def localProperties = new Properties() | ||
| 2 | +def localPropertiesFile = rootProject.file('local.properties') | ||
| 3 | +if (localPropertiesFile.exists()) { | ||
| 4 | + localPropertiesFile.withReader('UTF-8') { reader -> | ||
| 5 | + localProperties.load(reader) | ||
| 6 | + } | ||
| 7 | +} | ||
| 8 | + | ||
| 9 | +def flutterRoot = localProperties.getProperty('flutter.sdk') | ||
| 10 | +if (flutterRoot == null) { | ||
| 11 | + throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") | ||
| 12 | +} | ||
| 13 | + | ||
| 14 | +def flutterVersionCode = localProperties.getProperty('flutter.versionCode') | ||
| 15 | +if (flutterVersionCode == null) { | ||
| 16 | + flutterVersionCode = '1' | ||
| 17 | +} | ||
| 18 | + | ||
| 19 | +def flutterVersionName = localProperties.getProperty('flutter.versionName') | ||
| 20 | +if (flutterVersionName == null) { | ||
| 21 | + flutterVersionName = '1.0' | ||
| 22 | +} | ||
| 23 | + | ||
| 24 | +apply plugin: 'com.android.application' | ||
| 25 | +apply plugin: 'kotlin-android' | ||
| 26 | +apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" | ||
| 27 | + | ||
| 28 | +android { | ||
| 29 | + compileSdkVersion 31 | ||
| 30 | + | ||
| 31 | + sourceSets { | ||
| 32 | + main.java.srcDirs += 'src/main/kotlin' | ||
| 33 | + } | ||
| 34 | + | ||
| 35 | + lintOptions { | ||
| 36 | + disable 'InvalidPackage' | ||
| 37 | + } | ||
| 38 | + | ||
| 39 | + defaultConfig { | ||
| 40 | + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). | ||
| 41 | + applicationId "com.example.example" | ||
| 42 | + minSdkVersion 16 | ||
| 43 | + targetSdkVersion 31 | ||
| 44 | + versionCode flutterVersionCode.toInteger() | ||
| 45 | + versionName flutterVersionName | ||
| 46 | + } | ||
| 47 | + | ||
| 48 | + buildTypes { | ||
| 49 | + release { | ||
| 50 | + // TODO: Add your own signing config for the release build. | ||
| 51 | + // Signing with the debug keys for now, so `flutter run --release` works. | ||
| 52 | + signingConfig signingConfigs.debug | ||
| 53 | + } | ||
| 54 | + } | ||
| 55 | +} | ||
| 56 | + | ||
| 57 | +flutter { | ||
| 58 | + source '../..' | ||
| 59 | +} | ||
| 60 | + | ||
| 61 | +dependencies { | ||
| 62 | + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" | ||
| 63 | +} |
| 1 | +<manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||
| 2 | + package="com.example.example"> | ||
| 3 | + <!-- Flutter needs it to communicate with the running application | ||
| 4 | + to allow setting breakpoints, to provide hot reload, etc. | ||
| 5 | + --> | ||
| 6 | + <uses-permission android:name="android.permission.INTERNET"/> | ||
| 7 | +</manifest> |
| 1 | +<manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||
| 2 | + package="com.example.example"> | ||
| 3 | + <!-- io.flutter.app.FlutterApplication is an android.app.Application that | ||
| 4 | + calls FlutterMain.startInitialization(this); in its onCreate method. | ||
| 5 | + In most cases you can leave this as-is, but you if you want to provide | ||
| 6 | + additional functionality it is fine to subclass or reimplement | ||
| 7 | + FlutterApplication and put your custom class here. --> | ||
| 8 | + | ||
| 9 | + <uses-permission android:name="android.permission.SEND_SMS"/> | ||
| 10 | + | ||
| 11 | + <application | ||
| 12 | + android:name="${applicationName}" | ||
| 13 | + android:label="example" | ||
| 14 | + android:icon="@mipmap/ic_launcher"> | ||
| 15 | + <activity | ||
| 16 | + android:name=".MainActivity" | ||
| 17 | + android:launchMode="singleTop" | ||
| 18 | + android:theme="@style/LaunchTheme" | ||
| 19 | + android:configChanges="orientation|keyboardHidden|keyboard|screenSize|smallestScreenSize|locale|layoutDirection|fontScale|screenLayout|density|uiMode" | ||
| 20 | + android:hardwareAccelerated="true" | ||
| 21 | + android:exported="true" | ||
| 22 | + android:windowSoftInputMode="adjustResize"> | ||
| 23 | + <!-- Specifies an Android theme to apply to this Activity as soon as | ||
| 24 | + the Android process has started. This theme is visible to the user | ||
| 25 | + while the Flutter UI initializes. After that, this theme continues | ||
| 26 | + to determine the Window background behind the Flutter UI. --> | ||
| 27 | + <meta-data | ||
| 28 | + android:name="io.flutter.embedding.android.NormalTheme" | ||
| 29 | + android:resource="@style/NormalTheme" | ||
| 30 | + /> | ||
| 31 | + <!-- Displays an Android View that continues showing the launch screen | ||
| 32 | + Drawable until Flutter paints its first frame, then this splash | ||
| 33 | + screen fades out. A splash screen is useful to avoid any visual | ||
| 34 | + gap between the end of Android's launch screen and the painting of | ||
| 35 | + Flutter's first frame. --> | ||
| 36 | + <meta-data | ||
| 37 | + android:name="io.flutter.embedding.android.SplashScreenDrawable" | ||
| 38 | + android:resource="@drawable/launch_background" | ||
| 39 | + /> | ||
| 40 | + <intent-filter> | ||
| 41 | + <action android:name="android.intent.action.MAIN"/> | ||
| 42 | + <category android:name="android.intent.category.LAUNCHER"/> | ||
| 43 | + </intent-filter> | ||
| 44 | + </activity> | ||
| 45 | + <!-- Don't delete the meta-data below. | ||
| 46 | + This is used by the Flutter tool to generate GeneratedPluginRegistrant.java --> | ||
| 47 | + <meta-data | ||
| 48 | + android:name="flutterEmbedding" | ||
| 49 | + android:value="2" /> | ||
| 50 | + </application> | ||
| 51 | +</manifest> |
| 1 | +<?xml version="1.0" encoding="utf-8"?> | ||
| 2 | +<!-- Modify this file to customize your launch splash screen --> | ||
| 3 | +<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> | ||
| 4 | + <item android:drawable="@android:color/white" /> | ||
| 5 | + | ||
| 6 | + <!-- You can insert your own image assets here --> | ||
| 7 | + <!-- <item> | ||
| 8 | + <bitmap | ||
| 9 | + android:gravity="center" | ||
| 10 | + android:src="@mipmap/launch_image" /> | ||
| 11 | + </item> --> | ||
| 12 | +</layer-list> |
544 Bytes
442 Bytes
721 Bytes
1.01 KB
1.41 KB
| 1 | +<?xml version="1.0" encoding="utf-8"?> | ||
| 2 | +<resources> | ||
| 3 | + <!-- Theme applied to the Android Window while the process is starting --> | ||
| 4 | + <style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar"> | ||
| 5 | + <!-- Show a splash screen on the activity. Automatically removed when | ||
| 6 | + Flutter draws its first frame --> | ||
| 7 | + <item name="android:windowBackground">@drawable/launch_background</item> | ||
| 8 | + </style> | ||
| 9 | + <!-- Theme applied to the Android Window as soon as the process has started. | ||
| 10 | + This theme determines the color of the Android Window while your | ||
| 11 | + Flutter UI initializes, as well as behind your Flutter UI while its | ||
| 12 | + running. | ||
| 13 | + | ||
| 14 | + This Theme is only used starting with V2 of Flutter's Android embedding. --> | ||
| 15 | + <style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar"> | ||
| 16 | + <item name="android:windowBackground">@android:color/white</item> | ||
| 17 | + </style> | ||
| 18 | +</resources> |
| 1 | +<manifest xmlns:android="http://schemas.android.com/apk/res/android" | ||
| 2 | + package="com.example.example"> | ||
| 3 | + <!-- Flutter needs it to communicate with the running application | ||
| 4 | + to allow setting breakpoints, to provide hot reload, etc. | ||
| 5 | + --> | ||
| 6 | + <uses-permission android:name="android.permission.INTERNET"/> | ||
| 7 | +</manifest> |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/android/build.gradle
0 → 100644
| 1 | +buildscript { | ||
| 2 | + ext.kotlin_version = '1.6.10' | ||
| 3 | + repositories { | ||
| 4 | + google() | ||
| 5 | + jcenter() | ||
| 6 | + } | ||
| 7 | + | ||
| 8 | + dependencies { | ||
| 9 | + classpath 'com.android.tools.build:gradle:3.5.4' | ||
| 10 | + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" | ||
| 11 | + } | ||
| 12 | +} | ||
| 13 | + | ||
| 14 | +allprojects { | ||
| 15 | + repositories { | ||
| 16 | + google() | ||
| 17 | + jcenter() | ||
| 18 | + } | ||
| 19 | +} | ||
| 20 | + | ||
| 21 | +rootProject.buildDir = '../build' | ||
| 22 | +subprojects { | ||
| 23 | + project.buildDir = "${rootProject.buildDir}/${project.name}" | ||
| 24 | +} | ||
| 25 | +subprojects { | ||
| 26 | + project.evaluationDependsOn(':app') | ||
| 27 | +} | ||
| 28 | + | ||
| 29 | +task clean(type: Delete) { | ||
| 30 | + delete rootProject.buildDir | ||
| 31 | +} |
| 1 | +include ':app' | ||
| 2 | + | ||
| 3 | +def flutterProjectRoot = rootProject.projectDir.parentFile.toPath() | ||
| 4 | + | ||
| 5 | +def plugins = new Properties() | ||
| 6 | +def pluginsFile = new File(flutterProjectRoot.toFile(), '.flutter-plugins') | ||
| 7 | +if (pluginsFile.exists()) { | ||
| 8 | + pluginsFile.withReader('UTF-8') { reader -> plugins.load(reader) } | ||
| 9 | +} | ||
| 10 | + | ||
| 11 | +plugins.each { name, path -> | ||
| 12 | + def pluginDirectory = flutterProjectRoot.resolve(path).resolve('android').toFile() | ||
| 13 | + include ":$name" | ||
| 14 | + project(":$name").projectDir = pluginDirectory | ||
| 15 | +} |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/ios/.gitignore
0 → 100644
| 1 | +*.mode1v3 | ||
| 2 | +*.mode2v3 | ||
| 3 | +*.moved-aside | ||
| 4 | +*.pbxuser | ||
| 5 | +*.perspectivev3 | ||
| 6 | +**/*sync/ | ||
| 7 | +.sconsign.dblite | ||
| 8 | +.tags* | ||
| 9 | +**/.vagrant/ | ||
| 10 | +**/DerivedData/ | ||
| 11 | +Icon? | ||
| 12 | +**/Pods/ | ||
| 13 | +**/.symlinks/ | ||
| 14 | +profile | ||
| 15 | +xcuserdata | ||
| 16 | +**/.generated/ | ||
| 17 | +Flutter/App.framework | ||
| 18 | +Flutter/Flutter.framework | ||
| 19 | +Flutter/Flutter.podspec | ||
| 20 | +Flutter/Generated.xcconfig | ||
| 21 | +Flutter/app.flx | ||
| 22 | +Flutter/app.zip | ||
| 23 | +Flutter/flutter_assets/ | ||
| 24 | +Flutter/flutter_export_environment.sh | ||
| 25 | +ServiceDefinitions.json | ||
| 26 | +Runner/GeneratedPluginRegistrant.* | ||
| 27 | + | ||
| 28 | +# Exceptions to above rules. | ||
| 29 | +!default.mode1v3 | ||
| 30 | +!default.mode2v3 | ||
| 31 | +!default.pbxuser | ||
| 32 | +!default.perspectivev3 |
| 1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
| 2 | +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | ||
| 3 | +<plist version="1.0"> | ||
| 4 | +<dict> | ||
| 5 | + <key>CFBundleDevelopmentRegion</key> | ||
| 6 | + <string>$(DEVELOPMENT_LANGUAGE)</string> | ||
| 7 | + <key>CFBundleExecutable</key> | ||
| 8 | + <string>App</string> | ||
| 9 | + <key>CFBundleIdentifier</key> | ||
| 10 | + <string>io.flutter.flutter.app</string> | ||
| 11 | + <key>CFBundleInfoDictionaryVersion</key> | ||
| 12 | + <string>6.0</string> | ||
| 13 | + <key>CFBundleName</key> | ||
| 14 | + <string>App</string> | ||
| 15 | + <key>CFBundlePackageType</key> | ||
| 16 | + <string>FMWK</string> | ||
| 17 | + <key>CFBundleShortVersionString</key> | ||
| 18 | + <string>1.0</string> | ||
| 19 | + <key>CFBundleSignature</key> | ||
| 20 | + <string>????</string> | ||
| 21 | + <key>CFBundleVersion</key> | ||
| 22 | + <string>1.0</string> | ||
| 23 | + <key>MinimumOSVersion</key> | ||
| 24 | + <string>8.0</string> | ||
| 25 | +</dict> | ||
| 26 | +</plist> |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/ios/Podfile
0 → 100644
| 1 | +# Uncomment this line to define a global platform for your project | ||
| 2 | +# platform :ios, '9.0' | ||
| 3 | + | ||
| 4 | +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. | ||
| 5 | +ENV['COCOAPODS_DISABLE_STATS'] = 'true' | ||
| 6 | + | ||
| 7 | +project 'Runner', { | ||
| 8 | + 'Debug' => :debug, | ||
| 9 | + 'Profile' => :release, | ||
| 10 | + 'Release' => :release, | ||
| 11 | +} | ||
| 12 | + | ||
| 13 | +def parse_KV_file(file, separator='=') | ||
| 14 | + file_abs_path = File.expand_path(file) | ||
| 15 | + if !File.exists? file_abs_path | ||
| 16 | + return []; | ||
| 17 | + end | ||
| 18 | + generated_key_values = {} | ||
| 19 | + skip_line_start_symbols = ["#", "/"] | ||
| 20 | + File.foreach(file_abs_path) do |line| | ||
| 21 | + next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ } | ||
| 22 | + plugin = line.split(pattern=separator) | ||
| 23 | + if plugin.length == 2 | ||
| 24 | + podname = plugin[0].strip() | ||
| 25 | + path = plugin[1].strip() | ||
| 26 | + podpath = File.expand_path("#{path}", file_abs_path) | ||
| 27 | + generated_key_values[podname] = podpath | ||
| 28 | + else | ||
| 29 | + puts "Invalid plugin specification: #{line}" | ||
| 30 | + end | ||
| 31 | + end | ||
| 32 | + generated_key_values | ||
| 33 | +end | ||
| 34 | + | ||
| 35 | +target 'Runner' do | ||
| 36 | + use_frameworks! | ||
| 37 | + use_modular_headers! | ||
| 38 | + | ||
| 39 | + # Flutter Pod | ||
| 40 | + | ||
| 41 | + copied_flutter_dir = File.join(__dir__, 'Flutter') | ||
| 42 | + copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework') | ||
| 43 | + copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec') | ||
| 44 | + unless File.exist?(copied_framework_path) && File.exist?(copied_podspec_path) | ||
| 45 | + # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet. | ||
| 46 | + # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration. | ||
| 47 | + # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist. | ||
| 48 | + | ||
| 49 | + generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig') | ||
| 50 | + unless File.exist?(generated_xcode_build_settings_path) | ||
| 51 | + raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first" | ||
| 52 | + end | ||
| 53 | + generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path) | ||
| 54 | + cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR']; | ||
| 55 | + | ||
| 56 | + unless File.exist?(copied_framework_path) | ||
| 57 | + FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir) | ||
| 58 | + end | ||
| 59 | + unless File.exist?(copied_podspec_path) | ||
| 60 | + FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir) | ||
| 61 | + end | ||
| 62 | + end | ||
| 63 | + | ||
| 64 | + # Keep pod path relative so it can be checked into Podfile.lock. | ||
| 65 | + pod 'Flutter', :path => 'Flutter' | ||
| 66 | + | ||
| 67 | + # Plugin Pods | ||
| 68 | + | ||
| 69 | + # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock | ||
| 70 | + # referring to absolute paths on developers' machines. | ||
| 71 | + system('rm -rf .symlinks') | ||
| 72 | + system('mkdir -p .symlinks/plugins') | ||
| 73 | + plugin_pods = parse_KV_file('../.flutter-plugins') | ||
| 74 | + plugin_pods.each do |name, path| | ||
| 75 | + symlink = File.join('.symlinks', 'plugins', name) | ||
| 76 | + File.symlink(path, symlink) | ||
| 77 | + pod name, :path => File.join(symlink, 'ios') | ||
| 78 | + end | ||
| 79 | +end | ||
| 80 | + | ||
| 81 | +post_install do |installer| | ||
| 82 | + installer.pods_project.targets.each do |target| | ||
| 83 | + target.build_configurations.each do |config| | ||
| 84 | + config.build_settings['ENABLE_BITCODE'] = 'NO' | ||
| 85 | + end | ||
| 86 | + end | ||
| 87 | +end |
| 1 | +// !$*UTF8*$! | ||
| 2 | +{ | ||
| 3 | + archiveVersion = 1; | ||
| 4 | + classes = { | ||
| 5 | + }; | ||
| 6 | + objectVersion = 46; | ||
| 7 | + objects = { | ||
| 8 | + | ||
| 9 | +/* Begin PBXBuildFile section */ | ||
| 10 | + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; | ||
| 11 | + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; | ||
| 12 | + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; | ||
| 13 | + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; | ||
| 14 | + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; | ||
| 15 | + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; | ||
| 16 | +/* End PBXBuildFile section */ | ||
| 17 | + | ||
| 18 | +/* Begin PBXCopyFilesBuildPhase section */ | ||
| 19 | + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { | ||
| 20 | + isa = PBXCopyFilesBuildPhase; | ||
| 21 | + buildActionMask = 2147483647; | ||
| 22 | + dstPath = ""; | ||
| 23 | + dstSubfolderSpec = 10; | ||
| 24 | + files = ( | ||
| 25 | + ); | ||
| 26 | + name = "Embed Frameworks"; | ||
| 27 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 28 | + }; | ||
| 29 | +/* End PBXCopyFilesBuildPhase section */ | ||
| 30 | + | ||
| 31 | +/* Begin PBXFileReference section */ | ||
| 32 | + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; | ||
| 33 | + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; | ||
| 34 | + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; | ||
| 35 | + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; | ||
| 36 | + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | ||
| 37 | + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; | ||
| 38 | + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; | ||
| 39 | + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; | ||
| 40 | + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 41 | + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; | ||
| 42 | + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; | ||
| 43 | + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; | ||
| 44 | + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; | ||
| 45 | +/* End PBXFileReference section */ | ||
| 46 | + | ||
| 47 | +/* Begin PBXFrameworksBuildPhase section */ | ||
| 48 | + 97C146EB1CF9000F007C117D /* Frameworks */ = { | ||
| 49 | + isa = PBXFrameworksBuildPhase; | ||
| 50 | + buildActionMask = 2147483647; | ||
| 51 | + files = ( | ||
| 52 | + ); | ||
| 53 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 54 | + }; | ||
| 55 | +/* End PBXFrameworksBuildPhase section */ | ||
| 56 | + | ||
| 57 | +/* Begin PBXGroup section */ | ||
| 58 | + 9740EEB11CF90186004384FC /* Flutter */ = { | ||
| 59 | + isa = PBXGroup; | ||
| 60 | + children = ( | ||
| 61 | + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, | ||
| 62 | + 9740EEB21CF90195004384FC /* Debug.xcconfig */, | ||
| 63 | + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, | ||
| 64 | + 9740EEB31CF90195004384FC /* Generated.xcconfig */, | ||
| 65 | + ); | ||
| 66 | + name = Flutter; | ||
| 67 | + sourceTree = "<group>"; | ||
| 68 | + }; | ||
| 69 | + 97C146E51CF9000F007C117D = { | ||
| 70 | + isa = PBXGroup; | ||
| 71 | + children = ( | ||
| 72 | + 9740EEB11CF90186004384FC /* Flutter */, | ||
| 73 | + 97C146F01CF9000F007C117D /* Runner */, | ||
| 74 | + 97C146EF1CF9000F007C117D /* Products */, | ||
| 75 | + ); | ||
| 76 | + sourceTree = "<group>"; | ||
| 77 | + }; | ||
| 78 | + 97C146EF1CF9000F007C117D /* Products */ = { | ||
| 79 | + isa = PBXGroup; | ||
| 80 | + children = ( | ||
| 81 | + 97C146EE1CF9000F007C117D /* Runner.app */, | ||
| 82 | + ); | ||
| 83 | + name = Products; | ||
| 84 | + sourceTree = "<group>"; | ||
| 85 | + }; | ||
| 86 | + 97C146F01CF9000F007C117D /* Runner */ = { | ||
| 87 | + isa = PBXGroup; | ||
| 88 | + children = ( | ||
| 89 | + 97C146FA1CF9000F007C117D /* Main.storyboard */, | ||
| 90 | + 97C146FD1CF9000F007C117D /* Assets.xcassets */, | ||
| 91 | + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, | ||
| 92 | + 97C147021CF9000F007C117D /* Info.plist */, | ||
| 93 | + 97C146F11CF9000F007C117D /* Supporting Files */, | ||
| 94 | + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, | ||
| 95 | + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, | ||
| 96 | + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, | ||
| 97 | + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, | ||
| 98 | + ); | ||
| 99 | + path = Runner; | ||
| 100 | + sourceTree = "<group>"; | ||
| 101 | + }; | ||
| 102 | + 97C146F11CF9000F007C117D /* Supporting Files */ = { | ||
| 103 | + isa = PBXGroup; | ||
| 104 | + children = ( | ||
| 105 | + ); | ||
| 106 | + name = "Supporting Files"; | ||
| 107 | + sourceTree = "<group>"; | ||
| 108 | + }; | ||
| 109 | +/* End PBXGroup section */ | ||
| 110 | + | ||
| 111 | +/* Begin PBXNativeTarget section */ | ||
| 112 | + 97C146ED1CF9000F007C117D /* Runner */ = { | ||
| 113 | + isa = PBXNativeTarget; | ||
| 114 | + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; | ||
| 115 | + buildPhases = ( | ||
| 116 | + 9740EEB61CF901F6004384FC /* Run Script */, | ||
| 117 | + 97C146EA1CF9000F007C117D /* Sources */, | ||
| 118 | + 97C146EB1CF9000F007C117D /* Frameworks */, | ||
| 119 | + 97C146EC1CF9000F007C117D /* Resources */, | ||
| 120 | + 9705A1C41CF9048500538489 /* Embed Frameworks */, | ||
| 121 | + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, | ||
| 122 | + ); | ||
| 123 | + buildRules = ( | ||
| 124 | + ); | ||
| 125 | + dependencies = ( | ||
| 126 | + ); | ||
| 127 | + name = Runner; | ||
| 128 | + productName = Runner; | ||
| 129 | + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; | ||
| 130 | + productType = "com.apple.product-type.application"; | ||
| 131 | + }; | ||
| 132 | +/* End PBXNativeTarget section */ | ||
| 133 | + | ||
| 134 | +/* Begin PBXProject section */ | ||
| 135 | + 97C146E61CF9000F007C117D /* Project object */ = { | ||
| 136 | + isa = PBXProject; | ||
| 137 | + attributes = { | ||
| 138 | + LastUpgradeCheck = 1020; | ||
| 139 | + ORGANIZATIONNAME = ""; | ||
| 140 | + TargetAttributes = { | ||
| 141 | + 97C146ED1CF9000F007C117D = { | ||
| 142 | + CreatedOnToolsVersion = 7.3.1; | ||
| 143 | + LastSwiftMigration = 1100; | ||
| 144 | + }; | ||
| 145 | + }; | ||
| 146 | + }; | ||
| 147 | + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; | ||
| 148 | + compatibilityVersion = "Xcode 9.3"; | ||
| 149 | + developmentRegion = en; | ||
| 150 | + hasScannedForEncodings = 0; | ||
| 151 | + knownRegions = ( | ||
| 152 | + en, | ||
| 153 | + Base, | ||
| 154 | + ); | ||
| 155 | + mainGroup = 97C146E51CF9000F007C117D; | ||
| 156 | + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; | ||
| 157 | + projectDirPath = ""; | ||
| 158 | + projectRoot = ""; | ||
| 159 | + targets = ( | ||
| 160 | + 97C146ED1CF9000F007C117D /* Runner */, | ||
| 161 | + ); | ||
| 162 | + }; | ||
| 163 | +/* End PBXProject section */ | ||
| 164 | + | ||
| 165 | +/* Begin PBXResourcesBuildPhase section */ | ||
| 166 | + 97C146EC1CF9000F007C117D /* Resources */ = { | ||
| 167 | + isa = PBXResourcesBuildPhase; | ||
| 168 | + buildActionMask = 2147483647; | ||
| 169 | + files = ( | ||
| 170 | + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, | ||
| 171 | + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, | ||
| 172 | + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, | ||
| 173 | + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, | ||
| 174 | + ); | ||
| 175 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 176 | + }; | ||
| 177 | +/* End PBXResourcesBuildPhase section */ | ||
| 178 | + | ||
| 179 | +/* Begin PBXShellScriptBuildPhase section */ | ||
| 180 | + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { | ||
| 181 | + isa = PBXShellScriptBuildPhase; | ||
| 182 | + buildActionMask = 2147483647; | ||
| 183 | + files = ( | ||
| 184 | + ); | ||
| 185 | + inputPaths = ( | ||
| 186 | + ); | ||
| 187 | + name = "Thin Binary"; | ||
| 188 | + outputPaths = ( | ||
| 189 | + ); | ||
| 190 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 191 | + shellPath = /bin/sh; | ||
| 192 | + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; | ||
| 193 | + }; | ||
| 194 | + 9740EEB61CF901F6004384FC /* Run Script */ = { | ||
| 195 | + isa = PBXShellScriptBuildPhase; | ||
| 196 | + buildActionMask = 2147483647; | ||
| 197 | + files = ( | ||
| 198 | + ); | ||
| 199 | + inputPaths = ( | ||
| 200 | + ); | ||
| 201 | + name = "Run Script"; | ||
| 202 | + outputPaths = ( | ||
| 203 | + ); | ||
| 204 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 205 | + shellPath = /bin/sh; | ||
| 206 | + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; | ||
| 207 | + }; | ||
| 208 | +/* End PBXShellScriptBuildPhase section */ | ||
| 209 | + | ||
| 210 | +/* Begin PBXSourcesBuildPhase section */ | ||
| 211 | + 97C146EA1CF9000F007C117D /* Sources */ = { | ||
| 212 | + isa = PBXSourcesBuildPhase; | ||
| 213 | + buildActionMask = 2147483647; | ||
| 214 | + files = ( | ||
| 215 | + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, | ||
| 216 | + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, | ||
| 217 | + ); | ||
| 218 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 219 | + }; | ||
| 220 | +/* End PBXSourcesBuildPhase section */ | ||
| 221 | + | ||
| 222 | +/* Begin PBXVariantGroup section */ | ||
| 223 | + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { | ||
| 224 | + isa = PBXVariantGroup; | ||
| 225 | + children = ( | ||
| 226 | + 97C146FB1CF9000F007C117D /* Base */, | ||
| 227 | + ); | ||
| 228 | + name = Main.storyboard; | ||
| 229 | + sourceTree = "<group>"; | ||
| 230 | + }; | ||
| 231 | + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { | ||
| 232 | + isa = PBXVariantGroup; | ||
| 233 | + children = ( | ||
| 234 | + 97C147001CF9000F007C117D /* Base */, | ||
| 235 | + ); | ||
| 236 | + name = LaunchScreen.storyboard; | ||
| 237 | + sourceTree = "<group>"; | ||
| 238 | + }; | ||
| 239 | +/* End PBXVariantGroup section */ | ||
| 240 | + | ||
| 241 | +/* Begin XCBuildConfiguration section */ | ||
| 242 | + 249021D3217E4FDB00AE95B9 /* Profile */ = { | ||
| 243 | + isa = XCBuildConfiguration; | ||
| 244 | + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | ||
| 245 | + buildSettings = { | ||
| 246 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 247 | + CLANG_ANALYZER_NONNULL = YES; | ||
| 248 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; | ||
| 249 | + CLANG_CXX_LIBRARY = "libc++"; | ||
| 250 | + CLANG_ENABLE_MODULES = YES; | ||
| 251 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
| 252 | + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 253 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 254 | + CLANG_WARN_COMMA = YES; | ||
| 255 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 256 | + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; | ||
| 257 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 258 | + CLANG_WARN_EMPTY_BODY = YES; | ||
| 259 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 260 | + CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 261 | + CLANG_WARN_INT_CONVERSION = YES; | ||
| 262 | + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 263 | + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; | ||
| 264 | + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 265 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 266 | + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 267 | + CLANG_WARN_STRICT_PROTOTYPES = YES; | ||
| 268 | + CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 269 | + CLANG_WARN_UNREACHABLE_CODE = YES; | ||
| 270 | + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
| 271 | + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; | ||
| 272 | + COPY_PHASE_STRIP = NO; | ||
| 273 | + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||
| 274 | + ENABLE_NS_ASSERTIONS = NO; | ||
| 275 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 276 | + GCC_C_LANGUAGE_STANDARD = gnu99; | ||
| 277 | + GCC_NO_COMMON_BLOCKS = YES; | ||
| 278 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 279 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 280 | + GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
| 281 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 282 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 283 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 284 | + IPHONEOS_DEPLOYMENT_TARGET = 8.0; | ||
| 285 | + MTL_ENABLE_DEBUG_INFO = NO; | ||
| 286 | + SDKROOT = iphoneos; | ||
| 287 | + SUPPORTED_PLATFORMS = iphoneos; | ||
| 288 | + TARGETED_DEVICE_FAMILY = "1,2"; | ||
| 289 | + VALIDATE_PRODUCT = YES; | ||
| 290 | + }; | ||
| 291 | + name = Profile; | ||
| 292 | + }; | ||
| 293 | + 249021D4217E4FDB00AE95B9 /* Profile */ = { | ||
| 294 | + isa = XCBuildConfiguration; | ||
| 295 | + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | ||
| 296 | + buildSettings = { | ||
| 297 | + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | ||
| 298 | + CLANG_ENABLE_MODULES = YES; | ||
| 299 | + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; | ||
| 300 | + ENABLE_BITCODE = NO; | ||
| 301 | + FRAMEWORK_SEARCH_PATHS = ( | ||
| 302 | + "$(inherited)", | ||
| 303 | + "$(PROJECT_DIR)/Flutter", | ||
| 304 | + ); | ||
| 305 | + INFOPLIST_FILE = Runner/Info.plist; | ||
| 306 | + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; | ||
| 307 | + LIBRARY_SEARCH_PATHS = ( | ||
| 308 | + "$(inherited)", | ||
| 309 | + "$(PROJECT_DIR)/Flutter", | ||
| 310 | + ); | ||
| 311 | + PRODUCT_BUNDLE_IDENTIFIER = com.example.example; | ||
| 312 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 313 | + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | ||
| 314 | + SWIFT_VERSION = 5.0; | ||
| 315 | + VERSIONING_SYSTEM = "apple-generic"; | ||
| 316 | + }; | ||
| 317 | + name = Profile; | ||
| 318 | + }; | ||
| 319 | + 97C147031CF9000F007C117D /* Debug */ = { | ||
| 320 | + isa = XCBuildConfiguration; | ||
| 321 | + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; | ||
| 322 | + buildSettings = { | ||
| 323 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 324 | + CLANG_ANALYZER_NONNULL = YES; | ||
| 325 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; | ||
| 326 | + CLANG_CXX_LIBRARY = "libc++"; | ||
| 327 | + CLANG_ENABLE_MODULES = YES; | ||
| 328 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
| 329 | + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 330 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 331 | + CLANG_WARN_COMMA = YES; | ||
| 332 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 333 | + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; | ||
| 334 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 335 | + CLANG_WARN_EMPTY_BODY = YES; | ||
| 336 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 337 | + CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 338 | + CLANG_WARN_INT_CONVERSION = YES; | ||
| 339 | + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 340 | + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; | ||
| 341 | + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 342 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 343 | + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 344 | + CLANG_WARN_STRICT_PROTOTYPES = YES; | ||
| 345 | + CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 346 | + CLANG_WARN_UNREACHABLE_CODE = YES; | ||
| 347 | + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
| 348 | + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; | ||
| 349 | + COPY_PHASE_STRIP = NO; | ||
| 350 | + DEBUG_INFORMATION_FORMAT = dwarf; | ||
| 351 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 352 | + ENABLE_TESTABILITY = YES; | ||
| 353 | + GCC_C_LANGUAGE_STANDARD = gnu99; | ||
| 354 | + GCC_DYNAMIC_NO_PIC = NO; | ||
| 355 | + GCC_NO_COMMON_BLOCKS = YES; | ||
| 356 | + GCC_OPTIMIZATION_LEVEL = 0; | ||
| 357 | + GCC_PREPROCESSOR_DEFINITIONS = ( | ||
| 358 | + "DEBUG=1", | ||
| 359 | + "$(inherited)", | ||
| 360 | + ); | ||
| 361 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 362 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 363 | + GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
| 364 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 365 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 366 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 367 | + IPHONEOS_DEPLOYMENT_TARGET = 8.0; | ||
| 368 | + MTL_ENABLE_DEBUG_INFO = YES; | ||
| 369 | + ONLY_ACTIVE_ARCH = YES; | ||
| 370 | + SDKROOT = iphoneos; | ||
| 371 | + TARGETED_DEVICE_FAMILY = "1,2"; | ||
| 372 | + }; | ||
| 373 | + name = Debug; | ||
| 374 | + }; | ||
| 375 | + 97C147041CF9000F007C117D /* Release */ = { | ||
| 376 | + isa = XCBuildConfiguration; | ||
| 377 | + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | ||
| 378 | + buildSettings = { | ||
| 379 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 380 | + CLANG_ANALYZER_NONNULL = YES; | ||
| 381 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; | ||
| 382 | + CLANG_CXX_LIBRARY = "libc++"; | ||
| 383 | + CLANG_ENABLE_MODULES = YES; | ||
| 384 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
| 385 | + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 386 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 387 | + CLANG_WARN_COMMA = YES; | ||
| 388 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 389 | + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; | ||
| 390 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 391 | + CLANG_WARN_EMPTY_BODY = YES; | ||
| 392 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 393 | + CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 394 | + CLANG_WARN_INT_CONVERSION = YES; | ||
| 395 | + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 396 | + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; | ||
| 397 | + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 398 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 399 | + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 400 | + CLANG_WARN_STRICT_PROTOTYPES = YES; | ||
| 401 | + CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 402 | + CLANG_WARN_UNREACHABLE_CODE = YES; | ||
| 403 | + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; | ||
| 404 | + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; | ||
| 405 | + COPY_PHASE_STRIP = NO; | ||
| 406 | + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||
| 407 | + ENABLE_NS_ASSERTIONS = NO; | ||
| 408 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 409 | + GCC_C_LANGUAGE_STANDARD = gnu99; | ||
| 410 | + GCC_NO_COMMON_BLOCKS = YES; | ||
| 411 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 412 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 413 | + GCC_WARN_UNDECLARED_SELECTOR = YES; | ||
| 414 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 415 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 416 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 417 | + IPHONEOS_DEPLOYMENT_TARGET = 8.0; | ||
| 418 | + MTL_ENABLE_DEBUG_INFO = NO; | ||
| 419 | + SDKROOT = iphoneos; | ||
| 420 | + SUPPORTED_PLATFORMS = iphoneos; | ||
| 421 | + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; | ||
| 422 | + TARGETED_DEVICE_FAMILY = "1,2"; | ||
| 423 | + VALIDATE_PRODUCT = YES; | ||
| 424 | + }; | ||
| 425 | + name = Release; | ||
| 426 | + }; | ||
| 427 | + 97C147061CF9000F007C117D /* Debug */ = { | ||
| 428 | + isa = XCBuildConfiguration; | ||
| 429 | + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; | ||
| 430 | + buildSettings = { | ||
| 431 | + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | ||
| 432 | + CLANG_ENABLE_MODULES = YES; | ||
| 433 | + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; | ||
| 434 | + ENABLE_BITCODE = NO; | ||
| 435 | + FRAMEWORK_SEARCH_PATHS = ( | ||
| 436 | + "$(inherited)", | ||
| 437 | + "$(PROJECT_DIR)/Flutter", | ||
| 438 | + ); | ||
| 439 | + INFOPLIST_FILE = Runner/Info.plist; | ||
| 440 | + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; | ||
| 441 | + LIBRARY_SEARCH_PATHS = ( | ||
| 442 | + "$(inherited)", | ||
| 443 | + "$(PROJECT_DIR)/Flutter", | ||
| 444 | + ); | ||
| 445 | + PRODUCT_BUNDLE_IDENTIFIER = com.example.example; | ||
| 446 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 447 | + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | ||
| 448 | + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | ||
| 449 | + SWIFT_VERSION = 5.0; | ||
| 450 | + VERSIONING_SYSTEM = "apple-generic"; | ||
| 451 | + }; | ||
| 452 | + name = Debug; | ||
| 453 | + }; | ||
| 454 | + 97C147071CF9000F007C117D /* Release */ = { | ||
| 455 | + isa = XCBuildConfiguration; | ||
| 456 | + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | ||
| 457 | + buildSettings = { | ||
| 458 | + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | ||
| 459 | + CLANG_ENABLE_MODULES = YES; | ||
| 460 | + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; | ||
| 461 | + ENABLE_BITCODE = NO; | ||
| 462 | + FRAMEWORK_SEARCH_PATHS = ( | ||
| 463 | + "$(inherited)", | ||
| 464 | + "$(PROJECT_DIR)/Flutter", | ||
| 465 | + ); | ||
| 466 | + INFOPLIST_FILE = Runner/Info.plist; | ||
| 467 | + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; | ||
| 468 | + LIBRARY_SEARCH_PATHS = ( | ||
| 469 | + "$(inherited)", | ||
| 470 | + "$(PROJECT_DIR)/Flutter", | ||
| 471 | + ); | ||
| 472 | + PRODUCT_BUNDLE_IDENTIFIER = com.example.example; | ||
| 473 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 474 | + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; | ||
| 475 | + SWIFT_VERSION = 5.0; | ||
| 476 | + VERSIONING_SYSTEM = "apple-generic"; | ||
| 477 | + }; | ||
| 478 | + name = Release; | ||
| 479 | + }; | ||
| 480 | +/* End XCBuildConfiguration section */ | ||
| 481 | + | ||
| 482 | +/* Begin XCConfigurationList section */ | ||
| 483 | + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { | ||
| 484 | + isa = XCConfigurationList; | ||
| 485 | + buildConfigurations = ( | ||
| 486 | + 97C147031CF9000F007C117D /* Debug */, | ||
| 487 | + 97C147041CF9000F007C117D /* Release */, | ||
| 488 | + 249021D3217E4FDB00AE95B9 /* Profile */, | ||
| 489 | + ); | ||
| 490 | + defaultConfigurationIsVisible = 0; | ||
| 491 | + defaultConfigurationName = Release; | ||
| 492 | + }; | ||
| 493 | + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { | ||
| 494 | + isa = XCConfigurationList; | ||
| 495 | + buildConfigurations = ( | ||
| 496 | + 97C147061CF9000F007C117D /* Debug */, | ||
| 497 | + 97C147071CF9000F007C117D /* Release */, | ||
| 498 | + 249021D4217E4FDB00AE95B9 /* Profile */, | ||
| 499 | + ); | ||
| 500 | + defaultConfigurationIsVisible = 0; | ||
| 501 | + defaultConfigurationName = Release; | ||
| 502 | + }; | ||
| 503 | +/* End XCConfigurationList section */ | ||
| 504 | + }; | ||
| 505 | + rootObject = 97C146E61CF9000F007C117D /* Project object */; | ||
| 506 | +} |
| 1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
| 2 | +<Scheme | ||
| 3 | + LastUpgradeVersion = "1020" | ||
| 4 | + version = "1.3"> | ||
| 5 | + <BuildAction | ||
| 6 | + parallelizeBuildables = "YES" | ||
| 7 | + buildImplicitDependencies = "YES"> | ||
| 8 | + <BuildActionEntries> | ||
| 9 | + <BuildActionEntry | ||
| 10 | + buildForTesting = "YES" | ||
| 11 | + buildForRunning = "YES" | ||
| 12 | + buildForProfiling = "YES" | ||
| 13 | + buildForArchiving = "YES" | ||
| 14 | + buildForAnalyzing = "YES"> | ||
| 15 | + <BuildableReference | ||
| 16 | + BuildableIdentifier = "primary" | ||
| 17 | + BlueprintIdentifier = "97C146ED1CF9000F007C117D" | ||
| 18 | + BuildableName = "Runner.app" | ||
| 19 | + BlueprintName = "Runner" | ||
| 20 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 21 | + </BuildableReference> | ||
| 22 | + </BuildActionEntry> | ||
| 23 | + </BuildActionEntries> | ||
| 24 | + </BuildAction> | ||
| 25 | + <TestAction | ||
| 26 | + buildConfiguration = "Debug" | ||
| 27 | + selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| 28 | + selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| 29 | + shouldUseLaunchSchemeArgsEnv = "YES"> | ||
| 30 | + <Testables> | ||
| 31 | + </Testables> | ||
| 32 | + <MacroExpansion> | ||
| 33 | + <BuildableReference | ||
| 34 | + BuildableIdentifier = "primary" | ||
| 35 | + BlueprintIdentifier = "97C146ED1CF9000F007C117D" | ||
| 36 | + BuildableName = "Runner.app" | ||
| 37 | + BlueprintName = "Runner" | ||
| 38 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 39 | + </BuildableReference> | ||
| 40 | + </MacroExpansion> | ||
| 41 | + <AdditionalOptions> | ||
| 42 | + </AdditionalOptions> | ||
| 43 | + </TestAction> | ||
| 44 | + <LaunchAction | ||
| 45 | + buildConfiguration = "Debug" | ||
| 46 | + selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| 47 | + selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| 48 | + launchStyle = "0" | ||
| 49 | + useCustomWorkingDirectory = "NO" | ||
| 50 | + ignoresPersistentStateOnLaunch = "NO" | ||
| 51 | + debugDocumentVersioning = "YES" | ||
| 52 | + debugServiceExtension = "internal" | ||
| 53 | + allowLocationSimulation = "YES"> | ||
| 54 | + <BuildableProductRunnable | ||
| 55 | + runnableDebuggingMode = "0"> | ||
| 56 | + <BuildableReference | ||
| 57 | + BuildableIdentifier = "primary" | ||
| 58 | + BlueprintIdentifier = "97C146ED1CF9000F007C117D" | ||
| 59 | + BuildableName = "Runner.app" | ||
| 60 | + BlueprintName = "Runner" | ||
| 61 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 62 | + </BuildableReference> | ||
| 63 | + </BuildableProductRunnable> | ||
| 64 | + <AdditionalOptions> | ||
| 65 | + </AdditionalOptions> | ||
| 66 | + </LaunchAction> | ||
| 67 | + <ProfileAction | ||
| 68 | + buildConfiguration = "Profile" | ||
| 69 | + shouldUseLaunchSchemeArgsEnv = "YES" | ||
| 70 | + savedToolIdentifier = "" | ||
| 71 | + useCustomWorkingDirectory = "NO" | ||
| 72 | + debugDocumentVersioning = "YES"> | ||
| 73 | + <BuildableProductRunnable | ||
| 74 | + runnableDebuggingMode = "0"> | ||
| 75 | + <BuildableReference | ||
| 76 | + BuildableIdentifier = "primary" | ||
| 77 | + BlueprintIdentifier = "97C146ED1CF9000F007C117D" | ||
| 78 | + BuildableName = "Runner.app" | ||
| 79 | + BlueprintName = "Runner" | ||
| 80 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 81 | + </BuildableReference> | ||
| 82 | + </BuildableProductRunnable> | ||
| 83 | + </ProfileAction> | ||
| 84 | + <AnalyzeAction | ||
| 85 | + buildConfiguration = "Debug"> | ||
| 86 | + </AnalyzeAction> | ||
| 87 | + <ArchiveAction | ||
| 88 | + buildConfiguration = "Release" | ||
| 89 | + revealArchiveInOrganizer = "YES"> | ||
| 90 | + </ArchiveAction> | ||
| 91 | +</Scheme> |
| 1 | +import UIKit | ||
| 2 | +import Flutter | ||
| 3 | + | ||
| 4 | +@UIApplicationMain | ||
| 5 | +@objc class AppDelegate: FlutterAppDelegate { | ||
| 6 | + override func application( | ||
| 7 | + _ application: UIApplication, | ||
| 8 | + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? | ||
| 9 | + ) -> Bool { | ||
| 10 | + GeneratedPluginRegistrant.register(with: self) | ||
| 11 | + return super.application(application, didFinishLaunchingWithOptions: launchOptions) | ||
| 12 | + } | ||
| 13 | +} |
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "size" : "20x20", | ||
| 5 | + "idiom" : "iphone", | ||
| 6 | + "filename" : "Icon-App-20x20@2x.png", | ||
| 7 | + "scale" : "2x" | ||
| 8 | + }, | ||
| 9 | + { | ||
| 10 | + "size" : "20x20", | ||
| 11 | + "idiom" : "iphone", | ||
| 12 | + "filename" : "Icon-App-20x20@3x.png", | ||
| 13 | + "scale" : "3x" | ||
| 14 | + }, | ||
| 15 | + { | ||
| 16 | + "size" : "29x29", | ||
| 17 | + "idiom" : "iphone", | ||
| 18 | + "filename" : "Icon-App-29x29@1x.png", | ||
| 19 | + "scale" : "1x" | ||
| 20 | + }, | ||
| 21 | + { | ||
| 22 | + "size" : "29x29", | ||
| 23 | + "idiom" : "iphone", | ||
| 24 | + "filename" : "Icon-App-29x29@2x.png", | ||
| 25 | + "scale" : "2x" | ||
| 26 | + }, | ||
| 27 | + { | ||
| 28 | + "size" : "29x29", | ||
| 29 | + "idiom" : "iphone", | ||
| 30 | + "filename" : "Icon-App-29x29@3x.png", | ||
| 31 | + "scale" : "3x" | ||
| 32 | + }, | ||
| 33 | + { | ||
| 34 | + "size" : "40x40", | ||
| 35 | + "idiom" : "iphone", | ||
| 36 | + "filename" : "Icon-App-40x40@2x.png", | ||
| 37 | + "scale" : "2x" | ||
| 38 | + }, | ||
| 39 | + { | ||
| 40 | + "size" : "40x40", | ||
| 41 | + "idiom" : "iphone", | ||
| 42 | + "filename" : "Icon-App-40x40@3x.png", | ||
| 43 | + "scale" : "3x" | ||
| 44 | + }, | ||
| 45 | + { | ||
| 46 | + "size" : "60x60", | ||
| 47 | + "idiom" : "iphone", | ||
| 48 | + "filename" : "Icon-App-60x60@2x.png", | ||
| 49 | + "scale" : "2x" | ||
| 50 | + }, | ||
| 51 | + { | ||
| 52 | + "size" : "60x60", | ||
| 53 | + "idiom" : "iphone", | ||
| 54 | + "filename" : "Icon-App-60x60@3x.png", | ||
| 55 | + "scale" : "3x" | ||
| 56 | + }, | ||
| 57 | + { | ||
| 58 | + "size" : "20x20", | ||
| 59 | + "idiom" : "ipad", | ||
| 60 | + "filename" : "Icon-App-20x20@1x.png", | ||
| 61 | + "scale" : "1x" | ||
| 62 | + }, | ||
| 63 | + { | ||
| 64 | + "size" : "20x20", | ||
| 65 | + "idiom" : "ipad", | ||
| 66 | + "filename" : "Icon-App-20x20@2x.png", | ||
| 67 | + "scale" : "2x" | ||
| 68 | + }, | ||
| 69 | + { | ||
| 70 | + "size" : "29x29", | ||
| 71 | + "idiom" : "ipad", | ||
| 72 | + "filename" : "Icon-App-29x29@1x.png", | ||
| 73 | + "scale" : "1x" | ||
| 74 | + }, | ||
| 75 | + { | ||
| 76 | + "size" : "29x29", | ||
| 77 | + "idiom" : "ipad", | ||
| 78 | + "filename" : "Icon-App-29x29@2x.png", | ||
| 79 | + "scale" : "2x" | ||
| 80 | + }, | ||
| 81 | + { | ||
| 82 | + "size" : "40x40", | ||
| 83 | + "idiom" : "ipad", | ||
| 84 | + "filename" : "Icon-App-40x40@1x.png", | ||
| 85 | + "scale" : "1x" | ||
| 86 | + }, | ||
| 87 | + { | ||
| 88 | + "size" : "40x40", | ||
| 89 | + "idiom" : "ipad", | ||
| 90 | + "filename" : "Icon-App-40x40@2x.png", | ||
| 91 | + "scale" : "2x" | ||
| 92 | + }, | ||
| 93 | + { | ||
| 94 | + "size" : "76x76", | ||
| 95 | + "idiom" : "ipad", | ||
| 96 | + "filename" : "Icon-App-76x76@1x.png", | ||
| 97 | + "scale" : "1x" | ||
| 98 | + }, | ||
| 99 | + { | ||
| 100 | + "size" : "76x76", | ||
| 101 | + "idiom" : "ipad", | ||
| 102 | + "filename" : "Icon-App-76x76@2x.png", | ||
| 103 | + "scale" : "2x" | ||
| 104 | + }, | ||
| 105 | + { | ||
| 106 | + "size" : "83.5x83.5", | ||
| 107 | + "idiom" : "ipad", | ||
| 108 | + "filename" : "Icon-App-83.5x83.5@2x.png", | ||
| 109 | + "scale" : "2x" | ||
| 110 | + }, | ||
| 111 | + { | ||
| 112 | + "size" : "1024x1024", | ||
| 113 | + "idiom" : "ios-marketing", | ||
| 114 | + "filename" : "Icon-App-1024x1024@1x.png", | ||
| 115 | + "scale" : "1x" | ||
| 116 | + } | ||
| 117 | + ], | ||
| 118 | + "info" : { | ||
| 119 | + "version" : 1, | ||
| 120 | + "author" : "xcode" | ||
| 121 | + } | ||
| 122 | +} |
10.7 KB
564 Bytes
1.25 KB
1.55 KB
1.68 KB
1.88 KB
1.25 KB
1.85 KB
2.6 KB
2.6 KB
3.74 KB
1.84 KB
3.22 KB
3.53 KB
| 1 | +{ | ||
| 2 | + "images" : [ | ||
| 3 | + { | ||
| 4 | + "idiom" : "universal", | ||
| 5 | + "filename" : "LaunchImage.png", | ||
| 6 | + "scale" : "1x" | ||
| 7 | + }, | ||
| 8 | + { | ||
| 9 | + "idiom" : "universal", | ||
| 10 | + "filename" : "LaunchImage@2x.png", | ||
| 11 | + "scale" : "2x" | ||
| 12 | + }, | ||
| 13 | + { | ||
| 14 | + "idiom" : "universal", | ||
| 15 | + "filename" : "LaunchImage@3x.png", | ||
| 16 | + "scale" : "3x" | ||
| 17 | + } | ||
| 18 | + ], | ||
| 19 | + "info" : { | ||
| 20 | + "version" : 1, | ||
| 21 | + "author" : "xcode" | ||
| 22 | + } | ||
| 23 | +} |
68 Bytes
68 Bytes
68 Bytes
| 1 | +# Launch Screen Assets | ||
| 2 | + | ||
| 3 | +You can customize the launch screen with your own desired assets by replacing the image files in this directory. | ||
| 4 | + | ||
| 5 | +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. |
| 1 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||
| 2 | +<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12121" systemVersion="16G29" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" colorMatched="YES" initialViewController="01J-lp-oVM"> | ||
| 3 | + <dependencies> | ||
| 4 | + <deployment identifier="iOS"/> | ||
| 5 | + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12089"/> | ||
| 6 | + </dependencies> | ||
| 7 | + <scenes> | ||
| 8 | + <!--View Controller--> | ||
| 9 | + <scene sceneID="EHf-IW-A2E"> | ||
| 10 | + <objects> | ||
| 11 | + <viewController id="01J-lp-oVM" sceneMemberID="viewController"> | ||
| 12 | + <layoutGuides> | ||
| 13 | + <viewControllerLayoutGuide type="top" id="Ydg-fD-yQy"/> | ||
| 14 | + <viewControllerLayoutGuide type="bottom" id="xbc-2k-c8Z"/> | ||
| 15 | + </layoutGuides> | ||
| 16 | + <view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3"> | ||
| 17 | + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> | ||
| 18 | + <subviews> | ||
| 19 | + <imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4"> | ||
| 20 | + </imageView> | ||
| 21 | + </subviews> | ||
| 22 | + <color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/> | ||
| 23 | + <constraints> | ||
| 24 | + <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/> | ||
| 25 | + <constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/> | ||
| 26 | + </constraints> | ||
| 27 | + </view> | ||
| 28 | + </viewController> | ||
| 29 | + <placeholder placeholderIdentifier="IBFirstResponder" id="iYj-Kq-Ea1" userLabel="First Responder" sceneMemberID="firstResponder"/> | ||
| 30 | + </objects> | ||
| 31 | + <point key="canvasLocation" x="53" y="375"/> | ||
| 32 | + </scene> | ||
| 33 | + </scenes> | ||
| 34 | + <resources> | ||
| 35 | + <image name="LaunchImage" width="168" height="185"/> | ||
| 36 | + </resources> | ||
| 37 | +</document> |
| 1 | +<?xml version="1.0" encoding="UTF-8" standalone="no"?> | ||
| 2 | +<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="10117" systemVersion="15F34" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" initialViewController="BYZ-38-t0r"> | ||
| 3 | + <dependencies> | ||
| 4 | + <deployment identifier="iOS"/> | ||
| 5 | + <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="10085"/> | ||
| 6 | + </dependencies> | ||
| 7 | + <scenes> | ||
| 8 | + <!--Flutter View Controller--> | ||
| 9 | + <scene sceneID="tne-QT-ifu"> | ||
| 10 | + <objects> | ||
| 11 | + <viewController id="BYZ-38-t0r" customClass="FlutterViewController" sceneMemberID="viewController"> | ||
| 12 | + <layoutGuides> | ||
| 13 | + <viewControllerLayoutGuide type="top" id="y3c-jy-aDJ"/> | ||
| 14 | + <viewControllerLayoutGuide type="bottom" id="wfy-db-euE"/> | ||
| 15 | + </layoutGuides> | ||
| 16 | + <view key="view" contentMode="scaleToFill" id="8bC-Xf-vdC"> | ||
| 17 | + <rect key="frame" x="0.0" y="0.0" width="600" height="600"/> | ||
| 18 | + <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/> | ||
| 19 | + <color key="backgroundColor" white="1" alpha="1" colorSpace="custom" customColorSpace="calibratedWhite"/> | ||
| 20 | + </view> | ||
| 21 | + </viewController> | ||
| 22 | + <placeholder placeholderIdentifier="IBFirstResponder" id="dkx-z0-nzr" sceneMemberID="firstResponder"/> | ||
| 23 | + </objects> | ||
| 24 | + </scene> | ||
| 25 | + </scenes> | ||
| 26 | +</document> |
| 1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
| 2 | +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | ||
| 3 | +<plist version="1.0"> | ||
| 4 | +<dict> | ||
| 5 | + <key>CFBundleDevelopmentRegion</key> | ||
| 6 | + <string>$(DEVELOPMENT_LANGUAGE)</string> | ||
| 7 | + <key>CFBundleExecutable</key> | ||
| 8 | + <string>$(EXECUTABLE_NAME)</string> | ||
| 9 | + <key>CFBundleIdentifier</key> | ||
| 10 | + <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string> | ||
| 11 | + <key>CFBundleInfoDictionaryVersion</key> | ||
| 12 | + <string>6.0</string> | ||
| 13 | + <key>CFBundleName</key> | ||
| 14 | + <string>example</string> | ||
| 15 | + <key>CFBundlePackageType</key> | ||
| 16 | + <string>APPL</string> | ||
| 17 | + <key>CFBundleShortVersionString</key> | ||
| 18 | + <string>$(FLUTTER_BUILD_NAME)</string> | ||
| 19 | + <key>CFBundleSignature</key> | ||
| 20 | + <string>????</string> | ||
| 21 | + <key>CFBundleVersion</key> | ||
| 22 | + <string>$(FLUTTER_BUILD_NUMBER)</string> | ||
| 23 | + <key>LSRequiresIPhoneOS</key> | ||
| 24 | + <true/> | ||
| 25 | + <key>UILaunchStoryboardName</key> | ||
| 26 | + <string>LaunchScreen</string> | ||
| 27 | + <key>UIMainStoryboardFile</key> | ||
| 28 | + <string>Main</string> | ||
| 29 | + <key>UISupportedInterfaceOrientations</key> | ||
| 30 | + <array> | ||
| 31 | + <string>UIInterfaceOrientationPortrait</string> | ||
| 32 | + <string>UIInterfaceOrientationLandscapeLeft</string> | ||
| 33 | + <string>UIInterfaceOrientationLandscapeRight</string> | ||
| 34 | + </array> | ||
| 35 | + <key>UISupportedInterfaceOrientations~ipad</key> | ||
| 36 | + <array> | ||
| 37 | + <string>UIInterfaceOrientationPortrait</string> | ||
| 38 | + <string>UIInterfaceOrientationPortraitUpsideDown</string> | ||
| 39 | + <string>UIInterfaceOrientationLandscapeLeft</string> | ||
| 40 | + <string>UIInterfaceOrientationLandscapeRight</string> | ||
| 41 | + </array> | ||
| 42 | + <key>UIViewControllerBasedStatusBarAppearance</key> | ||
| 43 | + <false/> | ||
| 44 | +</dict> | ||
| 45 | +</plist> |
| 1 | +#import "GeneratedPluginRegistrant.h" |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/lib/main.dart
0 → 100644
| 1 | +import 'dart:async'; | ||
| 2 | + | ||
| 3 | +import 'package:flutter/material.dart'; | ||
| 4 | +import 'package:flutter_sms/flutter_sms.dart'; | ||
| 5 | + | ||
| 6 | +void main() => runApp(MyApp()); | ||
| 7 | + | ||
| 8 | +class MyApp extends StatefulWidget { | ||
| 9 | + @override | ||
| 10 | + _MyAppState createState() => _MyAppState(); | ||
| 11 | +} | ||
| 12 | + | ||
| 13 | +class _MyAppState extends State<MyApp> { | ||
| 14 | + late TextEditingController _controllerPeople, _controllerMessage; | ||
| 15 | + String? _message, body; | ||
| 16 | + String _canSendSMSMessage = 'Check is not run.'; | ||
| 17 | + List<String> people = []; | ||
| 18 | + bool sendDirect = false; | ||
| 19 | + | ||
| 20 | + @override | ||
| 21 | + void initState() { | ||
| 22 | + super.initState(); | ||
| 23 | + initPlatformState(); | ||
| 24 | + } | ||
| 25 | + | ||
| 26 | + Future<void> initPlatformState() async { | ||
| 27 | + _controllerPeople = TextEditingController(); | ||
| 28 | + _controllerMessage = TextEditingController(); | ||
| 29 | + } | ||
| 30 | + | ||
| 31 | + Future<void> _sendSMS(List<String> recipients) async { | ||
| 32 | + try { | ||
| 33 | + String _result = await sendSMS( | ||
| 34 | + message: _controllerMessage.text, | ||
| 35 | + recipients: recipients, | ||
| 36 | + sendDirect: sendDirect, | ||
| 37 | + ); | ||
| 38 | + setState(() => _message = _result); | ||
| 39 | + } catch (error) { | ||
| 40 | + setState(() => _message = error.toString()); | ||
| 41 | + } | ||
| 42 | + } | ||
| 43 | + | ||
| 44 | + Future<bool> _canSendSMS() async { | ||
| 45 | + bool _result = await canSendSMS(); | ||
| 46 | + setState(() => _canSendSMSMessage = | ||
| 47 | + _result ? 'This unit can send SMS' : 'This unit cannot send SMS'); | ||
| 48 | + return _result; | ||
| 49 | + } | ||
| 50 | + | ||
| 51 | + Widget _phoneTile(String name) { | ||
| 52 | + return Padding( | ||
| 53 | + padding: const EdgeInsets.all(3), | ||
| 54 | + child: Container( | ||
| 55 | + decoration: BoxDecoration( | ||
| 56 | + border: Border( | ||
| 57 | + bottom: BorderSide(color: Colors.grey.shade300), | ||
| 58 | + top: BorderSide(color: Colors.grey.shade300), | ||
| 59 | + left: BorderSide(color: Colors.grey.shade300), | ||
| 60 | + right: BorderSide(color: Colors.grey.shade300), | ||
| 61 | + )), | ||
| 62 | + child: Padding( | ||
| 63 | + padding: const EdgeInsets.all(4), | ||
| 64 | + child: Column( | ||
| 65 | + mainAxisAlignment: MainAxisAlignment.center, | ||
| 66 | + mainAxisSize: MainAxisSize.min, | ||
| 67 | + children: <Widget>[ | ||
| 68 | + IconButton( | ||
| 69 | + icon: const Icon(Icons.close), | ||
| 70 | + onPressed: () => setState(() => people.remove(name)), | ||
| 71 | + ), | ||
| 72 | + Padding( | ||
| 73 | + padding: const EdgeInsets.all(0), | ||
| 74 | + child: Text( | ||
| 75 | + name, | ||
| 76 | + textScaleFactor: 1, | ||
| 77 | + style: const TextStyle(fontSize: 12), | ||
| 78 | + ), | ||
| 79 | + ) | ||
| 80 | + ], | ||
| 81 | + ), | ||
| 82 | + )), | ||
| 83 | + ); | ||
| 84 | + } | ||
| 85 | + | ||
| 86 | + @override | ||
| 87 | + Widget build(BuildContext context) { | ||
| 88 | + return MaterialApp( | ||
| 89 | + debugShowCheckedModeBanner: false, | ||
| 90 | + home: Scaffold( | ||
| 91 | + appBar: AppBar( | ||
| 92 | + title: const Text('SMS/MMS Example'), | ||
| 93 | + ), | ||
| 94 | + body: ListView( | ||
| 95 | + children: <Widget>[ | ||
| 96 | + if (people.isEmpty) | ||
| 97 | + const SizedBox(height: 0) | ||
| 98 | + else | ||
| 99 | + SizedBox( | ||
| 100 | + height: 90, | ||
| 101 | + child: Padding( | ||
| 102 | + padding: const EdgeInsets.all(3), | ||
| 103 | + child: ListView( | ||
| 104 | + scrollDirection: Axis.horizontal, | ||
| 105 | + children: List<Widget>.generate(people.length, (int index) { | ||
| 106 | + return _phoneTile(people[index]); | ||
| 107 | + }), | ||
| 108 | + ), | ||
| 109 | + ), | ||
| 110 | + ), | ||
| 111 | + ListTile( | ||
| 112 | + leading: const Icon(Icons.people), | ||
| 113 | + title: TextField( | ||
| 114 | + controller: _controllerPeople, | ||
| 115 | + decoration: | ||
| 116 | + const InputDecoration(labelText: 'Add Phone Number'), | ||
| 117 | + keyboardType: TextInputType.number, | ||
| 118 | + onChanged: (String value) => setState(() {}), | ||
| 119 | + ), | ||
| 120 | + trailing: IconButton( | ||
| 121 | + icon: const Icon(Icons.add), | ||
| 122 | + onPressed: _controllerPeople.text.isEmpty | ||
| 123 | + ? null | ||
| 124 | + : () => setState(() { | ||
| 125 | + people.add(_controllerPeople.text.toString()); | ||
| 126 | + _controllerPeople.clear(); | ||
| 127 | + }), | ||
| 128 | + ), | ||
| 129 | + ), | ||
| 130 | + const Divider(), | ||
| 131 | + ListTile( | ||
| 132 | + leading: const Icon(Icons.message), | ||
| 133 | + title: TextField( | ||
| 134 | + decoration: const InputDecoration(labelText: 'Add Message'), | ||
| 135 | + controller: _controllerMessage, | ||
| 136 | + onChanged: (String value) => setState(() {}), | ||
| 137 | + ), | ||
| 138 | + ), | ||
| 139 | + const Divider(), | ||
| 140 | + ListTile( | ||
| 141 | + title: const Text('Can send SMS'), | ||
| 142 | + subtitle: Text(_canSendSMSMessage), | ||
| 143 | + trailing: IconButton( | ||
| 144 | + padding: const EdgeInsets.symmetric(vertical: 16), | ||
| 145 | + icon: const Icon(Icons.check), | ||
| 146 | + onPressed: () { | ||
| 147 | + _canSendSMS(); | ||
| 148 | + }, | ||
| 149 | + ), | ||
| 150 | + ), | ||
| 151 | + SwitchListTile( | ||
| 152 | + title: const Text('Send Direct'), | ||
| 153 | + subtitle: const Text( | ||
| 154 | + 'Should we skip the additional dialog? (Android only)'), | ||
| 155 | + value: sendDirect, | ||
| 156 | + onChanged: (bool newValue) { | ||
| 157 | + setState(() { | ||
| 158 | + sendDirect = newValue; | ||
| 159 | + }); | ||
| 160 | + }), | ||
| 161 | + Padding( | ||
| 162 | + padding: const EdgeInsets.all(8), | ||
| 163 | + child: ElevatedButton( | ||
| 164 | + style: ButtonStyle( | ||
| 165 | + backgroundColor: MaterialStateProperty.resolveWith( | ||
| 166 | + (states) => Theme.of(context).colorScheme.secondary), | ||
| 167 | + padding: MaterialStateProperty.resolveWith( | ||
| 168 | + (states) => const EdgeInsets.symmetric(vertical: 16)), | ||
| 169 | + ), | ||
| 170 | + onPressed: () { | ||
| 171 | + _send(); | ||
| 172 | + }, | ||
| 173 | + child: Text( | ||
| 174 | + 'SEND', | ||
| 175 | + style: Theme.of(context).textTheme.displayMedium, | ||
| 176 | + ), | ||
| 177 | + ), | ||
| 178 | + ), | ||
| 179 | + Visibility( | ||
| 180 | + visible: _message != null, | ||
| 181 | + child: Row( | ||
| 182 | + mainAxisAlignment: MainAxisAlignment.center, | ||
| 183 | + children: <Widget>[ | ||
| 184 | + Expanded( | ||
| 185 | + child: Padding( | ||
| 186 | + padding: const EdgeInsets.all(12), | ||
| 187 | + child: Text( | ||
| 188 | + _message ?? 'No Data', | ||
| 189 | + maxLines: null, | ||
| 190 | + ), | ||
| 191 | + ), | ||
| 192 | + ), | ||
| 193 | + ], | ||
| 194 | + ), | ||
| 195 | + ), | ||
| 196 | + ], | ||
| 197 | + ), | ||
| 198 | + ), | ||
| 199 | + ); | ||
| 200 | + } | ||
| 201 | + | ||
| 202 | + void _send() { | ||
| 203 | + if (people.isEmpty) { | ||
| 204 | + setState(() => _message = 'At Least 1 Person or Message Required'); | ||
| 205 | + } else { | ||
| 206 | + _sendSMS(people); | ||
| 207 | + } | ||
| 208 | + } | ||
| 209 | +} |
library/fluttertpc_flutter_sms-b91cabe9da18110ddf67e9114083b7699cdec588/example/macos/Podfile
0 → 100644
| 1 | +platform :osx, '10.11' | ||
| 2 | + | ||
| 3 | +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. | ||
| 4 | +ENV['COCOAPODS_DISABLE_STATS'] = 'true' | ||
| 5 | + | ||
| 6 | +project 'Runner', { | ||
| 7 | + 'Debug' => :debug, | ||
| 8 | + 'Profile' => :release, | ||
| 9 | + 'Release' => :release, | ||
| 10 | +} | ||
| 11 | + | ||
| 12 | +def parse_KV_file(file, separator='=') | ||
| 13 | + file_abs_path = File.expand_path(file) | ||
| 14 | + if !File.exists? file_abs_path | ||
| 15 | + return []; | ||
| 16 | + end | ||
| 17 | + pods_ary = [] | ||
| 18 | + skip_line_start_symbols = ["#", "/"] | ||
| 19 | + File.foreach(file_abs_path) { |line| | ||
| 20 | + next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ } | ||
| 21 | + plugin = line.split(pattern=separator) | ||
| 22 | + if plugin.length == 2 | ||
| 23 | + podname = plugin[0].strip() | ||
| 24 | + path = plugin[1].strip() | ||
| 25 | + podpath = File.expand_path("#{path}", file_abs_path) | ||
| 26 | + pods_ary.push({:name => podname, :path => podpath}); | ||
| 27 | + else | ||
| 28 | + puts "Invalid plugin specification: #{line}" | ||
| 29 | + end | ||
| 30 | + } | ||
| 31 | + return pods_ary | ||
| 32 | +end | ||
| 33 | + | ||
| 34 | +def pubspec_supports_macos(file) | ||
| 35 | + file_abs_path = File.expand_path(file) | ||
| 36 | + if !File.exists? file_abs_path | ||
| 37 | + return false; | ||
| 38 | + end | ||
| 39 | + File.foreach(file_abs_path) { |line| | ||
| 40 | + return true if line =~ /^\s*macos:/ | ||
| 41 | + } | ||
| 42 | + return false | ||
| 43 | +end | ||
| 44 | + | ||
| 45 | +target 'Runner' do | ||
| 46 | + use_frameworks! | ||
| 47 | + use_modular_headers! | ||
| 48 | + | ||
| 49 | + # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock | ||
| 50 | + # referring to absolute paths on developers' machines. | ||
| 51 | + ephemeral_dir = File.join('Flutter', 'ephemeral') | ||
| 52 | + symlink_dir = File.join(ephemeral_dir, '.symlinks') | ||
| 53 | + symlink_plugins_dir = File.join(symlink_dir, 'plugins') | ||
| 54 | + system("rm -rf #{symlink_dir}") | ||
| 55 | + system("mkdir -p #{symlink_plugins_dir}") | ||
| 56 | + | ||
| 57 | + # Flutter Pods | ||
| 58 | + generated_xcconfig = parse_KV_file(File.join(ephemeral_dir, 'Flutter-Generated.xcconfig')) | ||
| 59 | + if generated_xcconfig.empty? | ||
| 60 | + puts "Flutter-Generated.xcconfig must exist. If you're running pod install manually, make sure flutter packages get is executed first." | ||
| 61 | + end | ||
| 62 | + generated_xcconfig.map { |p| | ||
| 63 | + if p[:name] == 'FLUTTER_FRAMEWORK_DIR' | ||
| 64 | + symlink = File.join(symlink_dir, 'flutter') | ||
| 65 | + File.symlink(File.dirname(p[:path]), symlink) | ||
| 66 | + pod 'FlutterMacOS', :path => File.join(symlink, File.basename(p[:path])) | ||
| 67 | + end | ||
| 68 | + } | ||
| 69 | + | ||
| 70 | + # Plugin Pods | ||
| 71 | + plugin_pods = parse_KV_file('../.flutter-plugins') | ||
| 72 | + plugin_pods.map { |p| | ||
| 73 | + symlink = File.join(symlink_plugins_dir, p[:name]) | ||
| 74 | + File.symlink(p[:path], symlink) | ||
| 75 | + if pubspec_supports_macos(File.join(symlink, 'pubspec.yaml')) | ||
| 76 | + pod p[:name], :path => File.join(symlink, 'macos') | ||
| 77 | + end | ||
| 78 | + } | ||
| 79 | +end | ||
| 80 | + | ||
| 81 | +# Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system. | ||
| 82 | +install! 'cocoapods', :disable_input_output_paths => true |
| 1 | +// !$*UTF8*$! | ||
| 2 | +{ | ||
| 3 | + archiveVersion = 1; | ||
| 4 | + classes = { | ||
| 5 | + }; | ||
| 6 | + objectVersion = 51; | ||
| 7 | + objects = { | ||
| 8 | + | ||
| 9 | +/* Begin PBXAggregateTarget section */ | ||
| 10 | + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { | ||
| 11 | + isa = PBXAggregateTarget; | ||
| 12 | + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; | ||
| 13 | + buildPhases = ( | ||
| 14 | + 33CC111E2044C6BF0003C045 /* ShellScript */, | ||
| 15 | + ); | ||
| 16 | + dependencies = ( | ||
| 17 | + ); | ||
| 18 | + name = "Flutter Assemble"; | ||
| 19 | + productName = FLX; | ||
| 20 | + }; | ||
| 21 | +/* End PBXAggregateTarget section */ | ||
| 22 | + | ||
| 23 | +/* Begin PBXBuildFile section */ | ||
| 24 | + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; | ||
| 25 | + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; | ||
| 26 | + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; | ||
| 27 | + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; | ||
| 28 | + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; | ||
| 29 | + 33D1A10422148B71006C7A3E /* FlutterMacOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */; }; | ||
| 30 | + 33D1A10522148B93006C7A3E /* FlutterMacOS.framework in Bundle Framework */ = {isa = PBXBuildFile; fileRef = 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; | ||
| 31 | + D73912F022F37F9E000D13A0 /* App.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = D73912EF22F37F9E000D13A0 /* App.framework */; }; | ||
| 32 | + D73912F222F3801D000D13A0 /* App.framework in Bundle Framework */ = {isa = PBXBuildFile; fileRef = D73912EF22F37F9E000D13A0 /* App.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; | ||
| 33 | +/* End PBXBuildFile section */ | ||
| 34 | + | ||
| 35 | +/* Begin PBXContainerItemProxy section */ | ||
| 36 | + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { | ||
| 37 | + isa = PBXContainerItemProxy; | ||
| 38 | + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; | ||
| 39 | + proxyType = 1; | ||
| 40 | + remoteGlobalIDString = 33CC111A2044C6BA0003C045; | ||
| 41 | + remoteInfo = FLX; | ||
| 42 | + }; | ||
| 43 | +/* End PBXContainerItemProxy section */ | ||
| 44 | + | ||
| 45 | +/* Begin PBXCopyFilesBuildPhase section */ | ||
| 46 | + 33CC110E2044A8840003C045 /* Bundle Framework */ = { | ||
| 47 | + isa = PBXCopyFilesBuildPhase; | ||
| 48 | + buildActionMask = 2147483647; | ||
| 49 | + dstPath = ""; | ||
| 50 | + dstSubfolderSpec = 10; | ||
| 51 | + files = ( | ||
| 52 | + D73912F222F3801D000D13A0 /* App.framework in Bundle Framework */, | ||
| 53 | + 33D1A10522148B93006C7A3E /* FlutterMacOS.framework in Bundle Framework */, | ||
| 54 | + ); | ||
| 55 | + name = "Bundle Framework"; | ||
| 56 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 57 | + }; | ||
| 58 | +/* End PBXCopyFilesBuildPhase section */ | ||
| 59 | + | ||
| 60 | +/* Begin PBXFileReference section */ | ||
| 61 | + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; }; | ||
| 62 | + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; }; | ||
| 63 | + 33CC10ED2044A3C60003C045 /* example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "example.app"; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 64 | + 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | ||
| 65 | + 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = "<group>"; }; | ||
| 66 | + 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = "<group>"; }; | ||
| 67 | + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = "<group>"; }; | ||
| 68 | + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = "<group>"; }; | ||
| 69 | + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = "<group>"; }; | ||
| 70 | + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = "<group>"; }; | ||
| 71 | + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = "<group>"; }; | ||
| 72 | + 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = FlutterMacOS.framework; path = Flutter/ephemeral/FlutterMacOS.framework; sourceTree = SOURCE_ROOT; }; | ||
| 73 | + 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; }; | ||
| 74 | + 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; }; | ||
| 75 | + 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; }; | ||
| 76 | + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; }; | ||
| 77 | + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; }; | ||
| 78 | + D73912EF22F37F9E000D13A0 /* App.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = App.framework; path = Flutter/ephemeral/App.framework; sourceTree = SOURCE_ROOT; }; | ||
| 79 | +/* End PBXFileReference section */ | ||
| 80 | + | ||
| 81 | +/* Begin PBXFrameworksBuildPhase section */ | ||
| 82 | + 33CC10EA2044A3C60003C045 /* Frameworks */ = { | ||
| 83 | + isa = PBXFrameworksBuildPhase; | ||
| 84 | + buildActionMask = 2147483647; | ||
| 85 | + files = ( | ||
| 86 | + D73912F022F37F9E000D13A0 /* App.framework in Frameworks */, | ||
| 87 | + 33D1A10422148B71006C7A3E /* FlutterMacOS.framework in Frameworks */, | ||
| 88 | + ); | ||
| 89 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 90 | + }; | ||
| 91 | +/* End PBXFrameworksBuildPhase section */ | ||
| 92 | + | ||
| 93 | +/* Begin PBXGroup section */ | ||
| 94 | + 33BA886A226E78AF003329D5 /* Configs */ = { | ||
| 95 | + isa = PBXGroup; | ||
| 96 | + children = ( | ||
| 97 | + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, | ||
| 98 | + 9740EEB21CF90195004384FC /* Debug.xcconfig */, | ||
| 99 | + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, | ||
| 100 | + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, | ||
| 101 | + ); | ||
| 102 | + path = Configs; | ||
| 103 | + sourceTree = "<group>"; | ||
| 104 | + }; | ||
| 105 | + 33CC10E42044A3C60003C045 = { | ||
| 106 | + isa = PBXGroup; | ||
| 107 | + children = ( | ||
| 108 | + 33FAB671232836740065AC1E /* Runner */, | ||
| 109 | + 33CEB47122A05771004F2AC0 /* Flutter */, | ||
| 110 | + 33CC10EE2044A3C60003C045 /* Products */, | ||
| 111 | + D73912EC22F37F3D000D13A0 /* Frameworks */, | ||
| 112 | + ); | ||
| 113 | + sourceTree = "<group>"; | ||
| 114 | + }; | ||
| 115 | + 33CC10EE2044A3C60003C045 /* Products */ = { | ||
| 116 | + isa = PBXGroup; | ||
| 117 | + children = ( | ||
| 118 | + 33CC10ED2044A3C60003C045 /* example.app */, | ||
| 119 | + ); | ||
| 120 | + name = Products; | ||
| 121 | + sourceTree = "<group>"; | ||
| 122 | + }; | ||
| 123 | + 33CC11242044D66E0003C045 /* Resources */ = { | ||
| 124 | + isa = PBXGroup; | ||
| 125 | + children = ( | ||
| 126 | + 33CC10F22044A3C60003C045 /* Assets.xcassets */, | ||
| 127 | + 33CC10F42044A3C60003C045 /* MainMenu.xib */, | ||
| 128 | + 33CC10F72044A3C60003C045 /* Info.plist */, | ||
| 129 | + ); | ||
| 130 | + name = Resources; | ||
| 131 | + path = ..; | ||
| 132 | + sourceTree = "<group>"; | ||
| 133 | + }; | ||
| 134 | + 33CEB47122A05771004F2AC0 /* Flutter */ = { | ||
| 135 | + isa = PBXGroup; | ||
| 136 | + children = ( | ||
| 137 | + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, | ||
| 138 | + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, | ||
| 139 | + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, | ||
| 140 | + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, | ||
| 141 | + D73912EF22F37F9E000D13A0 /* App.framework */, | ||
| 142 | + 33D1A10322148B71006C7A3E /* FlutterMacOS.framework */, | ||
| 143 | + ); | ||
| 144 | + path = Flutter; | ||
| 145 | + sourceTree = "<group>"; | ||
| 146 | + }; | ||
| 147 | + 33FAB671232836740065AC1E /* Runner */ = { | ||
| 148 | + isa = PBXGroup; | ||
| 149 | + children = ( | ||
| 150 | + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, | ||
| 151 | + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, | ||
| 152 | + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, | ||
| 153 | + 33E51914231749380026EE4D /* Release.entitlements */, | ||
| 154 | + 33CC11242044D66E0003C045 /* Resources */, | ||
| 155 | + 33BA886A226E78AF003329D5 /* Configs */, | ||
| 156 | + ); | ||
| 157 | + path = Runner; | ||
| 158 | + sourceTree = "<group>"; | ||
| 159 | + }; | ||
| 160 | + D73912EC22F37F3D000D13A0 /* Frameworks */ = { | ||
| 161 | + isa = PBXGroup; | ||
| 162 | + children = ( | ||
| 163 | + ); | ||
| 164 | + name = Frameworks; | ||
| 165 | + sourceTree = "<group>"; | ||
| 166 | + }; | ||
| 167 | +/* End PBXGroup section */ | ||
| 168 | + | ||
| 169 | +/* Begin PBXNativeTarget section */ | ||
| 170 | + 33CC10EC2044A3C60003C045 /* Runner */ = { | ||
| 171 | + isa = PBXNativeTarget; | ||
| 172 | + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; | ||
| 173 | + buildPhases = ( | ||
| 174 | + 33CC10E92044A3C60003C045 /* Sources */, | ||
| 175 | + 33CC10EA2044A3C60003C045 /* Frameworks */, | ||
| 176 | + 33CC10EB2044A3C60003C045 /* Resources */, | ||
| 177 | + 33CC110E2044A8840003C045 /* Bundle Framework */, | ||
| 178 | + 3399D490228B24CF009A79C7 /* ShellScript */, | ||
| 179 | + ); | ||
| 180 | + buildRules = ( | ||
| 181 | + ); | ||
| 182 | + dependencies = ( | ||
| 183 | + 33CC11202044C79F0003C045 /* PBXTargetDependency */, | ||
| 184 | + ); | ||
| 185 | + name = Runner; | ||
| 186 | + productName = Runner; | ||
| 187 | + productReference = 33CC10ED2044A3C60003C045 /* example.app */; | ||
| 188 | + productType = "com.apple.product-type.application"; | ||
| 189 | + }; | ||
| 190 | +/* End PBXNativeTarget section */ | ||
| 191 | + | ||
| 192 | +/* Begin PBXProject section */ | ||
| 193 | + 33CC10E52044A3C60003C045 /* Project object */ = { | ||
| 194 | + isa = PBXProject; | ||
| 195 | + attributes = { | ||
| 196 | + LastSwiftUpdateCheck = 0920; | ||
| 197 | + LastUpgradeCheck = 0930; | ||
| 198 | + ORGANIZATIONNAME = "The Flutter Authors"; | ||
| 199 | + TargetAttributes = { | ||
| 200 | + 33CC10EC2044A3C60003C045 = { | ||
| 201 | + CreatedOnToolsVersion = 9.2; | ||
| 202 | + LastSwiftMigration = 1100; | ||
| 203 | + ProvisioningStyle = Automatic; | ||
| 204 | + SystemCapabilities = { | ||
| 205 | + com.apple.Sandbox = { | ||
| 206 | + enabled = 1; | ||
| 207 | + }; | ||
| 208 | + }; | ||
| 209 | + }; | ||
| 210 | + 33CC111A2044C6BA0003C045 = { | ||
| 211 | + CreatedOnToolsVersion = 9.2; | ||
| 212 | + ProvisioningStyle = Manual; | ||
| 213 | + }; | ||
| 214 | + }; | ||
| 215 | + }; | ||
| 216 | + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; | ||
| 217 | + compatibilityVersion = "Xcode 8.0"; | ||
| 218 | + developmentRegion = en; | ||
| 219 | + hasScannedForEncodings = 0; | ||
| 220 | + knownRegions = ( | ||
| 221 | + en, | ||
| 222 | + Base, | ||
| 223 | + ); | ||
| 224 | + mainGroup = 33CC10E42044A3C60003C045; | ||
| 225 | + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; | ||
| 226 | + projectDirPath = ""; | ||
| 227 | + projectRoot = ""; | ||
| 228 | + targets = ( | ||
| 229 | + 33CC10EC2044A3C60003C045 /* Runner */, | ||
| 230 | + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, | ||
| 231 | + ); | ||
| 232 | + }; | ||
| 233 | +/* End PBXProject section */ | ||
| 234 | + | ||
| 235 | +/* Begin PBXResourcesBuildPhase section */ | ||
| 236 | + 33CC10EB2044A3C60003C045 /* Resources */ = { | ||
| 237 | + isa = PBXResourcesBuildPhase; | ||
| 238 | + buildActionMask = 2147483647; | ||
| 239 | + files = ( | ||
| 240 | + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, | ||
| 241 | + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, | ||
| 242 | + ); | ||
| 243 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 244 | + }; | ||
| 245 | +/* End PBXResourcesBuildPhase section */ | ||
| 246 | + | ||
| 247 | +/* Begin PBXShellScriptBuildPhase section */ | ||
| 248 | + 3399D490228B24CF009A79C7 /* ShellScript */ = { | ||
| 249 | + isa = PBXShellScriptBuildPhase; | ||
| 250 | + buildActionMask = 2147483647; | ||
| 251 | + files = ( | ||
| 252 | + ); | ||
| 253 | + inputFileListPaths = ( | ||
| 254 | + ); | ||
| 255 | + inputPaths = ( | ||
| 256 | + ); | ||
| 257 | + outputFileListPaths = ( | ||
| 258 | + ); | ||
| 259 | + outputPaths = ( | ||
| 260 | + ); | ||
| 261 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 262 | + shellPath = /bin/sh; | ||
| 263 | + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename\n"; | ||
| 264 | + }; | ||
| 265 | + 33CC111E2044C6BF0003C045 /* ShellScript */ = { | ||
| 266 | + isa = PBXShellScriptBuildPhase; | ||
| 267 | + buildActionMask = 2147483647; | ||
| 268 | + files = ( | ||
| 269 | + ); | ||
| 270 | + inputFileListPaths = ( | ||
| 271 | + Flutter/ephemeral/FlutterInputs.xcfilelist, | ||
| 272 | + ); | ||
| 273 | + inputPaths = ( | ||
| 274 | + Flutter/ephemeral/tripwire, | ||
| 275 | + ); | ||
| 276 | + outputFileListPaths = ( | ||
| 277 | + Flutter/ephemeral/FlutterOutputs.xcfilelist, | ||
| 278 | + ); | ||
| 279 | + outputPaths = ( | ||
| 280 | + ); | ||
| 281 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 282 | + shellPath = /bin/sh; | ||
| 283 | + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh\ntouch Flutter/ephemeral/tripwire\n"; | ||
| 284 | + }; | ||
| 285 | +/* End PBXShellScriptBuildPhase section */ | ||
| 286 | + | ||
| 287 | +/* Begin PBXSourcesBuildPhase section */ | ||
| 288 | + 33CC10E92044A3C60003C045 /* Sources */ = { | ||
| 289 | + isa = PBXSourcesBuildPhase; | ||
| 290 | + buildActionMask = 2147483647; | ||
| 291 | + files = ( | ||
| 292 | + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, | ||
| 293 | + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, | ||
| 294 | + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, | ||
| 295 | + ); | ||
| 296 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 297 | + }; | ||
| 298 | +/* End PBXSourcesBuildPhase section */ | ||
| 299 | + | ||
| 300 | +/* Begin PBXTargetDependency section */ | ||
| 301 | + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { | ||
| 302 | + isa = PBXTargetDependency; | ||
| 303 | + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; | ||
| 304 | + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; | ||
| 305 | + }; | ||
| 306 | +/* End PBXTargetDependency section */ | ||
| 307 | + | ||
| 308 | +/* Begin PBXVariantGroup section */ | ||
| 309 | + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { | ||
| 310 | + isa = PBXVariantGroup; | ||
| 311 | + children = ( | ||
| 312 | + 33CC10F52044A3C60003C045 /* Base */, | ||
| 313 | + ); | ||
| 314 | + name = MainMenu.xib; | ||
| 315 | + path = Runner; | ||
| 316 | + sourceTree = "<group>"; | ||
| 317 | + }; | ||
| 318 | +/* End PBXVariantGroup section */ | ||
| 319 | + | ||
| 320 | +/* Begin XCBuildConfiguration section */ | ||
| 321 | + 338D0CE9231458BD00FA5F75 /* Profile */ = { | ||
| 322 | + isa = XCBuildConfiguration; | ||
| 323 | + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | ||
| 324 | + buildSettings = { | ||
| 325 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 326 | + CLANG_ANALYZER_NONNULL = YES; | ||
| 327 | + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; | ||
| 328 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; | ||
| 329 | + CLANG_CXX_LIBRARY = "libc++"; | ||
| 330 | + CLANG_ENABLE_MODULES = YES; | ||
| 331 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
| 332 | + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 333 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 334 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 335 | + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; | ||
| 336 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 337 | + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; | ||
| 338 | + CLANG_WARN_EMPTY_BODY = YES; | ||
| 339 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 340 | + CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 341 | + CLANG_WARN_INT_CONVERSION = YES; | ||
| 342 | + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 343 | + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 344 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 345 | + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 346 | + CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 347 | + CODE_SIGN_IDENTITY = "-"; | ||
| 348 | + COPY_PHASE_STRIP = NO; | ||
| 349 | + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||
| 350 | + ENABLE_NS_ASSERTIONS = NO; | ||
| 351 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 352 | + GCC_C_LANGUAGE_STANDARD = gnu11; | ||
| 353 | + GCC_NO_COMMON_BLOCKS = YES; | ||
| 354 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 355 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 356 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 357 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 358 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 359 | + MACOSX_DEPLOYMENT_TARGET = 10.11; | ||
| 360 | + MTL_ENABLE_DEBUG_INFO = NO; | ||
| 361 | + SDKROOT = macosx; | ||
| 362 | + SWIFT_COMPILATION_MODE = wholemodule; | ||
| 363 | + SWIFT_OPTIMIZATION_LEVEL = "-O"; | ||
| 364 | + }; | ||
| 365 | + name = Profile; | ||
| 366 | + }; | ||
| 367 | + 338D0CEA231458BD00FA5F75 /* Profile */ = { | ||
| 368 | + isa = XCBuildConfiguration; | ||
| 369 | + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; | ||
| 370 | + buildSettings = { | ||
| 371 | + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | ||
| 372 | + CLANG_ENABLE_MODULES = YES; | ||
| 373 | + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; | ||
| 374 | + CODE_SIGN_STYLE = Automatic; | ||
| 375 | + COMBINE_HIDPI_IMAGES = YES; | ||
| 376 | + FRAMEWORK_SEARCH_PATHS = ( | ||
| 377 | + "$(inherited)", | ||
| 378 | + "$(PROJECT_DIR)/Flutter/ephemeral", | ||
| 379 | + ); | ||
| 380 | + INFOPLIST_FILE = Runner/Info.plist; | ||
| 381 | + LD_RUNPATH_SEARCH_PATHS = ( | ||
| 382 | + "$(inherited)", | ||
| 383 | + "@executable_path/../Frameworks", | ||
| 384 | + ); | ||
| 385 | + PROVISIONING_PROFILE_SPECIFIER = ""; | ||
| 386 | + SWIFT_VERSION = 5.0; | ||
| 387 | + }; | ||
| 388 | + name = Profile; | ||
| 389 | + }; | ||
| 390 | + 338D0CEB231458BD00FA5F75 /* Profile */ = { | ||
| 391 | + isa = XCBuildConfiguration; | ||
| 392 | + buildSettings = { | ||
| 393 | + CODE_SIGN_STYLE = Manual; | ||
| 394 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 395 | + }; | ||
| 396 | + name = Profile; | ||
| 397 | + }; | ||
| 398 | + 33CC10F92044A3C60003C045 /* Debug */ = { | ||
| 399 | + isa = XCBuildConfiguration; | ||
| 400 | + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; | ||
| 401 | + buildSettings = { | ||
| 402 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 403 | + CLANG_ANALYZER_NONNULL = YES; | ||
| 404 | + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; | ||
| 405 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; | ||
| 406 | + CLANG_CXX_LIBRARY = "libc++"; | ||
| 407 | + CLANG_ENABLE_MODULES = YES; | ||
| 408 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
| 409 | + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 410 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 411 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 412 | + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; | ||
| 413 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 414 | + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; | ||
| 415 | + CLANG_WARN_EMPTY_BODY = YES; | ||
| 416 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 417 | + CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 418 | + CLANG_WARN_INT_CONVERSION = YES; | ||
| 419 | + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 420 | + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 421 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 422 | + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 423 | + CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 424 | + CODE_SIGN_IDENTITY = "-"; | ||
| 425 | + COPY_PHASE_STRIP = NO; | ||
| 426 | + DEBUG_INFORMATION_FORMAT = dwarf; | ||
| 427 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 428 | + ENABLE_TESTABILITY = YES; | ||
| 429 | + GCC_C_LANGUAGE_STANDARD = gnu11; | ||
| 430 | + GCC_DYNAMIC_NO_PIC = NO; | ||
| 431 | + GCC_NO_COMMON_BLOCKS = YES; | ||
| 432 | + GCC_OPTIMIZATION_LEVEL = 0; | ||
| 433 | + GCC_PREPROCESSOR_DEFINITIONS = ( | ||
| 434 | + "DEBUG=1", | ||
| 435 | + "$(inherited)", | ||
| 436 | + ); | ||
| 437 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 438 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 439 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 440 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 441 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 442 | + MACOSX_DEPLOYMENT_TARGET = 10.11; | ||
| 443 | + MTL_ENABLE_DEBUG_INFO = YES; | ||
| 444 | + ONLY_ACTIVE_ARCH = YES; | ||
| 445 | + SDKROOT = macosx; | ||
| 446 | + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; | ||
| 447 | + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | ||
| 448 | + }; | ||
| 449 | + name = Debug; | ||
| 450 | + }; | ||
| 451 | + 33CC10FA2044A3C60003C045 /* Release */ = { | ||
| 452 | + isa = XCBuildConfiguration; | ||
| 453 | + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | ||
| 454 | + buildSettings = { | ||
| 455 | + ALWAYS_SEARCH_USER_PATHS = NO; | ||
| 456 | + CLANG_ANALYZER_NONNULL = YES; | ||
| 457 | + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; | ||
| 458 | + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; | ||
| 459 | + CLANG_CXX_LIBRARY = "libc++"; | ||
| 460 | + CLANG_ENABLE_MODULES = YES; | ||
| 461 | + CLANG_ENABLE_OBJC_ARC = YES; | ||
| 462 | + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; | ||
| 463 | + CLANG_WARN_BOOL_CONVERSION = YES; | ||
| 464 | + CLANG_WARN_CONSTANT_CONVERSION = YES; | ||
| 465 | + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; | ||
| 466 | + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; | ||
| 467 | + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; | ||
| 468 | + CLANG_WARN_EMPTY_BODY = YES; | ||
| 469 | + CLANG_WARN_ENUM_CONVERSION = YES; | ||
| 470 | + CLANG_WARN_INFINITE_RECURSION = YES; | ||
| 471 | + CLANG_WARN_INT_CONVERSION = YES; | ||
| 472 | + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; | ||
| 473 | + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; | ||
| 474 | + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; | ||
| 475 | + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; | ||
| 476 | + CLANG_WARN_SUSPICIOUS_MOVE = YES; | ||
| 477 | + CODE_SIGN_IDENTITY = "-"; | ||
| 478 | + COPY_PHASE_STRIP = NO; | ||
| 479 | + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; | ||
| 480 | + ENABLE_NS_ASSERTIONS = NO; | ||
| 481 | + ENABLE_STRICT_OBJC_MSGSEND = YES; | ||
| 482 | + GCC_C_LANGUAGE_STANDARD = gnu11; | ||
| 483 | + GCC_NO_COMMON_BLOCKS = YES; | ||
| 484 | + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; | ||
| 485 | + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; | ||
| 486 | + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; | ||
| 487 | + GCC_WARN_UNUSED_FUNCTION = YES; | ||
| 488 | + GCC_WARN_UNUSED_VARIABLE = YES; | ||
| 489 | + MACOSX_DEPLOYMENT_TARGET = 10.11; | ||
| 490 | + MTL_ENABLE_DEBUG_INFO = NO; | ||
| 491 | + SDKROOT = macosx; | ||
| 492 | + SWIFT_COMPILATION_MODE = wholemodule; | ||
| 493 | + SWIFT_OPTIMIZATION_LEVEL = "-O"; | ||
| 494 | + }; | ||
| 495 | + name = Release; | ||
| 496 | + }; | ||
| 497 | + 33CC10FC2044A3C60003C045 /* Debug */ = { | ||
| 498 | + isa = XCBuildConfiguration; | ||
| 499 | + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; | ||
| 500 | + buildSettings = { | ||
| 501 | + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | ||
| 502 | + CLANG_ENABLE_MODULES = YES; | ||
| 503 | + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; | ||
| 504 | + CODE_SIGN_STYLE = Automatic; | ||
| 505 | + COMBINE_HIDPI_IMAGES = YES; | ||
| 506 | + FRAMEWORK_SEARCH_PATHS = ( | ||
| 507 | + "$(inherited)", | ||
| 508 | + "$(PROJECT_DIR)/Flutter/ephemeral", | ||
| 509 | + ); | ||
| 510 | + INFOPLIST_FILE = Runner/Info.plist; | ||
| 511 | + LD_RUNPATH_SEARCH_PATHS = ( | ||
| 512 | + "$(inherited)", | ||
| 513 | + "@executable_path/../Frameworks", | ||
| 514 | + ); | ||
| 515 | + PROVISIONING_PROFILE_SPECIFIER = ""; | ||
| 516 | + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | ||
| 517 | + SWIFT_VERSION = 5.0; | ||
| 518 | + }; | ||
| 519 | + name = Debug; | ||
| 520 | + }; | ||
| 521 | + 33CC10FD2044A3C60003C045 /* Release */ = { | ||
| 522 | + isa = XCBuildConfiguration; | ||
| 523 | + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; | ||
| 524 | + buildSettings = { | ||
| 525 | + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; | ||
| 526 | + CLANG_ENABLE_MODULES = YES; | ||
| 527 | + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; | ||
| 528 | + CODE_SIGN_STYLE = Automatic; | ||
| 529 | + COMBINE_HIDPI_IMAGES = YES; | ||
| 530 | + FRAMEWORK_SEARCH_PATHS = ( | ||
| 531 | + "$(inherited)", | ||
| 532 | + "$(PROJECT_DIR)/Flutter/ephemeral", | ||
| 533 | + ); | ||
| 534 | + INFOPLIST_FILE = Runner/Info.plist; | ||
| 535 | + LD_RUNPATH_SEARCH_PATHS = ( | ||
| 536 | + "$(inherited)", | ||
| 537 | + "@executable_path/../Frameworks", | ||
| 538 | + ); | ||
| 539 | + PROVISIONING_PROFILE_SPECIFIER = ""; | ||
| 540 | + SWIFT_VERSION = 5.0; | ||
| 541 | + }; | ||
| 542 | + name = Release; | ||
| 543 | + }; | ||
| 544 | + 33CC111C2044C6BA0003C045 /* Debug */ = { | ||
| 545 | + isa = XCBuildConfiguration; | ||
| 546 | + buildSettings = { | ||
| 547 | + CODE_SIGN_STYLE = Manual; | ||
| 548 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 549 | + }; | ||
| 550 | + name = Debug; | ||
| 551 | + }; | ||
| 552 | + 33CC111D2044C6BA0003C045 /* Release */ = { | ||
| 553 | + isa = XCBuildConfiguration; | ||
| 554 | + buildSettings = { | ||
| 555 | + CODE_SIGN_STYLE = Automatic; | ||
| 556 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 557 | + }; | ||
| 558 | + name = Release; | ||
| 559 | + }; | ||
| 560 | +/* End XCBuildConfiguration section */ | ||
| 561 | + | ||
| 562 | +/* Begin XCConfigurationList section */ | ||
| 563 | + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { | ||
| 564 | + isa = XCConfigurationList; | ||
| 565 | + buildConfigurations = ( | ||
| 566 | + 33CC10F92044A3C60003C045 /* Debug */, | ||
| 567 | + 33CC10FA2044A3C60003C045 /* Release */, | ||
| 568 | + 338D0CE9231458BD00FA5F75 /* Profile */, | ||
| 569 | + ); | ||
| 570 | + defaultConfigurationIsVisible = 0; | ||
| 571 | + defaultConfigurationName = Release; | ||
| 572 | + }; | ||
| 573 | + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { | ||
| 574 | + isa = XCConfigurationList; | ||
| 575 | + buildConfigurations = ( | ||
| 576 | + 33CC10FC2044A3C60003C045 /* Debug */, | ||
| 577 | + 33CC10FD2044A3C60003C045 /* Release */, | ||
| 578 | + 338D0CEA231458BD00FA5F75 /* Profile */, | ||
| 579 | + ); | ||
| 580 | + defaultConfigurationIsVisible = 0; | ||
| 581 | + defaultConfigurationName = Release; | ||
| 582 | + }; | ||
| 583 | + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { | ||
| 584 | + isa = XCConfigurationList; | ||
| 585 | + buildConfigurations = ( | ||
| 586 | + 33CC111C2044C6BA0003C045 /* Debug */, | ||
| 587 | + 33CC111D2044C6BA0003C045 /* Release */, | ||
| 588 | + 338D0CEB231458BD00FA5F75 /* Profile */, | ||
| 589 | + ); | ||
| 590 | + defaultConfigurationIsVisible = 0; | ||
| 591 | + defaultConfigurationName = Release; | ||
| 592 | + }; | ||
| 593 | +/* End XCConfigurationList section */ | ||
| 594 | + }; | ||
| 595 | + rootObject = 33CC10E52044A3C60003C045 /* Project object */; | ||
| 596 | +} |
| 1 | +<?xml version="1.0" encoding="UTF-8"?> | ||
| 2 | +<Scheme | ||
| 3 | + LastUpgradeVersion = "1000" | ||
| 4 | + version = "1.3"> | ||
| 5 | + <BuildAction | ||
| 6 | + parallelizeBuildables = "YES" | ||
| 7 | + buildImplicitDependencies = "YES"> | ||
| 8 | + <BuildActionEntries> | ||
| 9 | + <BuildActionEntry | ||
| 10 | + buildForTesting = "YES" | ||
| 11 | + buildForRunning = "YES" | ||
| 12 | + buildForProfiling = "YES" | ||
| 13 | + buildForArchiving = "YES" | ||
| 14 | + buildForAnalyzing = "YES"> | ||
| 15 | + <BuildableReference | ||
| 16 | + BuildableIdentifier = "primary" | ||
| 17 | + BlueprintIdentifier = "33CC10EC2044A3C60003C045" | ||
| 18 | + BuildableName = "example.app" | ||
| 19 | + BlueprintName = "Runner" | ||
| 20 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 21 | + </BuildableReference> | ||
| 22 | + </BuildActionEntry> | ||
| 23 | + </BuildActionEntries> | ||
| 24 | + </BuildAction> | ||
| 25 | + <TestAction | ||
| 26 | + buildConfiguration = "Debug" | ||
| 27 | + selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| 28 | + selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| 29 | + shouldUseLaunchSchemeArgsEnv = "YES"> | ||
| 30 | + <Testables> | ||
| 31 | + <TestableReference | ||
| 32 | + skipped = "NO"> | ||
| 33 | + <BuildableReference | ||
| 34 | + BuildableIdentifier = "primary" | ||
| 35 | + BlueprintIdentifier = "00380F9121DF178D00097171" | ||
| 36 | + BuildableName = "RunnerUITests.xctest" | ||
| 37 | + BlueprintName = "RunnerUITests" | ||
| 38 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 39 | + </BuildableReference> | ||
| 40 | + </TestableReference> | ||
| 41 | + </Testables> | ||
| 42 | + <MacroExpansion> | ||
| 43 | + <BuildableReference | ||
| 44 | + BuildableIdentifier = "primary" | ||
| 45 | + BlueprintIdentifier = "33CC10EC2044A3C60003C045" | ||
| 46 | + BuildableName = "example.app" | ||
| 47 | + BlueprintName = "Runner" | ||
| 48 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 49 | + </BuildableReference> | ||
| 50 | + </MacroExpansion> | ||
| 51 | + <AdditionalOptions> | ||
| 52 | + </AdditionalOptions> | ||
| 53 | + </TestAction> | ||
| 54 | + <LaunchAction | ||
| 55 | + buildConfiguration = "Debug" | ||
| 56 | + selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" | ||
| 57 | + selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" | ||
| 58 | + launchStyle = "0" | ||
| 59 | + useCustomWorkingDirectory = "NO" | ||
| 60 | + ignoresPersistentStateOnLaunch = "NO" | ||
| 61 | + debugDocumentVersioning = "YES" | ||
| 62 | + debugServiceExtension = "internal" | ||
| 63 | + allowLocationSimulation = "YES"> | ||
| 64 | + <BuildableProductRunnable | ||
| 65 | + runnableDebuggingMode = "0"> | ||
| 66 | + <BuildableReference | ||
| 67 | + BuildableIdentifier = "primary" | ||
| 68 | + BlueprintIdentifier = "33CC10EC2044A3C60003C045" | ||
| 69 | + BuildableName = "example.app" | ||
| 70 | + BlueprintName = "Runner" | ||
| 71 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 72 | + </BuildableReference> | ||
| 73 | + </BuildableProductRunnable> | ||
| 74 | + <AdditionalOptions> | ||
| 75 | + </AdditionalOptions> | ||
| 76 | + </LaunchAction> | ||
| 77 | + <ProfileAction | ||
| 78 | + buildConfiguration = "Release" | ||
| 79 | + shouldUseLaunchSchemeArgsEnv = "YES" | ||
| 80 | + savedToolIdentifier = "" | ||
| 81 | + useCustomWorkingDirectory = "NO" | ||
| 82 | + debugDocumentVersioning = "YES"> | ||
| 83 | + <BuildableProductRunnable | ||
| 84 | + runnableDebuggingMode = "0"> | ||
| 85 | + <BuildableReference | ||
| 86 | + BuildableIdentifier = "primary" | ||
| 87 | + BlueprintIdentifier = "33CC10EC2044A3C60003C045" | ||
| 88 | + BuildableName = "example.app" | ||
| 89 | + BlueprintName = "Runner" | ||
| 90 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 91 | + </BuildableReference> | ||
| 92 | + </BuildableProductRunnable> | ||
| 93 | + </ProfileAction> | ||
| 94 | + <AnalyzeAction | ||
| 95 | + buildConfiguration = "Debug"> | ||
| 96 | + </AnalyzeAction> | ||
| 97 | + <ArchiveAction | ||
| 98 | + buildConfiguration = "Release" | ||
| 99 | + revealArchiveInOrganizer = "YES"> | ||
| 100 | + </ArchiveAction> | ||
| 101 | +</Scheme> |
-
Please register or login to post a comment