Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
G
galaxy-iOS
Project
Project
Details
Activity
Releases
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
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
mobile-group
galaxy-iOS
Commits
f6b43bc5
Commit
f6b43bc5
authored
Oct 15, 2024
by
David黄金龙
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
H5 相关优化及几个方法支持
parent
26b7b111
Changes
9
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
150 additions
and
46 deletions
+150
-46
YHHKEventWebViewController.swift
...asses/Modules/Home(首页)/C/YHHKEventWebViewController.swift
+17
-5
YHHomeWebViewController.swift
.../Classes/Modules/Home(首页)/C/YHHomeWebViewController.swift
+12
-6
YHStatusAdvantageVC.swift
...laxy/Classes/Modules/Home(首页)/C/YHStatusAdvantageVC.swift
+19
-4
YHBannerModel.swift
galaxy/galaxy/Classes/Modules/Home(首页)/M/YHBannerModel.swift
+3
-0
YHHomeBannerView.swift
.../galaxy/Classes/Modules/Home(首页)/V/YHHomeBannerView.swift
+11
-1
YHH5WebViewVC.swift
.../Classes/Modules/InteractionH5(与H5交互)/YHH5WebViewVC.swift
+25
-12
YHJsApi.swift
...galaxy/Classes/Modules/InteractionH5(与H5交互)/YHJsApi.swift
+40
-0
YHWebViewViewController.swift
...Classes/Modules/Login(登录)/C/YHWebViewViewController.swift
+21
-7
YHMyViewController.swift
...alaxy/Classes/Modules/Mine(我的)/C/YHMyViewController.swift
+2
-11
No files found.
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHHKEventWebViewController.swift
View file @
f6b43bc5
...
...
@@ -39,11 +39,23 @@ class YHHKEventWebViewController: YHBaseViewController {
extension
YHHKEventWebViewController
{
func
loadData
()
{
guard
let
urlString
=
model
.
list
.
first
else
{
return
}
let
url
=
NSURL
(
string
:
urlString
)
// 创建请求
let
request
=
NSURLRequest
(
url
:
url
!
as
URL
)
// 加载请求
self
.
webview
.
load
(
request
as
URLRequest
)
// let url = NSURL(string: urlString)
// // 创建请求
// let request = NSURLRequest(url: url! as URL)
// // 加载请求
// self.webview.load(request as URLRequest)
if
let
url
=
URL
(
string
:
urlString
)
{
let
request
=
NSURLRequest
(
url
:
url
)
webview
.
load
(
request
as
URLRequest
)
}
else
{
let
tmpUrl
=
YHURLEncodeHelper
.
urlEncodedString
(
urlString
)
if
let
url
=
URL
(
string
:
tmpUrl
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
printLog
(
"url: 有问题"
)
}
}
if
model
.
tag
.
contains
(
"日历"
)
{
picUrl
=
urlString
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHHomeWebViewController.swift
View file @
f6b43bc5
...
...
@@ -113,12 +113,18 @@ class YHHomeWebViewController: YHBaseViewController, WKUIDelegate, WKNavigationD
api
.
delegate
=
self
webview
.
addJavascriptObject
(
api
,
namespace
:
nil
)
// 创建网址
let
url
=
NSURL
(
string
:
url
)
// 创建请求
let
request
=
NSURLRequest
(
url
:
url
!
as
URL
)
// 加载请求
webview
.
load
(
request
as
URLRequest
)
if
let
url
=
URL
(
string
:
url
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
let
tmpUrl
=
YHURLEncodeHelper
.
urlEncodedString
(
url
)
if
let
url
=
URL
(
string
:
tmpUrl
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
printLog
(
"url: 有问题"
)
}
}
// 添加wkwebview
self
.
view
.
addSubview
(
webview
)
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/C/YHStatusAdvantageVC.swift
View file @
f6b43bc5
...
...
@@ -102,11 +102,26 @@ private extension YHStatusAdvantageVC {
}
func
reloadWebUrl
()
{
let
url
=
NSURL
(
string
:
url
)
// 创建请求
let
request
=
NSURLRequest
(
url
:
url
!
as
URL
)
// let url = NSURL(string: url)
// // 创建请求
// let request = NSURLRequest(url: url! as URL)
// 加载请求
webview
.
load
(
request
as
URLRequest
)
// webview.load(request as URLRequest)
if
let
url
=
URL
(
string
:
url
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
let
tmpUrl
=
YHURLEncodeHelper
.
urlEncodedString
(
url
)
if
let
url
=
URL
(
string
:
tmpUrl
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
printLog
(
"url: 有问题"
)
}
}
}
func
setupUI
()
{
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/M/YHBannerModel.swift
View file @
f6b43bc5
...
...
@@ -26,6 +26,9 @@ class YHBannerModel: SmartCodable {
var
is_share_h5_flag
:
Bool
=
false
var
addtition_param
:
YHBannerAdditionModel
?
//是否为双11活动
var
is_double_11_flag
:
Bool
=
false
required
init
()
{
}
...
...
galaxy/galaxy/Classes/Modules/Home(首页)/V/YHHomeBannerView.swift
View file @
f6b43bc5
...
...
@@ -138,8 +138,15 @@ extension YHHomeBannerView: FSPagerViewDataSource, FSPagerViewDelegate {
//建明的本机IP for test hjl
//var url = "http://192.168.23.66:10300/superAppBridge.html#/schoolEvaluation"
//for test hjl Steve本机IP
//for test hjl 梁辉本机IP
// model.skip_url = "http://192.168.23.75:10300/superAppBridge.html#/double11-home"
//for test hjl 梁辉本机IP
// model.skip_url = "http://192.168.52.158:10300/superAppBridge.html#/double11-home"
//for test hjl 测试环境
// model.skip_url = "https://test-hkdiy-h5.galaxy-immi.com/superAppBridge.html#/double11-home"
var
url
=
""
if
YHLoginManager
.
shared
.
isLogin
()
{
let
token
=
YHLoginManager
.
shared
.
h5Token
...
...
@@ -155,6 +162,9 @@ extension YHHomeBannerView: FSPagerViewDataSource, FSPagerViewDelegate {
let
vc
=
YHH5WebViewVC
()
vc
.
url
=
url
vc
.
isFullScreenFlag
=
false
if
model
.
is_double_11_flag
{
vc
.
isHideNavigationBar
=
true
}
if
model
.
is_share_h5_flag
{
if
let
tModel
=
model
.
addtition_param
{
...
...
galaxy/galaxy/Classes/Modules/InteractionH5(与H5交互)/YHH5WebViewVC.swift
View file @
f6b43bc5
...
...
@@ -17,11 +17,14 @@ import Photos
class
YHH5WebViewVC
:
YHBaseViewController
,
WKUIDelegate
,
WKNavigationDelegate
{
lazy
var
webview
:
DWKWebView
=
{
let
webview
=
DWKWebView
(
frame
:
.
zero
)
let
config
=
WKWebViewConfiguration
()
config
.
applicationNameForUserAgent
=
"YinHeApp"
let
webview
=
DWKWebView
(
frame
:
.
zero
,
configuration
:
config
)
webview
.
scrollView
.
contentInsetAdjustmentBehavior
=
.
never
webview
.
navigationDelegate
=
self
webview
.
scrollView
.
delegate
=
self
webview
.
setDebugMode
(
false
)
return
webview
}()
...
...
@@ -73,7 +76,6 @@ class YHH5WebViewVC: YHBaseViewController, WKUIDelegate, WKNavigationDelegate {
//分享到H5的情况
var
shareH5Title
:
String
=
"20秒极速测分"
var
shareH5Describe
:
String
=
"您的朋友邀请您进行香港优才测评,来试试吧"
//外部传进来的分享链接
var
shareUrlFromOutside
:
String
?
...
...
@@ -197,13 +199,6 @@ private extension YHH5WebViewVC {
gk_navBarAlpha
=
1.0
}
if
isHideNavigationBar
{
gk_navBarAlpha
=
0.0
}
else
{
}
gk_navigationBar
.
isHidden
=
isHideNavigationBar
NotificationCenter
.
default
.
addObserver
(
self
,
selector
:
#selector(
updateNetWorkUI
)
,
name
:
.
reachabilityChanged
,
object
:
nil
)
view
.
backgroundColor
=
.
white
...
...
@@ -212,9 +207,19 @@ private extension YHH5WebViewVC {
api
.
delegate
=
self
webview
.
addJavascriptObject
(
api
,
namespace
:
nil
)
let
url
=
NSURL
(
string
:
url
)
let
request
=
NSURLRequest
(
url
:
url
!
as
URL
)
webview
.
load
(
request
as
URLRequest
)
if
let
url
=
URL
(
string
:
url
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
let
tmpUrl
=
YHURLEncodeHelper
.
urlEncodedString
(
url
)
if
let
url
=
URL
(
string
:
tmpUrl
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
printLog
(
"url: 有问题"
)
}
}
view
.
addSubview
(
webview
)
if
isFullScreenFlag
{
...
...
@@ -360,6 +365,14 @@ extension YHH5WebViewVC {
// MARK: - h5实现的接口
extension
YHH5WebViewVC
{
//H5调用 App的分享
func
shareH5Syn
(
title
:
String
,
desc
:
String
,
url
:
String
)
{
shareUrlFromOutside
=
url
shareH5Title
=
title
shareH5Describe
=
desc
share
()
}
//登录带token刷新
func
loginAndRefeshWithTokenSyn
(
_
tag
:
String
)
{
//判断登录状态
...
...
galaxy/galaxy/Classes/Modules/InteractionH5(与H5交互)/YHJsApi.swift
View file @
f6b43bc5
...
...
@@ -18,6 +18,46 @@ class YHJsApi: NSObject {
}
extension
YHJsApi
{
//17、 H5调用app的分享
@objc
func
shareH5Syn
(
_
dicData
:
String
)
{
DispatchQueue
.
main
.
async
{
if
let
data
=
dicData
.
data
(
using
:
.
utf8
)
{
do
{
if
let
jsonObject
=
try
JSONSerialization
.
jsonObject
(
with
:
data
,
options
:
[])
as?
[
String
:
Any
]
{
// 转换成功,jsonObject 是一个字典
print
(
"JSON字符串转换为字典成功:
\(
jsonObject
)
"
)
/*
{
ShareH5Title : "分享标题"
ShareH5Describe : "分享描述"
ShareH5Url : "分享链接"
}
*/
if
!
jsonObject
.
isEmpty
,
jsonObject
.
keys
.
count
==
3
{
let
shareH5Title
:
String
=
jsonObject
[
"ShareH5Title"
]
as?
String
??
""
let
shareH5Describe
:
String
=
jsonObject
[
"ShareH5Describe"
]
as?
String
??
""
let
shareH5Url
:
String
=
jsonObject
[
"ShareH5Url"
]
as?
String
??
""
if
!
shareH5Title
.
isEmpty
,
!
shareH5Describe
.
isEmpty
,
!
shareH5Url
.
isEmpty
{
if
let
delegate
=
self
.
delegate
as?
YHH5WebViewVC
{
delegate
.
shareH5Syn
(
title
:
shareH5Title
,
desc
:
shareH5Describe
,
url
:
shareH5Url
)
}
}
else
{
printLog
(
"参数不合法..."
)
}
}
else
{
printLog
(
"ddddd"
)
}
}
else
{
printLog
(
"JSON字符串不是有效的字典格式"
)
}
}
catch
{
printLog
(
"JSON解析错误:
\(
error
)
"
)
}
}
}
}
//16、招行聚合支付
@objc
func
cmbPaySyn
(
_
payUrl
:
String
)
{
...
...
galaxy/galaxy/Classes/Modules/Login(登录)/C/YHWebViewViewController.swift
View file @
f6b43bc5
...
...
@@ -7,7 +7,7 @@
//
import
UIKit
import
WebKit
@preconcurrency
import
WebKit
class
YHWebViewViewController
:
YHBaseViewController
,
WKUIDelegate
,
WKNavigationDelegate
{
...
...
@@ -29,12 +29,26 @@ class YHWebViewViewController: YHBaseViewController, WKUIDelegate, WKNavigationD
webview
=
WKWebView
(
frame
:
CGRect
(
x
:
0
,
y
:
statusHeight
+
navHeight
!
,
width
:
self
.
view
.
frame
.
width
,
height
:
self
.
view
.
frame
.
height
-
k_Height_NavigationtBarAndStatuBar
))
webview
.
navigationDelegate
=
self
// 创建网址
let
url
=
NSURL
(
string
:
url
)
// 创建请求
let
request
=
NSURLRequest
(
url
:
url
!
as
URL
)
// 加载请求
webview
.
load
(
request
as
URLRequest
)
// // 创建网址
// let url = NSURL(string: url)
// // 创建请求
// let request = NSURLRequest(url: url! as URL)
// // 加载请求
// webview.load(request as URLRequest)
if
let
url
=
URL
(
string
:
url
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
let
tmpUrl
=
YHURLEncodeHelper
.
urlEncodedString
(
url
)
if
let
url
=
URL
(
string
:
tmpUrl
)
{
let
request
=
URLRequest
(
url
:
url
)
webview
.
load
(
request
)
}
else
{
printLog
(
"url: 有问题"
)
}
}
// 添加wkwebview
self
.
view
.
addSubview
(
webview
)
...
...
galaxy/galaxy/Classes/Modules/Mine(我的)/C/YHMyViewController.swift
View file @
f6b43bc5
...
...
@@ -407,25 +407,16 @@ extension YHMyViewController : UITableViewDelegate, UITableViewDataSource {
case
.
aboutUs
:
let
vc
=
YHAboutGalaxyViewController
()
self
.
navigationController
?
.
pushViewController
(
vc
)
// let vc = YHH5WebViewVC()
// vc.url = "https://beta-sign.galaxy-immi.com/webPayConfirm?id=Qk9sbUlzenp0OGFOdVZ4ekphQXJGWnJ0ODdBS3gxdWNJcURrOHBLbm4xND0%3D"//正式环境
//// vc.url = "https://test-sign.galaxy-immi.com/webPayConfirm?id=dXlHS3RRQUV4QmZ2KzRwM0phRTVyMXdWUnVjUjJvRHdmQmNWVDV0UW1Zbz0="//测试环境
// vc.isFullScreenFlag = false
// vc.isSupportWebviewInterBackFlag = true
// UIViewController.current?.navigationController?.pushViewController(vc)//for test hjl
case
.
myOrder
:
//我的订单
if
let
token
=
YHLoginManager
.
shared
.
userModel
?
.
token
,
token
.
count
>
5
{
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/tohkList"
// url = "¶m=" + YHLoginManager.shared.h5Token
url
=
"https://www.baidu.com"
var
url
=
YHBaseUrlManager
.
shared
.
curH5URL
()
+
"superAppBridge.html#/order/my"
url
=
"?param="
+
YHLoginManager
.
shared
.
h5Token
printLog
(
"URL:
\(
url
)
"
)
let
vc
=
YHH5WebViewVC
()
vc
.
url
=
url
vc
.
isFullScreenFlag
=
false
vc
.
navTitle
=
"我的订单"
vc
.
navTitle
=
"需要替换URL"
//for test hjl
vc
.
isSupportWebviewInterBackFlag
=
true
UIViewController
.
current
?
.
navigationController
?
.
pushViewController
(
vc
)
}
...
...
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