flutter 设置初始启动页

需求: 比如推送进入打开后自己进入的是某个内页, 而不是平时的首页面
参考文档:
https://gist.github.com/mravn-google/73d813cc0634b9c0639d38c82ef78ad2
https://github.com/flutter/flutter/issues/10884

java层代码:

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;

import io.flutter.app.FlutterActivity;
import io.flutter.plugin.common.MethodCall;
import io.flutter.plugin.common.MethodChannel;
import io.flutter.plugins.GeneratedPluginRegistrant;
import io.flutter.view.FlutterView;
import android.view.WindowManager.LayoutParams;


public class MainActivity extends FlutterActivity {
    private static final String CHANNEL = "samples.flutter.io/battery";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        GeneratedPluginRegistrant.registerWith(this);
    }

    @Override
    public FlutterView createFlutterView(Context context) {
        final FlutterView view = new FlutterView(this);
        view.setLayoutParams(new LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT));
        setContentView(view);
        final String route = "/testView";
        if (route != null) {
            view.setInitialRoute(route);
        }
        return view;
    }
}

dart层代码:


class MyApp extends StatelessWidget { @override Widget build(BuildContext context) { final routes = <String, WidgetBuilder>{ '/': (BuildContext ctx) => centeredText('Root'), '/its/a/long/and/winding/road': (BuildContext ctx) => centeredText('Long and winding road') }; return new MaterialApp( routes: routes, //home: new MyHomePage(), // Forces use of initial route from platform (otherwise it defaults to / // and platform's initial route is ignored). initialRoute: null, // Used when launched with unknown deep link. // May do programmatic parsing of routing path here. onGenerateRoute: (RouteSettings settings) { return new MaterialPageRoute( builder: (BuildContext ctx) { return centeredText('Not found:' + settings.name); }, ); } ); } Widget centeredText(String text) { return new Scaffold(body: new Center(child: new Text(text))); } }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值