小编xDs*_*xDs的帖子

Android - Wifi Direct / p2p 无法在 Android 8 上找到对等点

我开始创建一个 Android 应用程序 wifi Wifi Direct 功能。我做了一个同行发现,我喜欢在列表视图中看到同行。

我现在有一个应用程序,它尝试发现对等点并在列表中显示对等点。

但我面临的问题是这在我的 Android 5 设备上运行良好。在这里,我可以看到我的 Android 8 设备,但反过来却看不到。我在 Android 8 设备上看不到我的 Android 5 设备。

我按照这里的步骤操作:https : //developer.android.com/training/connect-devices-wireless/nsd

还发现了这篇文章:Android O 问题与 WiFi Peer Discovery说我需要在继续之前请求权限。

我的清单:

<uses-permission
    android:required="true"
    android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission
    android:required="true"
    android:name="android.permission.ACCESS_WIFI_STATE"/>
<uses-permission
    android:required="true"
    android:name="android.permission.CHANGE_WIFI_STATE"/>
<uses-permission
    android:required="true"
    android:name="android.permission.INTERNET"/>
Run Code Online (Sandbox Code Playgroud)

可能是什么问题呢?如果需要解决问题,也许我可以提供更多信息?

android wifi-direct nsd android-8.0-oreo

6
推荐指数
2
解决办法
3294
查看次数

Keycloak Angular 2 - 检查身份验证状态 Keycloak 对象

我正在我的 Angular 2 项目中实现 Keycloak 身份验证服务。我使用服务进行登录、注销等。

对用户进行身份验证并注销似乎可行。我现在正试图保护一些路线。我现在有一个有效的 AuthGuard。为了检查用户是否登录(在 AuthGuard 中),我在服务中有一个 isAuthenticated() 方法。这是服务:

import { Injectable } from '@angular/core';

declare let Keycloak: any;

@Injectable()
export class KeycloakService {
  private keycloak = new Keycloak('app/keycloak/keycloak.json');

  constructor() {
    this.keycloak.init({onload: 'check-sso'});
    console.log(this.keycloak);
  }

  public login() {
    this.keycloak.login();
  }

  public logout() {
    this.keycloak.logout();
  }

  public isAuthenticated() {
    return this.keycloak.authenticated;
  }
}
Run Code Online (Sandbox Code Playgroud)

流程:用户登录,用户尝试到达受保护的路由,AuthGuard 通过 isAuthenticated() 检查用户是否已登录。

注意:我不想为完整的 Angular 应用程序验证用户。仅适用于某些路线。

问题

用户登录后,用户将被重定向到 Angular 应用程序。在此之后, isAuthenticated() 方法仍然返回 false。原因如下:

我将 Keycloak 对象记录到控制台。我发现了一些我不明白的东西。

登录重定向后的 Keycloak 对象

登录重定向后的 Keycloak 对象


登录重定向后相同的 Keycloak 对象(但已扩展)

登录重定向后相同的 Keycloak 对象(但已扩展)

首先,经过身份验证的属性是假的。展开后的authenticated …

authentication keycloak keycloak-services angular

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

Keycloak javascript - 存储keycloak对象

目标

我在Angular2项目中实现Keycloak作为我的身份验证服务.为此,我使用javascript适配器.

问题

我在main.ts中初始化Keycloak对象.不直接需要登录.在实施过程中,我遇到了一个问题.发生页面刷新时,会创建一个新的Keycloak对象,该对象不保持原始状态(loginstatus,token等).我试图将Keycloak对象保存到localStorage.当我得到(在JSON字符串化和解析之后)对象时,该对象不被识别为Keycloak对象.

目前的解决方法

登录时,我将'authenticated'布尔值保存到localStorage.如果'authenticated'值为true,我会在main.ts中检查.然后在发生页面刷新时登录(在init之后).这导致双页刷新,因为用户被重定向到Keycloak并且是直接的

有没有办法存储Keycloak对象?或者是否可以在创建新对象时检查用户是否已登录?

javascript typescript keycloak angular

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

使用两个(复合)外键关系链接两个表

  • 版本:3.2.1

关系

表B中的两列与表A中的两列相关联.

  • 表A - > hasMany - >表B.
  • 表B - > belongsTo - >表A.

  • B.a_id = A.a_id

  • B.a_name = A.a_name

菜谱

没有在食谱中找到的例子. http://book.cakephp.org/3.0/en/orm/associations.html

我该如何指定这些关系?已经尝试过这个:

$this->hasMany('B', [
        'conditions' => ['A.a_id' => 'B.a_id', 'A.a_name' => 'B.a_name']
    ]);
Run Code Online (Sandbox Code Playgroud)

还有这个:

$this->hasMany('B1', [
        'foreignKey' => 'a_id',
        'joinType' => 'INNER',
        'className' => 'B'
    ]);

$this->hasMany('B2', [
        'foreignKey' => 'a_name',
        'joinType' => 'INNER',
        'className' => 'B'
    ]);
Run Code Online (Sandbox Code Playgroud)

cakephp associations cakephp-3.0

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

CakePHP 3下拉值

我有一个只显示表格行ID的下拉列表.我想在下拉列表中向该用户显示该表中的多个值.

我是否需要在控制器或类似的变量中添加一个带有列名的数组?

编辑:在功能添加我有这个变量

$addresses = $this->Users->Addresses->find('list', ['limit' => 200]);
Run Code Online (Sandbox Code Playgroud)

在视图中

echo $this->Form->input('address_id', ['options' => $addresses]);
Run Code Online (Sandbox Code Playgroud)

我只想在下拉列表中显示值address_id,city,street,zipcode.

cakephp cakephp-3.0

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