Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
liujiuri
engine
提交
855e2391
E
engine
项目概览
liujiuri
/
engine
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
E
engine
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
855e2391
编写于
7月 20, 2016
作者:
J
John McCutchan
提交者:
GitHub
7月 20, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add intent for running from a script file (#2807)
上级
0df124f9
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
33 addition
and
10 deletion
+33
-10
sky/shell/platform/android/io/flutter/view/FlutterView.java
sky/shell/platform/android/io/flutter/view/FlutterView.java
+22
-7
sky/shell/platform/android/org/domokit/sky/shell/SkyActivity.java
...l/platform/android/org/domokit/sky/shell/SkyActivity.java
+11
-3
未找到文件。
sky/shell/platform/android/io/flutter/view/FlutterView.java
浏览文件 @
855e2391
...
...
@@ -407,7 +407,7 @@ public class FlutterView extends SurfaceView
mNativePlatformView
=
nativeAttach
(
engine
.
second
.
passHandle
().
releaseNativeHandle
());
}
p
ublic
void
runFromBundle
(
String
bundlePath
,
String
snapshotPath
)
{
p
rivate
void
preRun
(
)
{
if
(
mPlatformServiceProviderBinding
!=
null
)
{
mPlatformServiceProviderBinding
.
unbind
().
close
();
mPlatformServiceProvider
.
unbindServices
();
...
...
@@ -443,6 +443,20 @@ public class FlutterView extends SurfaceView
mSkyEngine
.
setServices
(
services
);
resetAccessibilityTree
();
}
private
void
postRun
()
{
Core
core
=
CoreImpl
.
getInstance
();
// Connect to the ApplicationMessages service exported by the Flutter framework
Pair
<
ApplicationMessages
.
Proxy
,
InterfaceRequest
<
ApplicationMessages
>>
appMessages
=
ApplicationMessages
.
MANAGER
.
getInterfaceRequest
(
core
);
mDartServiceProvider
.
connectToService
(
ApplicationMessages
.
MANAGER
.
getName
(),
appMessages
.
second
.
passHandle
());
mFlutterAppMessages
=
appMessages
.
first
;
}
public
void
runFromBundle
(
String
bundlePath
,
String
snapshotPath
)
{
preRun
();
if
(
FlutterMain
.
isRunningPrecompiledCode
())
{
mSkyEngine
.
runFromPrecompiledSnapshot
(
bundlePath
);
...
...
@@ -455,12 +469,13 @@ public class FlutterView extends SurfaceView
}
}
// Connect to the ApplicationMessages service exported by the Flutter framework
Pair
<
ApplicationMessages
.
Proxy
,
InterfaceRequest
<
ApplicationMessages
>>
appMessages
=
ApplicationMessages
.
MANAGER
.
getInterfaceRequest
(
core
);
mDartServiceProvider
.
connectToService
(
ApplicationMessages
.
MANAGER
.
getName
(),
appMessages
.
second
.
passHandle
());
mFlutterAppMessages
=
appMessages
.
first
;
postRun
();
}
public
void
runFromFile
(
String
main
,
String
packageRoot
)
{
preRun
();
mSkyEngine
.
runFromFile
(
main
,
packageRoot
,
""
);
postRun
();
}
private
static
native
long
nativeAttach
(
int
inputObserverHandle
);
...
...
sky/shell/platform/android/org/domokit/sky/shell/SkyActivity.java
浏览文件 @
855e2391
...
...
@@ -135,11 +135,19 @@ public class SkyActivity extends Activity {
public
boolean
loadIntent
(
Intent
intent
)
{
String
action
=
intent
.
getAction
();
if
(
Intent
.
ACTION_RUN
.
equals
(
action
))
{
mView
.
runFromBundle
(
intent
.
getDataString
(),
intent
.
getStringExtra
(
"snapshot"
)
);
String
file
=
intent
.
getStringExtra
(
"file"
);
String
packageRoot
=
intent
.
getStringExtra
(
"packages"
);
String
route
=
intent
.
getStringExtra
(
"route"
);
// TODO(johnmccutchan): Remove the need for the runFromFile
// intent by launching an empty application at startup and
// reloading from within that.
if
((
file
!=
null
)
&&
(
packageRoot
!=
null
))
{
mView
.
runFromFile
(
file
,
packageRoot
);
}
else
{
mView
.
runFromBundle
(
intent
.
getDataString
(),
intent
.
getStringExtra
(
"snapshot"
));
}
if
(
route
!=
null
)
mView
.
pushRoute
(
route
);
return
true
;
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录