我开始创建一个 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)
可能是什么问题呢?如果需要解决问题,也许我可以提供更多信息?
我正在我的 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 对象(但已扩展)
首先,经过身份验证的属性是假的。展开后的authenticated …
目标
我在Angular2项目中实现Keycloak作为我的身份验证服务.为此,我使用javascript适配器.
问题
我在main.ts中初始化Keycloak对象.不直接需要登录.在实施过程中,我遇到了一个问题.发生页面刷新时,会创建一个新的Keycloak对象,该对象不保持原始状态(loginstatus,token等).我试图将Keycloak对象保存到localStorage.当我得到(在JSON字符串化和解析之后)对象时,该对象不被识别为Keycloak对象.
目前的解决方法
登录时,我将'authenticated'布尔值保存到localStorage.如果'authenticated'值为true,我会在main.ts中检查.然后在发生页面刷新时登录(在init之后).这导致双页刷新,因为用户被重定向到Keycloak并且是直接的
题
有没有办法存储Keycloak对象?或者是否可以在创建新对象时检查用户是否已登录?
关系
表B中的两列与表A中的两列相关联.
表B - > belongsTo - >表A.
B.a_id = A.a_id
菜谱
没有在食谱中找到的例子. 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) 我有一个只显示表格行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.
angular ×2
cakephp ×2
cakephp-3.0 ×2
keycloak ×2
android ×1
associations ×1
javascript ×1
nsd ×1
typescript ×1
wifi-direct ×1