From 155b65c2d804983c3fd0e054ed6522d8ae1c5fdd Mon Sep 17 00:00:00 2001 From: wurong <953969641@qq.com> Date: Wed, 21 Aug 2024 17:54:55 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=9D=83=E9=99=90=E5=BC=B9?= =?UTF-8?q?=E7=AA=97=E8=AF=B4=E6=98=8E=E6=9B=B4=E6=94=B9=EF=BC=88=E4=B8=AA?= =?UTF-8?q?=E4=BA=BA=E8=B5=84=E6=96=99=E5=A4=B4=E5=83=8F-=E7=9B=B8?= =?UTF-8?q?=E6=9C=BA=E7=9B=B8=E5=86=8C=EF=BC=8C=E9=97=A8=E5=BA=97=EF=BC=8C?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=94=B6=E8=B4=A7=E5=9C=B0=E5=9D=80-?= =?UTF-8?q?=E5=9C=B0=E5=9D=80=EF=BC=8C=E6=89=AB=E4=B8=80=E6=89=AB=EF=BC=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../2x/icon_storage_permission_tips.webp | Bin 5760 -> 6438 bytes .../3x/icon_storage_permission_tips.webp | Bin 10840 -> 6828 bytes .../image/icon_storage_permission_tips.webp | Bin 2844 -> 3398 bytes lib/generated/intl/messages_en.dart | 2 +- lib/generated/intl/messages_zh_CN.dart | 2 +- lib/generated/intl/messages_zh_Hans_CN.dart | 2 +- lib/generated/intl/messages_zh_Hant_CN.dart | 2 +- lib/generated/intl/messages_zh_TW.dart | 2 +- lib/generated/l10n.dart | 2 +- lib/mine/mine_view/mine_view.dart | 71 +++++- lib/mine/user_info_page.dart | 241 ++++++++++++++++-- lib/utils/location.dart | 7 +- lib/view_widget/request_permission.dart | 1 + 13 files changed, 305 insertions(+), 27 deletions(-) diff --git a/assets/image/2x/icon_storage_permission_tips.webp b/assets/image/2x/icon_storage_permission_tips.webp index dbc537316e662c1c9e00cc77d9db3a18d0313c1a..8ee37e69d34a1654a09103d4657965c7e6ab1c46 100644 GIT binary patch literal 6438 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%0DyPW z(1TlUPi3#1R%UlxHm$-R9*UDRXD#;w@Y@{9(spFa0OSB5(9_O*s;T9E?+Lxv#YDwn zc7|K@?-XUN%Fz+>pkfjLKyo&!8(56rdfS|{^+m-AMRpT}L779D79kXA0CE7hGR-{k z>}}AA+|>G_vgq*~5xQx${hX+xb^%q65ReCz7Jy_^FK6h6%y0MRX54B-{7%TL(Y^!9 z(yGc(%Ah(0012m7!~(pdgTyPmPDGrNYP6FMfU-zKNs9oKK1qsB5D(XmTi7mi`;3eS zeb8uZ+@GSpY_k*XptPabvID`6PELF07AUv5SH{UgpUY_erg0E-%@cZ?%!3V`AQW`6 zwbetY58$_jAHsA~P6cy)JKpQ1II!eeIg0{4vzWw6Ri{ycL|q>gcM5kuzs_RiVaMpvFOm|$Gx0(C@E#VKh+h$0L9HfOXe zJP$sD-H<9RBH{wIPcWkkz&FqQT@Gg5couqPFG;VeNF!3h|24WGH07E(A!v%M$hpc@F@_7XUEk`|#9X(y6sU9g5s zHsVZNeFo_n*=qoaPHY)UX*+3Rri=UXaY7jG86>INYXI!6sa(J+5E25jOfdkDE=D6H8o54tuu0pOV(vH$1C|3y9NE?Lkq6oPbJME8C zWtjqbM>zsrpjNz`KK?E03yYCtLWNZTsx<8&O@n&y3x2E)0(~$Y-jnw|yL01W3lef_ zvO%N+QWsEQa~*6BfqAVEWRC$sA93N|Z}4kY#^>&k!4}n8AvgYwp9-~3&iZ=!d{Dz}zaX zkaPmA_i_oNby_jRob(H=ss>NrfZ{BvQlYFBHg6-h0a*&a;KO7HwesYq?4cDix*n6x zSLj;T=g`#PZ&g+AvKNZ=K?Ltr$Q8)afHZ^J=1>mcL|Talia`pD%8bnK;J|45l&Y$# zxtzqMfkH7Kz#^b76)0;(T_P~I3c>P7R~V}E%{SkChuP?DN9zaY3fZwcY@qHo|sitiakl?7q zHW<@YAmjCh#==G#eFniF6?z`vL$(qigSyV4Y%;hX9YN354si-N4ZYXuJl}AAkA6`c z@#RB18Zhs@D)oCYEL)(EUI)-WJ{5Ykuk4koB8SprOM*o@3PS7fo+VC%M(4YY3;t)$ zL#1SVWArlgM|_O_%FlSrNZlUk_lu8Dg}esJtjJ1VQ9>y>o8IWQS0p%ff7AthY_pJ*ZjJ0B&4nQBpJ(~&=LM2lsUnFXPj5z zUT9TS6=RI__K-MMpUrKS`rrbavx={o2F@4|G#1c5n-2@^fJXB%*UzCwA2gSJA=`7% zJ)x}}yz1&ZXpD~A;~1d|N?Rb00YPg4J^peqqkb#}y$(I7ANg0Pf*CJ=fs^z2Uwk14 z*zz_wUU&Uon{4M5Nar&qATf#gwDU>)Uj}aYEK=V8S=L7qV)aW=5&Go~9sGeDicd;!^mw5> z9t{Z*XQ1g*p>3`~^$+wZ$}NM4gYSYtx@S0r@?%3q#2b)K*3enzGyDY7aX}`UKn7={ zhz%HOS$) zHhFoj=Q_yI0FTa9`5907M23oJeY9l`9gT8KAC#2qqlgoV?D2AaFfz<-*0d^C(CSW%$o<{3qdjJ;=b5AYkALIP4 zVK=d1)UgMl$}sC&8;s|74ZDfY)QmZh91YWt+zRoyhTX)-|FXtQqw5KkVH`>(p}jVs z?T?Ba#LpVQ88_^%RtxXCf$ovpyxqZsUK`^f%TNp27T>Zm7Cwv=2)(S` zETwkJ8+nOAfcL{M^6Ep_J1#aTO&rz;1{AgOYlyz zEU7ttiN@}Y%f@a@k|S6Z{6#GHD(OFciO8rinIrJ|(`!Sl1)px(L;KB4$V*F_1plBx z!HXMifo?o*cs4XCxc1;T91(nUS^s}+rzrR>_%h?P9`Q{!A?Op-3bG^-0+%M*KePK$O2Pn(BZJ-m diff --git a/assets/image/3x/icon_storage_permission_tips.webp b/assets/image/3x/icon_storage_permission_tips.webp index 34da5deb8eaad9142c49906dcea181a238d6c892..c3fa529d0db8fbb560722babef96a7266eaa3806 100644 GIT binary patch literal 6828 zcmYjVRa6vUw;ejAhVE_{Qt6JNyFof7lo&vfZjh7^=^7g8l8{arx@$nXySe)R_pWsx zzWwyAbN1P1Kb*C-l@t^T$pHWZc^OT8O(8=}004mZ_fa4M!Vmz`s+wRud;kF9wCiQ< zpz!IXT^$v}lF?$G^xA!{{Y#tdhZD8RPbWA6RXC+?4afQi`t@yk2jTG5PoZooi1f$_ zS(yj?3EjeTLta%keDur!WWx>OWtaQZ3tawDy}ktv(2?<}YkC^yGn?kB`~7UQSTC_e z8&LrKcJIOvFH|7@q0BVq6Kk=jzk&D&rO)it{{VOHxwyHd~BJN152 ztS!85YCiarxwl@|ntiZjd#aAhD&DcwLHC?QgV;Q*6JfeRHbMiW_vd*3H%w^e@zQB3 zGaRCsqaA+(tY{H!Fa3U*<&ioHGR=J^(#h6k^0&~KGu}Au;8K|{NG+L2x5Acy;t1W; z;PN+!RQ6Z80+~EkP<+-@dH7JNLAfYXOv=v$oY7$_`XbZC&DmG%>(C0fKXrJmOy)XN z90;qwS=&nTj7GPju~xgxp+|aaWvu$;(`lc{sDn;qFVH_0Em|7AdOS9P@b>DJdwpn3 zgF!p)0!n>Q56a-`*`f~*H7EMxyEL3o<)pT4^)BxmA>HgW^C&zMtU|c{ zi4;8&Kr>v9`+*)^V!Ig$=3G8+bO6Y@NA@F4`og)XN zIYBdkl$srA-E?J?+MLR_2)ul(MOL9bI(3nr)%G5~$P>hTUrC-}_Msl3sK&#Ebn<@1 z()%s46_%8D-nl!Tta+gti;K`%As$^XwR=Blvm0C6QeqzGWEBga%EI}GD9INp*htzh zG9j`GZy5*7&BcrHeK>UKQ>hfGL5jp_A&Y9x8pmi&!HN_Ql@+`HMKRO<6^P@y{=J=) zl$nO!=e$COvFBP+#UUvR3NfzfDZC*x4J>Z~)QzKW9^*0o;BY&lam^qAM@Px3w0OFI zOW2fjddL@HDo4e+%pGf~5_^-z(p`nqr+g*8U$vbnRH}lR9ZiQ{gWkv2`Y8zJD{Hg_ z20kp0>FQvQVOd+_x%*;^2EPScmlfCsqsoqUf=lE_MyJv7uEW_%pX1Rz|VuCW%NL*mIxDL_|bhYvUc_}no@=@HLUNr8s$#%%1iEFK>cI-L!7BZE4?_#$volVv8cTUhI`RAT{gxAz$ z##irODqq(A7bJlPn{d4GP3-C6z|#___PtQ33VD&@ZES(Y$50(4ujn33K22t%?usC8 zxZ#`yd+zJbxFl^gevgk`9jCp5gdd?41{8nivw zIzUV}O0oOp>6|h&0IA6GCvFWG{grOGqXz~?VNieQY8@uZH~YCKw_GTNJ>CaO5FO&{$k!@{1Tv_J{VW)XHPT-#i&F^*_#%0K58&}0 z$fqZ$x<>;o6>7IaFX1Dua&A~uS&4s_gXe9OHw~P@_>3u8Mj2EI;D7}iZP!^-Y>ooH}IZ1#kV&?iZP5H z3>&(=)_kENh(k+8%fy%TBsq!Tr?eoK1UrDKC-NhNk>fakoxAydG)}MU6=-O1k zvI|XLOZsdTcP|39g}+N@=y2z4C|wK?cxbSdH6@A=k2Fb)hkD6H@``l)q%J>j=fSNM zUG@UVK>%(wZCzC9Z_1WmN>!&=2CL(!uBFjS!`gdRu}{r9HZHS9gJTay#FY>j+xif0 zMgklVlBun≶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 Us)^Vu1@>_Qf6MwhDFEPq0P$=W#{d8T literal 10840 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 diff --git a/assets/image/icon_storage_permission_tips.webp b/assets/image/icon_storage_permission_tips.webp index e513e773fe76aaebb5ec1f5abc56975ac33bee24..0c86cca2c7013c59f1e80bf341288f011c1cfe96 100644 GIT binary patch literal 3398 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 literal 2844 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 diff --git a/lib/generated/intl/messages_en.dart b/lib/generated/intl/messages_en.dart index 6e0ae61a..5370bcd5 100644 --- a/lib/generated/intl/messages_en.dart +++ b/lib/generated/intl/messages_en.dart @@ -642,7 +642,7 @@ class MessageLookup extends MessageLookupByLibrary { "weikaiqi" : MessageLookupByLibrary.simpleMessage("未开启"), "weilegeiningenghaodefuwu" : MessageLookupByLibrary.simpleMessage("为了给您提供更好的服务,以及享受更加精彩的信息内容,请您在使用期间,进行登录"), "weilejishishoudaohuodongxiaoxi" : MessageLookupByLibrary.simpleMessage("为了您可以及时收到我们的活动信息,请您开启消息通知权限"), - "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,请您开启相机使用权限"), + "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,扫码,请您开启相机使用权限"), "weilexiangnintuijianfujindemendianxinxi" : MessageLookupByLibrary.simpleMessage("为了向您推荐附近的门店信息,推荐您在使用期间让我们使用位置信息"), "weilexuanzhezhaopianhuancun" : MessageLookupByLibrary.simpleMessage("为了获得照片使用,缓存等功能,推荐您在使用期间打开存储权限"), "weiwancheng" : MessageLookupByLibrary.simpleMessage(" 未完成 "), diff --git a/lib/generated/intl/messages_zh_CN.dart b/lib/generated/intl/messages_zh_CN.dart index 71a00094..898bfe49 100644 --- a/lib/generated/intl/messages_zh_CN.dart +++ b/lib/generated/intl/messages_zh_CN.dart @@ -642,7 +642,7 @@ class MessageLookup extends MessageLookupByLibrary { "weikaiqi" : MessageLookupByLibrary.simpleMessage("未开启"), "weilegeiningenghaodefuwu" : MessageLookupByLibrary.simpleMessage("为了给您提供更好的服务,以及享受更加精彩的信息内容,请您在使用期间,进行登录"), "weilejishishoudaohuodongxiaoxi" : MessageLookupByLibrary.simpleMessage("为了您可以及时收到我们的活动信息,请您开启消息通知权限"), - "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,请您开启相机使用权限"), + "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,扫码,请您开启相机使用权限"), "weilexiangnintuijianfujindemendianxinxi" : MessageLookupByLibrary.simpleMessage("为了向您推荐附近的门店信息,推荐您在使用期间让我们使用位置信息"), "weilexuanzhezhaopianhuancun" : MessageLookupByLibrary.simpleMessage("为了获得照片使用,缓存等功能,推荐您在使用期间打开存储权限"), "weiwancheng" : MessageLookupByLibrary.simpleMessage(" 未完成 "), diff --git a/lib/generated/intl/messages_zh_Hans_CN.dart b/lib/generated/intl/messages_zh_Hans_CN.dart index 208dc7c2..b1b542ca 100644 --- a/lib/generated/intl/messages_zh_Hans_CN.dart +++ b/lib/generated/intl/messages_zh_Hans_CN.dart @@ -642,7 +642,7 @@ class MessageLookup extends MessageLookupByLibrary { "weikaiqi" : MessageLookupByLibrary.simpleMessage("未开启"), "weilegeiningenghaodefuwu" : MessageLookupByLibrary.simpleMessage("为了给您提供更好的服务,以及享受更加精彩的信息内容,请您在使用期间,进行登录"), "weilejishishoudaohuodongxiaoxi" : MessageLookupByLibrary.simpleMessage("为了您可以及时收到我们的活动信息,请您开启消息通知权限"), - "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,请您开启相机使用权限"), + "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,扫码,请您开启相机使用权限"), "weilexiangnintuijianfujindemendianxinxi" : MessageLookupByLibrary.simpleMessage("为了向您推荐附近的门店信息,推荐您在使用期间让我们使用位置信息"), "weilexuanzhezhaopianhuancun" : MessageLookupByLibrary.simpleMessage("为了获得照片使用,缓存等功能,推荐您在使用期间打开存储权限"), "weiwancheng" : MessageLookupByLibrary.simpleMessage(" 未完成 "), diff --git a/lib/generated/intl/messages_zh_Hant_CN.dart b/lib/generated/intl/messages_zh_Hant_CN.dart index 7f77e96b..72062448 100644 --- a/lib/generated/intl/messages_zh_Hant_CN.dart +++ b/lib/generated/intl/messages_zh_Hant_CN.dart @@ -636,7 +636,7 @@ class MessageLookup extends MessageLookupByLibrary { "weikaiqi" : MessageLookupByLibrary.simpleMessage("未開啓"), "weilegeiningenghaodefuwu" : MessageLookupByLibrary.simpleMessage("為了給您提供更好的服務,以及享受更加精彩的信息內容,請在使用使用期間登錄"), "weilejishishoudaohuodongxiaoxi" : MessageLookupByLibrary.simpleMessage("为了您可以及时收到我们的活动信息,请您开启消息通知权限"), - "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,请您开启相机使用权限"), + "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,扫码,请您开启相机使用权限"), "weilexiangnintuijianfujindemendianxinxi" : MessageLookupByLibrary.simpleMessage("為了向您推薦附近的門店信息,推薦您在使用期間讓我們使用位置信息"), "weilexuanzhezhaopianhuancun" : MessageLookupByLibrary.simpleMessage("为了获得照片使用,缓存等功能,推荐您在使用期间打开存储权限"), "weiwancheng" : MessageLookupByLibrary.simpleMessage(" 未完成 "), diff --git a/lib/generated/intl/messages_zh_TW.dart b/lib/generated/intl/messages_zh_TW.dart index 7aa43e49..97ac1375 100644 --- a/lib/generated/intl/messages_zh_TW.dart +++ b/lib/generated/intl/messages_zh_TW.dart @@ -639,7 +639,7 @@ class MessageLookup extends MessageLookupByLibrary { "weikaiqi" : MessageLookupByLibrary.simpleMessage("未開啓"), "weilegeiningenghaodefuwu" : MessageLookupByLibrary.simpleMessage("為了給您提供更好的服務,以及享受更加精彩的信息內容,請在使用使用期間登錄"), "weilejishishoudaohuodongxiaoxi" : MessageLookupByLibrary.simpleMessage("为了您可以及时收到我们的活动信息,请您开启消息通知权限"), - "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,请您开启相机使用权限"), + "weilekaipaizhaoxuanzhetouxiang" : MessageLookupByLibrary.simpleMessage("为了您可以在使用过程中更换头像,扫码,请您开启相机使用权限"), "weilexiangnintuijianfujindemendianxinxi" : MessageLookupByLibrary.simpleMessage("為了向您推薦附近的門店信息,推薦您在使用期間讓我們使用位置信息"), "weilexuanzhezhaopianhuancun" : MessageLookupByLibrary.simpleMessage("为了获得照片使用,缓存等功能,推荐您在使用期间打开存储权限"), "weiwancheng" : MessageLookupByLibrary.simpleMessage(" 未完成 "), diff --git a/lib/generated/l10n.dart b/lib/generated/l10n.dart index ee13d043..c1d96b18 100644 --- a/lib/generated/l10n.dart +++ b/lib/generated/l10n.dart @@ -3548,7 +3548,7 @@ class S { /// `为了您可以在使用过程中更换头像,请您开启相机使用权限` String get weilekaipaizhaoxuanzhetouxiang { return Intl.message( - '为了您可以在使用过程中更换头像,请您开启相机使用权限', + '为了您可以在使用过程中更换头像,扫码,请您开启相机使用权限', name: 'weilekaipaizhaoxuanzhetouxiang', desc: '', args: [], diff --git a/lib/mine/mine_view/mine_view.dart b/lib/mine/mine_view/mine_view.dart index 92f153ac..59dacba7 100644 --- a/lib/mine/mine_view/mine_view.dart +++ b/lib/mine/mine_view/mine_view.dart @@ -230,10 +230,79 @@ class _MineView extends State { ); } } else { - await Permission.camera.request(); + showScanTipsAlertDialog(context); } } + ///扫码权限说明 + showScanTipsAlertDialog(context) async { + //显示对话框 + showDialog( + context: context, + barrierDismissible: false, + barrierColor: null, + builder: (BuildContext context) { + return Column( + children: [ + Container( + width: double.infinity, + padding: EdgeInsets.all(15), + margin: EdgeInsets.all(15), + decoration: new BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(10), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding(padding:EdgeInsets.only(right: 10.w,), + child: Icon( + Icons.add_a_photo, + color: Colors.black, + size: 22, + )), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + children: [ + Text( + "相机权限使用说明", + style: TextStyle( + fontSize: 18.sp, + fontWeight: MyFontWeight.regular, + color: Colors.black, + ), + ), + SizedBox( + height: 3.h, + ), + Text( + "实现您扫码、拍摄等功能。", + style: TextStyle( + fontSize: 13.sp, + height: 1.2, + fontWeight: MyFontWeight.regular, + color: Colors.black, + ), + ), + ], + ), + ), + ], + ), + ) + ], + mainAxisSize: MainAxisSize.min, + ); + }, + ); + await Permission.camera.request(); + Navigator.of(context).pop(); + if(await Permission.camera.isGranted) + toScan(); + } + activityShowAlertDialog(String result) { //显示对话框 showDialog( diff --git a/lib/mine/user_info_page.dart b/lib/mine/user_info_page.dart index 9909161f..b28c7498 100644 --- a/lib/mine/user_info_page.dart +++ b/lib/mine/user_info_page.dart @@ -20,6 +20,8 @@ import 'package:permission_handler/permission_handler.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import '../view_widget/request_permission.dart'; + class UserInfoPage extends StatefulWidget { @override State createState() { @@ -391,22 +393,62 @@ class _UserInfoPage extends State { ///拍照 openCamera() async { - if (await Permission.camera.isGranted) { - Media medias = await ImagePickers.openCamera( - cameraMimeType: CameraMimeType.photo, - cropConfig: CropConfig( - enableCrop: true, - width: 200, - height: 200, - ), - compressSize: 500, - ); - if (medias == null) return; - filePath = medias.path; - fileUpload(); + if (await Permission.camera.isPermanentlyDenied) { + showCupertinoDialog( + context: context, + builder: (context) { + return RequestPermission( + "assets/image/icon_camera_permission_tips.webp", + S.of(context).ninxiangjiquanxianweikaiqi, + S.of(context).weilekaipaizhaoxuanzhetouxiang, + S.of(context).kaiqiquanxian, + (result) async { + if (result) { + await openAppSettings(); + } + }, + heightRatioWithWidth: 0.82, + ); + }); + }else if (await Permission.camera.isGranted) { + if (await Permission.storage.isPermanentlyDenied) { + showCupertinoDialog( + context: context, + builder: (context) { + return RequestPermission( + "assets/image/icon_storage_permission_tips.webp", + "您未开启存储权限,请点击开启", + "为了您可以在使用过程中访问您设备上的照片、媒体内容和文件,请您开启存储使用权限", + S.of(context).kaiqiquanxian, + (result) async { + if (result) { + await openAppSettings(); + } + }, + heightRatioWithWidth: 0.82, + ); + });}else if(await Permission.storage.isGranted){ + Media medias = await ImagePickers.openCamera( + cameraMimeType: CameraMimeType.photo, + cropConfig: CropConfig( + enableCrop: true, + width: 200, + height: 200, + ), + compressSize: 500, + ); + if (medias == null) return; + filePath = medias.path; + fileUpload(); + }else{ + showStorageTipsAlertDialog(context,1); + return false; + } } else { - await Permission.camera.request(); - openCamera(); + showCameraTipsAlertDialog(context); + return false; + // await Permission.camera.request(); + // openCamera(); } } @@ -414,7 +456,24 @@ class _UserInfoPage extends State { ///打开相册 openStorage() async { - if (await Permission.storage.isGranted) { + if (await Permission.storage.isPermanentlyDenied) { + showCupertinoDialog( + context: context, + builder: (context) { + return RequestPermission( + "assets/image/icon_storage_permission_tips.webp", + "您未开启存储权限,请点击开启", + "为了您可以在使用过程中访问您设备上的照片、媒体内容和文件,请您开启存储使用权限", + S.of(context).kaiqiquanxian, + (result) async { + if (result) { + await openAppSettings(); + } + }, + heightRatioWithWidth: 0.82, + ); + }); + }else if (await Permission.storage.isGranted) { List medias = await ImagePickers.pickerPaths( galleryMode: GalleryMode.image, selectCount: 1, @@ -435,8 +494,154 @@ class _UserInfoPage extends State { setState(() {}); fileUpload(); } else { - await Permission.storage.request(); - openStorage(); + showStorageTipsAlertDialog(context,0); + return false; + // await Permission.storage.request(); + // openStorage(); + } + } + + ///相册权限说明 + showStorageTipsAlertDialog(context,type) async { + //显示对话框 + showDialog( + context: context, + barrierDismissible: false, + barrierColor: null, + builder: (BuildContext context) { + return Column( + children: [ + Container( + width: double.infinity, + padding: EdgeInsets.all(15), + margin: EdgeInsets.all(15), + decoration: new BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(10), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding(padding:EdgeInsets.only(right: 10.w,), + child: Icon( + Icons.add_photo_alternate_outlined, + color: Colors.black, + size: 22, + )), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + children: [ + Text( + "存储权限使用说明", + style: TextStyle( + fontSize: 18.sp, + fontWeight: MyFontWeight.regular, + color: Colors.black, + ), + ), + SizedBox( + height: 3.h, + ), + Text( + "为了帮您实现分享照片、保存照片等功能。", + style: TextStyle( + fontSize: 13.sp, + height: 1.2, + fontWeight: MyFontWeight.regular, + color: Colors.black, + ), + ), + ], + ), + ), + ], + ), + ) + ], + mainAxisSize: MainAxisSize.min, + ); + }, + ); + await Permission.storage.request(); + Navigator.of(context).pop(); + if(await Permission.storage.isGranted){ + if(type == 1){ + openCamera(); + }else{ + openStorage(); + } + } + } + + ///拍照权限说明 + showCameraTipsAlertDialog(context) async { + //显示对话框 + showDialog( + context: context, + barrierDismissible: false, + barrierColor: null, + builder: (BuildContext context) { + return Column( + children: [ + Container( + width: double.infinity, + padding: EdgeInsets.all(15), + margin: EdgeInsets.all(15), + decoration: new BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.circular(10), + ), + child: Row( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding(padding:EdgeInsets.only(right: 10.w,), + child: Icon( + Icons.add_photo_alternate_outlined, + color: Colors.black, + size: 22, + )), + Expanded( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisSize: MainAxisSize.min, + children: [ + Text( + "相机权限使用说明", + style: TextStyle( + fontSize: 18.sp, + fontWeight: MyFontWeight.regular, + color: Colors.black, + ), + ), + SizedBox( + height: 3.h, + ), + Text( + "实现您扫码、拍摄等功能。", + style: TextStyle( + fontSize: 13.sp, + height: 1.2, + fontWeight: MyFontWeight.regular, + color: Colors.black, + ), + ), + ], + ), + ), + ], + ), + ) + ], + mainAxisSize: MainAxisSize.min, + ); + }, + ); + await Permission.camera.request(); + Navigator.of(context).pop(); + if(await Permission.camera.isGranted){ + openCamera(); } } diff --git a/lib/utils/location.dart b/lib/utils/location.dart index af53e6f0..4281f0df 100644 --- a/lib/utils/location.dart +++ b/lib/utils/location.dart @@ -31,7 +31,9 @@ class LocationInstance { context, Function(Position locationData) locationCallback) async { LocationPermission permissionStatus = await Geolocator.checkPermission(); if (permissionStatus == LocationPermission.denied) { - permissionStatus = await Geolocator.requestPermission(); + // permissionStatus = await Geolocator.requestPermission(); + showTipsAlertDialog(context); + return false; } if (permissionStatus == LocationPermission.denied) { showTipsAlertDialog(context); @@ -162,6 +164,7 @@ class LocationInstance { "为了向您推荐附近的门店信息,推荐您在使用期间让我们使用位置信息", style: TextStyle( fontSize: 13.sp, + height: 1.2, fontWeight: MyFontWeight.regular, color: Colors.black, ), @@ -177,7 +180,7 @@ class LocationInstance { ); }, ); - Geolocator.requestPermission(); + await Geolocator.requestPermission(); Navigator.of(context).pop(); } diff --git a/lib/view_widget/request_permission.dart b/lib/view_widget/request_permission.dart index e02beb4d..36fab958 100644 --- a/lib/view_widget/request_permission.dart +++ b/lib/view_widget/request_permission.dart @@ -74,6 +74,7 @@ class _RequestPermission extends State { widget.subText, style: TextStyle( fontSize: 12.sp, + height: 1.2, color: Color(0xFF727272), ), ),