小编Pab*_*rra的帖子

无法解析Manifest.permission.ACCESS_FINE_LOCATION

向我的清单文件添加权限时,以下xml可以正常工作.

 <permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Run Code Online (Sandbox Code Playgroud)

但是,这个xml不起作用.

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
Run Code Online (Sandbox Code Playgroud)

我应该使用哪一个?如果是第一个,为什么它不起作用?我该如何解决?

此外,我得到一个Android 6.0运行时权限相关的异常:

java.lang.SecurityException: "gps" location provider requires ACCESS_FINE_LOCATION permission.
Run Code Online (Sandbox Code Playgroud)

当我尝试将权限添加到String数组以检查权限时,Android Studio告诉我它无法Manifest.permission在以下代码中解析:

new String[]{Manifest.permission.ACCESS_FINE_LOCATION}
Run Code Online (Sandbox Code Playgroud)

为什么要这样做?我该如何解决?

permissions service gps android manifest

73
推荐指数
6
解决办法
7万
查看次数

用RxJava中的observable替换回调

我使用侦听器作为回调来观察Android的异步操作,但我认为用RxJava替换这个侦听器可能很棒,我是新的使用这个库,但我真的很喜欢它,我总是在Android项目中使用它.

这是我重构的代码:

public void getData( final OnResponseListener listener ){
   if(data!=null && !data.isEmpty()){
       listener.onSuccess();
   }
   else{
       listener.onError();
   }
}
Run Code Online (Sandbox Code Playgroud)

一个简单的回调:

public interface OnResponseListener {
   public void onSuccess();
   public void onError(); 
}
Run Code Online (Sandbox Code Playgroud)

而"观察者":

object.getData( new OnResponseListener() {
    @Override
    public void onSuccess() {
       Log.w(TAG," on success");
    }

    @Override
    public void onError() {
       Log.e(TAG," on error");
    }
});
Run Code Online (Sandbox Code Playgroud)

谢谢!

java rx-java

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

从native发送数据到flutter

我扩展了本机实现FirebaseMessagingService以等待本机中的推送通知android

当用户单击推送通知时,我需要启动我的 flutter 应用程序,所以..如何将数据发送到我的 flutter 应用程序?

flutter

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

以编程方式启动运动场景

我有一个这个layoutDescription的动画布局: app:layoutDescription="@xml/scene"

scene.xml

<MotionScene
    xmlns:motion="http://schemas.android.com/apk/res-auto">

    <Transition
        motion:constraintSetStart="@layout/view_home_card_start"
        motion:constraintSetEnd="@layout/view_home_card_end"
        motion:duration="1000">
        <OnSwipe
            motion:touchAnchorId="@+id/button"
            motion:touchAnchorSide="left"
            motion:dragDirection="dragLeft" />
    </Transition>

</MotionScene>
Run Code Online (Sandbox Code Playgroud)

我认为xml view_home_card_startview_home_card_end无关紧要.

如何以编程方式调用此动画?

android android-motionlayout

7
推荐指数
4
解决办法
2462
查看次数

JobScheduler可以执行前台服务吗?

可能吗?我需要启动前台服务,因为我在UI线程中使用它,

示例:每25分钟在我的应用中播放视频,即关闭.

android android-service

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

使用Scoped模型来维持扑动中的应用状态

我需要帮助为我的应用程序创建架构.我正在使用Flutter和scoped_model来维护状态.

这是一个具有登录功能的应用程序,它在应用程序的一个部分中显示新闻,并显示照片库等.我想将整个事物分成不同的模型.保存登录状态的LoginModel(如用户名,令牌,名称等).包含从API检索的新闻的NewsModel.GalleryModel用于保存照片的名称等.我不确定这是否是使用scoped_model维护状态的最佳实践.

例如,如果文本框依赖于LoginModel和NewsModel,该怎么办?我不确定,但我想从两个独立的模型中检索状态是不可能的.此外,我维护单独的模型以保持状态的主要原因是我不希望在我带来新闻时刷新应用程序的登录部分.我猜这就是我将整个状态放在一个模型中的方式.

flutter scoped-model

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

Flutter 错误:找不到正确的 ScopedModel

我正在尝试在我的 flutter 项目中创建一个范围模型,但我似乎无法弄清楚为什么会出现错误。这个作用域模型实现有什么问题?我有一个带有底部导航器的主页。在个人资料选项卡中,我在树深处的小部件中获取了我需要的关注者列表,因此我尝试使用scopedmodel。

型号代码是

class RelationshipsModel extends Model {
        List<Relationship> relations;
        RelationshipsModel(this.relations);
        void add(String name) {
            relations.add(new Relationship("", "", name, name));
            notifyListeners();
      }
    }
Run Code Online (Sandbox Code Playgroud)

创建作用域模型的配置文件页面如下。在这里,我从该州的 Firebase 获取关注者列表,并使用它来创建作用域模型的模型。

 class ProfileWidget extends StatefulWidget {
      @override
      _ProfileWidgetState createState() => _ProfileWidgetState();
    }

class _ProfileWidgetState extends State<ProfileWidget> {
@override
  initState() {
    super.initState();
    getCurrentUserDetails();
  }
getCurrentUserDetails() async {
_name = await CacheService.getCurrentUser();
var following = await service.getFollowingList(_name);
setState(() {
      this._following = following;
    });
  }

