小编Sha*_*T D的帖子

Flutter AWS:如何验证存储桶的IAM角色用户并获取hls视频文件的AWS S3对象并在视频播放器中播放?

如何通过区域、存储桶 ID、访问密钥和秘密密钥对 IAM 角色用户进行身份验证,并获取视频文件对象并在视频播放器中播放。实际上,我们已经在 AWS S3 中上传了视频文件,并向一名 IAM 角色用户授予了访问权限。

现在,在 flutter 应用程序中,我需要通过 accesskey、secretkey 对 IAM 用户进行身份验证,并获取视频对象并在视频播放器中播放,而无需在本地保存或下载。

我尝试使用插件,

flutter_aws_s3_client: ^0.5.0

const region = "<region>";
const bucketId = "<bucket id>";
final AwsS3Client s3client = AwsS3Client(
    region: region,
    host: "s3.$region.amazonaws.com",
    bucketId: bucketId,
    accessKey: "<accesskey>",
    secretKey: "<secretkey>");

//object video name 
final response = await s3client.getObject("example_test.m3u8");

Run Code Online (Sandbox Code Playgroud)

这里我得到的对象响应为 200,但是我如何传递并在视频播放器中播放这个视频文件?有什么办法吗?我尝试在expo播放器android video_player_plugin.dart中添加标题。但没有运气。

视频播放器插件

video_player: ^0.10.11+1

class _VideoAppState extends State<VideoApp> {
  VideoPlayerController _controller;

