Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Sign in / Register
Toggle navigation
P
PhoneManager
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Yang
PhoneManager
Commits
267472f1
Commit
267472f1
authored
Apr 29, 2025
by
CZ1004
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
【新增】首页无相册权限
parent
59bbb91d
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
51 additions
and
68 deletions
+51
-68
AppDelegate.swift
PhoneManager/AppDelegate.swift
+7
-13
HomeCollectionViewHeader.swift
...er/Class/Session/Home/View/HomeCollectionViewHeader.swift
+36
-54
HomeView.swift
PhoneManager/Class/Session/Home/View/HomeView.swift
+5
-1
Singleton.swift
PhoneManager/Class/Tool/Singleton/Singleton.swift
+3
-0
No files found.
PhoneManager/AppDelegate.swift
View file @
267472f1
...
...
@@ -54,27 +54,21 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
/// 首次进来开始请求首页数据
func
findHomeData
(){
PhotoAndVideoMananger
.
getPrivacy
{[
weak
self
]
status
in
guard
let
self
else
{
return
}
if
let
photoStatus
=
status
as?
PrivacyType
{
switch
photoStatus
{
case
.
authorized
:
Singleton
.
shared
.
photoPermission
=
photoStatus
if
photoStatus
==
.
authorized
{
// 有授权加载数据
PhotoAndVideoMananger
.
mananger
.
setAssets
()
// 读取缓存数据
readCacheModel
()
break
case
.
denied
:
PhotoDataManager
.
manager
.
loadDataFromPhotos
{
model
in
}
Print
(
"未获取授权"
)
break
case
.
restricted
:
}
else
{
// 没有授权,更新删除缓存数据
PhotoDataManager
.
manager
.
loadDataFromPhotos
{
model
in
}
Print
(
"未获取授权"
)
break
case
.
notDetermined
:
PhotoDataManager
.
manager
.
loadDataFromPhotos
{
model
in
}
Print
(
"未获取授权"
)
break
}
}
}
...
...
PhoneManager/Class/Session/Home/View/HomeCollectionViewHeader.swift
View file @
267472f1
...
...
@@ -27,23 +27,10 @@ class HomeCollectionViewHeader : UICollectionReusableView {
let
bar
=
CustomProgressBar
()
return
bar
}()
// private lazy var logoImageView:UIImageView = {
// let imageView = UIImageView()
// imageView.image = UIImage(named: "img_file_home")
// imageView.backgroundColor = .clear
// return imageView
// }()
//
// private lazy var cleanNowButton : UIButton = {
// let button = UIButton(type: .custom)
// button.backgroundColor = .clear
// button.setImage(UIImage(named: "but_clean_home"), for: .normal)
// button.addTarget(self, action: #selector(clickCleanNowButton), for: .touchUpInside)
// return button
// }()
//
lazy
var
permissionView
:
PMPermissionView
=
{
let
view
=
Bundle
.
main
.
loadNibNamed
(
"PMPermissionView"
,
owner
:
nil
,
options
:
nil
)?
.
last
as!
PMPermissionView
return
view
}()
private
lazy
var
tipLabel
:
UILabel
=
{
let
label
=
UILabel
()
...
...
@@ -52,25 +39,8 @@ class HomeCollectionViewHeader : UICollectionReusableView {
}()
// private lazy var subTiplabel : UILabel = {
// let label = UILabel()
// label.textAlignment = .left
// label.text = "of storage to clean up"
// label.textColor = UIColor(red: 0.4, green: 0.4, blue: 0.4, alpha: 1)
// label.font = UIFont.systemFont(ofSize: 14, weight: .regular)
// return label
// }()
private
func
setupUI
()
{
// logo图片
// self.addSubview(self.logoImageView)
// self.logoImageView.snp.makeConstraints { make in
// make.top.equalToSuperview().offset(8)
// make.right.equalToSuperview()
// make.width.height.equalTo(182)
// }
// 文本
self
.
addSubview
(
self
.
tipLabel
)
self
.
tipLabel
.
snp
.
makeConstraints
{
make
in
...
...
@@ -86,28 +56,40 @@ class HomeCollectionViewHeader : UICollectionReusableView {
make
.
left
.
equalToSuperview
()
.
offset
(
8
)
}
// self.addSubview(self.subTiplabel)
// self.subTiplabel.snp.makeConstraints { make in
// make.top.equalTo(self.tipLabel.snp.bottom).offset(4)
// make.left.equalToSuperview()
// make.width.equalTo(168)
// make.height.equalTo(20)
// }
// 按钮
// self.addSubview(self.cleanNowButton)
// self.cleanNowButton.snp.makeConstraints { make in
// make.top.equalTo(self.subTiplabel.snp.bottom).offset(24)
// make.left.equalToSuperview()
// make.width.equalTo(159)
// make.height.equalTo(45)
// }
self
.
addSubview
(
self
.
permissionView
)
self
.
permissionView
.
snp
.
makeConstraints
{
make
in
make
.
top
.
equalTo
(
self
.
progressBar
.
snp
.
bottom
)
.
offset
(
-
92
)
make
.
left
.
equalToSuperview
()
.
offset
(
-
22
)
make
.
right
.
equalToSuperview
()
.
offset
(
22
)
make
.
height
.
equalTo
(
489
)
}
// @objc func clickCleanNowButton(){
// cleanNowButtonCallback()
// }
// 设置是否显示权限页
setNoPermissionHeaderPage
()
}
}
extension
HomeCollectionViewHeader
{
/// 设置头部权限UI是否显示
func
setNoPermissionHeaderPage
(){
DispatchQueue
.
main
.
async
{
if
Singleton
.
shared
.
photoPermission
==
.
authorized
{
self
.
permissionView
.
isHidden
=
true
}
else
{
self
.
setFileAndCount
(
count
:
0
,
fileSize
:
0
)
self
.
permissionView
.
isHidden
=
false
}
}
}
/// 设置头部视图文件数量和大小
/// - Parameters:
/// - count: 文件数量
/// - fileSize: 文件总大小
func
setFileAndCount
(
count
:
Int
,
fileSize
:
Double
)
{
let
countString
=
"
\(
count
)
"
...
...
@@ -149,7 +131,7 @@ class HomeCollectionViewHeader : UICollectionReusableView {
// MARK: - 进度条
class
CustomProgressBar
:
UIView
{
private
let
progressLayer
=
CALayer
()
private
let
usedColor
=
UIColor
(
hex
:
"#0082FF"
)
??
.
blue
...
...
PhoneManager/Class/Session/Home/View/HomeView.swift
View file @
267472f1
...
...
@@ -321,7 +321,11 @@ extension HomeView:WaterfallMutiSectionDelegate,UICollectionViewDataSource,UICol
// 设置头部视图的大小
func
referenceSizeForHeader
(
collectionView
collection
:
UICollectionView
,
layout
:
WaterfallMutiSectionFlowLayout
,
section
:
Int
)
->
CGSize
{
if
section
==
0
{
if
Singleton
.
shared
.
photoPermission
==
.
authorized
{
return
CGSize
(
width
:
self
.
collectionView
.
width
,
height
:
76
)
}
else
{
return
CGSize
(
width
:
self
.
collectionView
.
width
,
height
:
423
)
}
}
return
CGSize
.
zero
}
...
...
PhoneManager/Class/Tool/Singleton/Singleton.swift
View file @
267472f1
...
...
@@ -18,6 +18,9 @@ class Singleton {
var
maxDeleteCount
:
Int
=
25
var
photoPermission
:
PrivacyType
?
func
startCountdown
(
completion
:
@escaping
()
->
Void
)
{
if
AdvManager
.
shared
.
timer
!=
nil
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment