Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
clx-fluwx
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
openSourceLibrary
clx-fluwx
Commits
1af49519
提交
1af49519
authored
8月 23, 2018
作者:
JarvanMo
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
isWeChatInstalled on ios
上级
2f94fdde
显示空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
58 行增加
和
35 行删除
+58
-35
FluwxPlugin.h
ios/Classes/FluwxPlugin.h
+5
-0
FluwxPlugin.m
ios/Classes/FluwxPlugin.m
+6
-28
FluwxAuthHandler.m
ios/Classes/handler/FluwxAuthHandler.m
+3
-1
FluwxShareHandler.m
ios/Classes/handler/FluwxShareHandler.m
+3
-3
FluwxWXApiHandler.h
ios/Classes/handler/FluwxWXApiHandler.h
+7
-2
FluwxWXApiHandler.m
ios/Classes/handler/FluwxWXApiHandler.m
+34
-1
没有找到文件。
ios/Classes/FluwxPlugin.h
浏览文件 @
1af49519
#import <Flutter/Flutter.h>
#import "FluwxMethods.h"
#import "FluwxKeys.h"
#import "FluwxWXApiHandler.h"
@class
FluwxShareHandler
;
@class
FluwxResponseHandler
;
@class
FluwxAuthHandler
;
@class
FluwxWXApiHandler
;
extern
BOOL
isWeChatRegistered
;
...
...
@@ -14,6 +18,7 @@ extern BOOL isWeChatRegistered;
FluwxShareHandler
*
_fluwxShareHandler
;
@private
FluwxAuthHandler
*
_fluwxAuthHandler
;
@private
FluwxWXApiHandler
*
_fluwxWXApiHandler
;
}
@end
ios/Classes/FluwxPlugin.m
浏览文件 @
1af49519
#import <fluwx/FluwxPlugin.h>
#import "WXApi.h"
#import "StringUtil.h"
#import "../../../../../../ios/Classes/handler/FluwxShareHandler.h"
#import "ImageSchema.h"
#import "FluwxResponseHandler.h"
#import "FluwxAuthHandler.h"
#import "FluwxWXApiHandler.h"
@implementation
FluwxPlugin
...
...
@@ -30,6 +29,7 @@ BOOL isWeChatRegistered = NO;
if
(
self
)
{
_fluwxShareHandler
=
[[
FluwxShareHandler
alloc
]
initWithRegistrar
:
registrar
];
_fluwxAuthHandler
=
[[
FluwxAuthHandler
alloc
]
initWithRegistrar
:
registrar
];
_fluwxWXApiHandler
=
[[
FluwxWXApiHandler
alloc
]
init
];
}
return
self
;
...
...
@@ -39,12 +39,12 @@ BOOL isWeChatRegistered = NO;
if
([
registerApp
isEqualToString
:
call
.
method
])
{
[
self
initWeChatIfNeeded
:
call
result
:
result
];
[
_fluwxWXApiHandler
registerApp
:
call
result
:
result
];
return
;
}
if
([
unregisterApp
isEqualToString
:
call
.
method
])
{
[
self
initWeChatIfNeeded
:
call
result
:
result
];
if
([
@"isWeChatInstalled"
isEqualToString
:
call
.
method
])
{
[
_fluwxWXApiHandler
checkWeChatInstallation
:
call
result
:
result
];
return
;
}
...
...
@@ -65,28 +65,6 @@ BOOL isWeChatRegistered = NO;
}
-
(
void
)
initWeChatIfNeeded
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
{
if
(
!
call
.
arguments
[
fluwxKeyIOS
])
{
result
(@{
fluwxKeyPlatform
:
fluwxKeyIOS
,
fluwxKeyResult
:
@NO
});
return
;
}
if
(
isWeChatRegistered
)
{
result
(@{
fluwxKeyPlatform
:
fluwxKeyIOS
,
fluwxKeyResult
:
@YES
});
return
;
}
NSString
*
appId
=
call
.
arguments
[
@"appId"
];
if
([
StringUtil
isBlank
:
appId
])
{
result
([
FlutterError
errorWithCode
:
@"invalid app id"
message
:
@"are you sure your app id is correct ? "
details
:
appId
]);
return
;
}
isWeChatRegistered
=
[
WXApi
registerApp
:
appId
];
result
(@{
fluwxKeyPlatform
:
fluwxKeyIOS
,
fluwxKeyResult
:
@
(
isWeChatRegistered
)});
}
-
(
void
)
unregisterApp
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
{
...
...
ios/Classes/handler/FluwxAuthHandler.m
浏览文件 @
1af49519
...
...
@@ -17,10 +17,11 @@
}
-
(
void
)
handleAuth
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
{
NSString
*
openId
=
call
.
arguments
[
@"openId"
];
[
WXApiRequestHandler
sendAuthRequestScope
:
call
.
arguments
[
@"scope"
]
State
:
call
.
arguments
[
@"state"
]
OpenID:
call
.
arguments
[
@"openId"
]
OpenID:
(
openId
==
(
id
)
[
NSNull
null
])
?
nil
:
openId
InViewController:
nil
];
}
@end
\ No newline at end of file
ios/Classes/handler/FluwxShareHandler.m
浏览文件 @
1af49519
...
...
@@ -352,10 +352,10 @@ NSObject <FlutterPluginRegistrar> *_registrar;
-
(
NSArray
*
)
formatAssets
:(
NSString
*
)
originPath
{
NSString
*
path
=
nil
;
NSString
*
packageName
=
@""
;
int
from
=
[
SCHEMA_ASSETS
length
];
int
to
=
[
originPath
length
];
NSInteger
from
=
[
SCHEMA_ASSETS
length
];
NSInteger
to
=
[
originPath
length
];
NSString
*
pathWithoutSchema
=
[
originPath
substringFromIndex
:
from
toIndex
:
to
];
int
indexOfPackage
=
[
pathWithoutSchema
lastIndexOfString
:
fluwxKeyPackage
];
NSInteger
indexOfPackage
=
[
pathWithoutSchema
lastIndexOfString
:
fluwxKeyPackage
];
if
(
indexOfPackage
!=
JavaNotFound
)
{
path
=
[
pathWithoutSchema
substringFromIndex
:
0
toIndex
:
indexOfPackage
];
...
...
ios/Classes/handler/FluwxWXApiHandler.h
浏览文件 @
1af49519
...
...
@@ -3,6 +3,11 @@
//
#import <Foundation/Foundation.h>
#import <Flutter/Flutter.h>
#import "FluwxKeys.h"
@interface
FluwxWXApiHandler
:
NSObject
@end
\ No newline at end of file
@interface
FluwxWXApiHandler
:
NSObject
-
(
void
)
registerApp
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
;
-
(
void
)
checkWeChatInstallation
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
;
@end
\ No newline at end of file
ios/Classes/handler/FluwxWXApiHandler.m
浏览文件 @
1af49519
...
...
@@ -2,10 +2,42 @@
// Created by mo on 2018/8/23.
//
#import <WechatOpenSDK/WXApi.h>
#import "FluwxWXApiHandler.h"
#import "StringUtil.h"
#import "FluwxPlugin.h"
#import "CallResults.h"
@implementation
FluwxWXApiHandler
{
@implementation
FluwxWXApiHandler
-
(
void
)
registerApp
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
{
if
(
!
call
.
arguments
[
fluwxKeyIOS
])
{
result
(@{
fluwxKeyPlatform
:
fluwxKeyIOS
,
fluwxKeyResult
:
@NO
});
return
;
}
if
(
isWeChatRegistered
)
{
result
(@{
fluwxKeyPlatform
:
fluwxKeyIOS
,
fluwxKeyResult
:
@YES
});
return
;
}
NSString
*
appId
=
call
.
arguments
[
@"appId"
];
if
([
StringUtil
isBlank
:
appId
])
{
result
([
FlutterError
errorWithCode
:
@"invalid app id"
message
:
@"are you sure your app id is correct ? "
details
:
appId
]);
return
;
}
isWeChatRegistered
=
[
WXApi
registerApp
:
appId
];
result
(@{
fluwxKeyPlatform
:
fluwxKeyIOS
,
fluwxKeyResult
:
@
(
isWeChatRegistered
)});
}
-
(
void
)
checkWeChatInstallation
:(
FlutterMethodCall
*
)
call
result
:(
FlutterResult
)
result
{
if
(
!
isWeChatRegistered
)
{
result
([
FlutterError
errorWithCode
:
resultErrorNeedWeChat
message
:
@"please config wxapi first"
details
:
nil
]);
return
;
}
else
{
result
(
@
([
WXApi
isWXAppInstalled
]));
}
}
@end
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论