  @override
  void initState() {
    super.initState();
    _controller = VideoPlayerController.network('//need to pass the videoUrl of AWS S3')
      ..initialize().then((_) …
Run Code Online (Sandbox Code Playgroud)

android amazon-s3 dart flutter flutter-video-player

8
推荐指数
1
解决办法
826
查看次数

如何在 Kotlin 中手动为 long 分配字节?

我正在尝试做这样的事情Kotlin

val top : Long = 1000000_1000000_1000000_1000000_1000000_1000000_1000000
Run Code Online (Sandbox Code Playgroud)

Java它看起来像这样:

long TOP = 1000000_1000000_1000000_1000000_1000000_1000000_1000000L;
Run Code Online (Sandbox Code Playgroud)

Java版本运行良好,在 Kotlin 中出现错误:

The value is out of range
Run Code Online (Sandbox Code Playgroud)

有没有人知道如何做到这一点?提前致谢。

java kotlin

6
推荐指数
1
解决办法
51
查看次数

Crashlytics.logException 不适用于 android

致命异常显示在Firebase仪表板中。但非致命异常未显示在Firebase crashlytics和 中Firebase crash reporting。在非致命崩溃后,我重新启动了应用程序几次,但在Firebase dashboard. 依赖项是:-

implementation('com.crashlytics.sdk.android:crashlytics:2.9.1@aar') {
    transitive = true
}
implementation 'com.google.firebase:firebase-core:11.8.0'
implementation 'com.google.firebase:firebase-messaging:11.8.0'
Run Code Online (Sandbox Code Playgroud)

以下是非致命异常的代码。

try {
    throw new IndexOutOfBoundsException("Fake IndexOutOfBoundsException");
} catch (Exception e) {
    Crashlytics.logException(e);
}
Run Code Online (Sandbox Code Playgroud)

android firebase firebase-crash-reporting

5
推荐指数
1
解决办法
2142
查看次数

ObservableField 更新到 3.1.0 后返回 null

更新后Android Studio,以3.1.0kotlin版本1.2.31,我有这个问题Observables

someVm 值为空。

class ViewModel1(car: Car) : BaseObservable() {

    val someVm = ObservableField<ViewModel2>(ViewModel2(car))

    shipmentVm.get()!!
}

class ViewModel2(car: Car) : ItemViewModel() {

    val car= ObservableField(car)
}

open class ItemViewModel : BaseObservable() {

    val first = ObservableField(false)
    val last = ObservableField(false)
}
Run Code Online (Sandbox Code Playgroud)

非常感谢!

data-binding android observable kotlin

5
推荐指数
1
解决办法
820
查看次数

如何使用 Kotlin 迭代类组件

我面临这个问题,我已经做了一些搜索,但没有找到答案。

我想做什么?

我正在使用 Retrofit 从 API 获取一些数据,我可以获取数据,但我想在类中执行 ForEach 来查找我需要的属性。

    data class ChampionList(
            @SerializedName("version")
        val version : String,
        @SerializedName("data")
        val data : Data) <------ wanna do the foreach in this property  
Run Code Online (Sandbox Code Playgroud)

我想这样做,或者类似的事情:(这里我得到以下错误= for循环范围必须有一个'iterator()'方法)

      for(dataChampion in ChampionList.Data){
            //do something
    }
Run Code Online (Sandbox Code Playgroud)

当我搜索时,我发现了一些关于Kotlin反射的内容,但我不明白:(

我发现但不起作用的另一件事是使用这个:

 for(data in ChampionList::class.memberProperties){
   //access data here, but got an unresolved reference for member properties
}

classes:


    data class ChampionList(
        @SerializedName("version")
        val version : String,
        @SerializedName("data")
        val data : Data)



    data class Data (
        @SerializedName("Aatrox") val aatrox : Aatrox,
        @SerializedName("Ahri") val …
Run Code Online (Sandbox Code Playgroud)

java android kotlin

5
推荐指数
2
解决办法
4985
查看次数

检查设备是否连接到 WiFi 接入点或移动热点?

要求:- 仅当设备仅连接到实际 WiFi 接入点而不是移动热点或蜂窝数据时才需要运行一些网络调用。

我们需要检查当前连接的网络是否是移动热点。目前,如果连接到 WiFi 或蜂窝网络,我正在使用以下代码。

    Network activeNetwork = connectivityManager.getActiveNetwork();

    NetworkCapabilities networkCapabilities = mConnectivityManager.getNetworkCapabilities(activeNetwork);

    boolean isWiFi = networkCapabilities.hasTransport(NetworkCapablities.TRANSPORT_WIFI);
Run Code Online (Sandbox Code Playgroud)

为了确定 wifi 连接是否是移动热点,我尝试了一种解决方法,使用以下方法。

connectivityManager.isActiveNetworkMetered()
Run Code Online (Sandbox Code Playgroud)

随着活动连接计量检查,更新的条件如下

boolean isWiFiNotAMobileHotspot = networkCapablities.hasTransport(NetworkCapablities.TRANSPORT_WIFI) && connectivityManager.isActiveNetworkMetered();
Run Code Online (Sandbox Code Playgroud)

由于 isActiveNetworkMetered() 仅有助于确定我们是否连接了按流量计费的连接(具有每日/每月数据限制的限制。)

因此,对于大多数移动热点,它给出了预期的结果,但如果移动热点有无限数据计划,则 isActiveNetworkMetered() 返回 false。

因此,不幸的是,此解决方案并不是查找设备是否连接到移动热点的准确方法。

请帮助我找到解决方案,检查设备是否连接到移动热点。

android

5
推荐指数
1
解决办法
2398
查看次数

在实时布局检查器中手动选择活动 (Android Studio 4.0)

Android Studio 4.0我们必须在获得布局检查器之前选择活动之前。这有助于我们知道current活动名称。但在 Android Studio 4.0 中,自动将布局检查器与当前活动同步。我没有找到从当前堆栈中选择活动的任何手动方法。

如何在 Android Studio 4.0 实时布局检查器中选择如下图所示的活动?

基本上我需要知道当前活动名称和活动层次结构列表

在此处输入图片说明

android android-studio-4.0

5
推荐指数
1
解决办法
693
查看次数

Android 如何从特定图像设置动态背景颜色

我见过一些类似的应用程序,DataDex我想它们有像卡片视图和背景的动态颜色这样的东西,我们可以在这里看到:

在此输入图像描述

这种颜色也适用于细节视图:

在此输入图像描述

我认为这些颜色是从 IMAGE 本身生成的,但我不知道正在使用哪个库或 API。有什么提示吗?

android android-fragments android-studio android-cardview

5
推荐指数
1
解决办法
2842
查看次数

位置变化结束时的颤动地图

我正在使用 flutter_map 将地图添加到我的项目中。我能够使用它并使用它的选项。但我想要一些在 flutter_map 中找不到的东西。

我想听位置变化并获取用户停止触摸屏幕时的最后位置。就像 GestureDetector 小部件中的 onTapUp 或 onLongPressUp 一样。

flutter_map 中有 onPositionChanged 选项,但每次位置改变时都会调用它,这是很多。一旦用户触摸屏幕,onPositionChanged 就会被调用,直到用户停止触摸屏幕。我可以从中获取最后的位置,但我想在位置发生变化时调用 API 以获取附近汽车的列表。每次调用 onPositionChanged 时都调用 API 并不好。

所以我希望能够在用户完成位置更改时(当他/她停止触摸屏幕时)调用 API。

这是我的 flutter_map 代码:

     FlutterMap(
            key: Key('map'),
            mapController: main.mapController,

            options: MapOptions(
                center: LatLng(main.lat, main.long),
                zoom: 14,
                maxZoom: 18,
                minZoom: 10,
                onPositionChanged: (mapPosition, boolValue){
                  _lastposition = mapPosition.center;
                }),


            layers: [
              TileLayerOptions(
                errorImage: AssetImage('images/login_icon.png'),
                urlTemplate:
                    "https://maps.wikimedia.org/osm-intl/{z}/{x}/{y}.png",
                // subdomains: ['a', 'b', 'c'],
                // subdomains: ['', '1', '2', '3', '4']
              ),
              MarkerLayerOptions(
                markers: main.markersStart +
                    main.markersDestination +
                    main.driverMarkers,
              ),
            ], …
Run Code Online (Sandbox Code Playgroud)

android location flutter fluttermap

3
推荐指数
1
解决办法
4439
查看次数

在片段中隐藏底部导航视图

我想在某些片段中隐藏 bottomNavigationView。

我试过下面的代码,但它有闪烁的效果。(bottomNavigationView 在 nextFragment 变得可见之前隐藏。

    val navController = this.findNavController(R.id.nav_host_home)
    navController.addOnDestinationChangedListener { _, destination, _ ->
    when (destination.id) {
        R.id.searchArticlesFragment -> bnvMain.visibility = View.GONE
        R.id.articleFragment -> bnvMain.visibility = View.GONE
            else -> bnvMain.visibility = View.VISIBLE
        }
    }
Run Code Online (Sandbox Code Playgroud)

我也试过另一个代码。但它会调整片段的大小。并在目标片段中给出 OutOfMemoryException。

    supportFragmentManager.registerFragmentLifecycleCallbacks(object :
        FragmentManager.FragmentLifecycleCallbacks() {
        override fun onFragmentViewCreated(
            fm: FragmentManager,
            f: Fragment,
            v: View,
            savedInstanceState: Bundle?
        ) {
            when (f) {
                is SearchArticlesFragment -> bnvMain.visibility = View.GONE
                is ArticleDetailsFragment -> bnvMain.visibility = View.GONE
                else -> bnvMain.visibility = View.VISIBLE
            }
        }
    }, true)
Run Code Online (Sandbox Code Playgroud)

请帮助我如何以正确和最好的方式隐藏底部导航视图?这是我可以隐藏底部导航视图的唯一方法吗?youtube …

android android-fragments kotlin android-navigation android-bottomnav

3
推荐指数
1
解决办法
2705
查看次数