 @override
  Widget build(BuildContext context) {
    if (this._name == null) {
      return new …
Run Code Online (Sandbox Code Playgroud)

state dart flutter flutter-layout scoped-model

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

如果设备空闲,Android前台服务会很慢

我有一个Android前台服务,通知通知.在服务中我只是每10秒记录一次"Tick tack",但服务的优先级是每隔X秒在webview中导航,所以我使用新线程并在主线程中工作.

如果我将应用程序连接到usb,则日志似乎没问题,每10秒调用一次"tick tack",如果移动设备已解锁并且我在应用程序上记录日志,则相同.

但是,当我断开USB连接,或者我锁定设备时,这就是正在发生的事情:

2018-11-14 12:11:53.115 12596-12596/? I/Service: tick tack
2018-11-14 12:12:18.704 12596-12596/? I/Service: tick tack
2018-11-14 12:15:42.572 12596-12596/? I/Service: tick tack
2018-11-14 12:17:30.942 12596-12596/? I/Service: tick tack
2018-11-14 12:17:53.534 12596-12596/? I/Service: tick tack
2018-11-14 12:18:27.118 12596-12596/? I/Service: tick tack
2018-11-14 12:18:37.118 12596-12596/? I/Service: tick tack
2018-11-14 12:18:47.118 12596-12596/? I/Service: tick tack
2018-11-14 12:18:57.121 12596-12596/? I/Service: tick tack
2018-11-14 12:19:25.208 12596-12596/? I/Service: tick tack
2018-11-14 12:19:48.294 12596-12596/? I/Service: tick tack
Run Code Online (Sandbox Code Playgroud)

前台服务的限制是什么?即使设备闲置,我还可以进行硬前台工作吗?

android android-service

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

将 cupertino 小部件与材质支架一起使用

flutter/cupertino.dart是否可以在材质应用程序内部使用一些小部件?(使用Scaffold

我想Switch用库比蒂诺风格而不是材质来渲染小部件。

flutter

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

在免安装应用上启用推送通知

我尝试将 fcm 集成到我的即时应用程序中,但它不起作用。

我有 4 个清单文件:/app /base /module1 /module2

APP清单仅包含以下代码:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.stackoverflow.app"/>
Run Code Online (Sandbox Code Playgroud)

在基本清单中声明了我的应用程序和推送通知的配置。

知道出了什么问题吗?

android parse-platform android-instant-apps

2
推荐指数
1
解决办法
2058
查看次数

gradle 属性中的正确配置键

我正在尝试使用 android studio 将我的 apk 直接上传到 Playstore。

使用 ribot 样板,我可以看到他们将密钥放在 gradle.properties 中,如下所示:

ribotAppKeystoreReleaseLocation = keystore/release.keystore
ribotAppReleaseKeyAlias = UNDEFINED
ribotAppReleaseStorePassword = UNDEFINED
ribotAppReleaseKeyPassword = UNDEFINED
Run Code Online (Sandbox Code Playgroud)

并在构建gradle中:

    // You must set up an environment var before release signing
    // Run: export RIBOT_APP_KEY={password}
    release {
        storeFile file("${ribotAppKeystoreReleaseLocation}")
        keyAlias "${ribotAppReleaseKeyAlias}"
        storePassword "${ribotAppReleaseStorePassword}"
        keyPassword "${ribotAppReleaseKeyPassword}"
    }
Run Code Online (Sandbox Code Playgroud)

如果我在 gradle.properties 中编写我的密钥,例如:

ribotAppReleaseStorePassword = THISISMYKEY
Run Code Online (Sandbox Code Playgroud)

我将它上传到 git 时会遇到问题,因为所有团队都会看到这个键。那么,我可以在这里设置系统环境变量吗?或者我该怎么办?

查看完整样板

android gradle

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

Flutter范围模型-传递多个模型

我最近一直在使用Scoped Model,想知道是否有更好的方法将多个模型推到树上供儿童使用。

假设我有一个“ AppModel”,它是我需要的所有模型的组成部分

class AppModel extends Model
{
  ModelA a = new ModelA();
  ModelB b = new ModelB();
  ModelC c = new ModelC();
}
Run Code Online (Sandbox Code Playgroud)

我首先将此模型添加到 main

runApp(ScopedModel<AppModel>(
    model: AppModel(),
    child: MaterialApp(
      title: 'MyApp',
      home: Home(),
    )),);
Run Code Online (Sandbox Code Playgroud)

这将导致应用程序从树中可用的AppModel的主页开始。

主页是一系列按钮,每个按钮都指向另一个页面,这些页面可以使用AppModel中的多个模型

当按下按钮时,我想打开相关页面并传递AppModel所需的“子模型”

目前onPressed,我的按钮看起来像这样,在其中嵌套了范围模型

() => Navigator.push(context, 
      MaterialPageRoute(builder: (context) => ScopedModel<ModelA>
          model: ScopedModel.of<AppModel>(context).a,
          child: ScopedModel<ModelB>(
             model: ScopedModel.of<AppModel>(context).b,
             child: PageAB())))))),
Run Code Online (Sandbox Code Playgroud)

PageAB这些我可以通过以下方式访问相关模型ScopedModel.of()

ScopedModel.of<ModelA>(context).modelAGet
ScopedModel.of<ModelA>(context).modelAFunc()

ScopedModel.of<ModelB>(context).modelBGet
ScopedModel.of<ModelB>(context).modelBFunc()
Run Code Online (Sandbox Code Playgroud)

这是共享(多个)模型的正确方法吗?还是有一个更优雅的解决方案?

flutter scoped-model

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

在git依赖中选择分支

是否可以在中选择一些分支pubspec.yaml

  library_sdk:
    git:
      url: git://github.com/library/library.git
Run Code Online (Sandbox Code Playgroud)

我需要使用develop分支而不是master。

flutter flutter-dependencies

0
推荐指数
1
解决办法
235
查看次数