首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在颤振中获取设备用户代理信息

如何在颤振中获取设备用户代理信息
EN

Stack Overflow用户
提问于 2018-10-29 05:08:52
回答 4查看 13.6K关注 0票数 4

我正在构建一个颤振应用程序,它需要发送用户代理信息和http请求。我使用http dart软件包发送请求。如何获得用户代理字符串在颤振和使用它与http包?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-12-26 06:36:28

我是通过调用本地方法来做到这一点的。首先,您必须在android主活动中添加方法通道。

代码语言:javascript
运行
复制
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    GeneratedPluginRegistrant.registerWith(this);

    new MethodChannel(getFlutterView(), CHANNEL).setMethodCallHandler(
            new MethodChannel.MethodCallHandler() {
                @Override
                public void onMethodCall(MethodCall call, MethodChannel.Result result) {
                    if (call.method.equals("getUserAgent")) {
                        result.success(System.getProperty("http.agent"));
                    } else {
                        result.notImplemented();
                    }
                }
            });
}

然后,可以调用getUserAgent()方法,如下所示

代码语言:javascript
运行
复制
Future<String> _getUserAgent() async {
  try {
    return await platform.invokeMethod('getUserAgent');
  } catch (e) {
    return 'Unknown';
  }
}
票数 4
EN

Stack Overflow用户

发布于 2020-01-22 06:30:33

您可以使用flutter_user_agent库:代理,以跨平台的方式获得它。

代码语言:javascript
运行
复制
import 'package:flutter_user_agent/flutter_user_agent.dart';

...

    String ua = await FlutterUserAgent.getPropertyAsync('userAgent');
票数 2
EN

Stack Overflow用户

发布于 2021-02-09 19:59:27

这是通过使用flutter_user_agent库:代理来实现的,如前所述

代码语言:javascript
运行
复制
String _userAgent = await FlutterUserAgent.getPropertyAsync('userAgent');

    final _response = await http.get(_url, headers: {
      'Content-Type': 'application/json',
      'Accept-Charset': 'utf-8',
      'User-Agent': '${_userAgent.toLowerCase()}',
    });
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53039049

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档