小编ucM*_*dia的帖子

CoreBluetooth - 背景模式下的iPhone广告

我正在开发iPhone和Mac OS X应用程序,它允许您通过邻近区锁定和解锁Mac.意味着如果信号强度低于确定的阈值或连接丢失,则应锁定mac.

我正在为BTLE使用Apples CoreBluetooth框架,使用iPhone作为外设,Mac作为中心.到现在为止还挺好.它也很好用但是当我将应用程序发送到iPhone的背景时,广告似乎发生了变化.iPhone仍在广告,但没有服务配置文件和特性,我在应用程序中使用.虽然当iPhone仍然在Mac的范围内时这不是问题,因为它仍然连接并且中央没有使用这些特性,所以在将iPhone移出范围后会出现问题.正如预期的那样,Mac锁定并开始发现重新连接iPhone并解锁如果成功.

但在此发现中,我使用指定的服务配置文件和特性来仅运行运行我的应用程序的设备并识别用于解锁的设备.

我通过发现没有服务配置文件并通过其UUID识别正确的设备尝试了一种解决方法,当我开始使用此iPhone进行锁定和解锁时,我保存了该UUID.这种解决方法也适用于小范围,因为当我关闭iPhone上的蓝牙并再次打开它时,它会获得另一个UUID.这是我可以忍受的约束,但它也会在几个小时后更改UUID然后解锁不起作用.

也许有人已经在这样的应用程序上工作并知道如何解决这样的问题?或者你知道我可以用来识别设备的静态值吗?

iphone macos ios core-bluetooth

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

C# 将任务线程置于前台

我正在使用 Task 通过不同的线程创建和执行一些操作,一旦操作完成,我也会回调被调用。

 System.Threading.Tasks.Task.Factory.StartNew(() =>
                   this._httpService.CreateRecord(new Uri(Configuration.Current.CreateRecordUrl), httpObj)).ContinueWith(
                   (response) =>
                   {
                       if (!response.IsFaulted)
                       {
                           if (httpObj.CallBack != null)
                           {
                               httpObj.CallBack(response.Result);
                           }
                       }
                       else {
                           this._logger.Error("There was some error which causes the task to fail");


                       }
                   });
Run Code Online (Sandbox Code Playgroud)

我的控制台应用程序的主线程不等待任务线程完成,因为它是后台线程。如何使任务线程成为前台线程

谢谢

c# multithreading task threadpool task-parallel-library

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

Cython错误:未声明的名称未内置:数组

我正在Sage Cell Server中编译此Cython代码,但出现以下错误。

undeclared name not builtin: array
Run Code Online (Sandbox Code Playgroud)

它在Sage Notebook中显示相同的错误。我认为它不能识别numpy,array但这很奇怪,因为我已经导入了numpy。

 cython('''
  cimport numpy as np
  ctypedef np.int DTYPE
  def computeDetCy(np.ndarray[DTYPE, ndim=2] matrix):      
      return determ(matrix,len(matrix))

cdef inline int determ(np.ndarray[DTYPE, ndim=2] matrix, int n):
cdef int det = 0
cdef int p=0
cdef int h
cdef int k
cdef int i=0
cdef int j=0
cdef np.ndarray[DTYPE, ndim=2] temp=np.zeros(4,4)
if n == 1:
    return matrix[0][0]
elif  n == 2:
    return matrix[0][0]*matrix[1][1] - matrix[0][1]*matrix[1][0]
else:
    for p in range(0, n): …
Run Code Online (Sandbox Code Playgroud)

numpy cython sage

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

在具有指纹扫描仪的华为Android设备上,createConfirmDeviceCredentialIntent()不允许指纹解锁

在具有指纹扫描仪(例如P9)的华为设备上使用KeyguardManager.createConfirmDeviceCredentialIntent()时,该屏幕仅适用于PIN /密码,但不允许使用指纹扫描仪进行解锁。在大多数其他有效的品牌上。这是一个已知的问题?我找不到任何堆栈溢出条目。华为知道这个问题吗?

我知道我可以使用Fingerprint API,但是此方法已从Android 5.0开始运行,并且不仅限于指纹。

https://developer.android.com/reference/android/app/KeyguardManager.html#createConfirmDeviceCredentialIntent(java.lang.CharSequence,java.lang.CharSequence

android keyguardlock android-fingerprint-api huawei

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

Keras:以数组作为输入进行训练

我对机器学习非常陌生,最近我开始学习如何使用Keras库在Python上实现基本的神经网络。

我从一个基本示例开始(训练网络,以便可以预测值y = f(x)= x)。

model = Sequential()
model.add(Dense(10, input_dim=1, activation='relu'))
model.add(Dense(10, activation='relu'))
model.add(Dense(10, activation='relu'))
model.add(Dense(1))
model.compile(loss='mse', optimizer='adam')
data = np.array([x for x in range(0,1000)])

for i in range(0, 1000):
   model.fit([np.array([data[i]]), np.array([data[i]]), nb_epoch=1, batch_size=1, verbose=0)
Run Code Online (Sandbox Code Playgroud)

我现在想应用类似的算法来训练网络,因此从整数列表L中,它将返回函数f的三个值的列表(基本上是:[f(L,0),f(L,1) ,f(L,2)])。因此,这次的输入是5个整数的数组,而所需的返回输出是3个浮点数的列表。

但是,我没有设法在for循环中正确编码fit方法,但收到一条错误消息:“预期看到1个数组,但得到以下2个数组的列表:...”。我尝试使用Dense构造函数的一些参数(input_dim,input_shape,input_size),但我似乎仍然无法使其工作...

因此,基本上,没有人知道如何正确实现以数组作为输入并返回不同长度的数组的网络吗?

非常感谢您的帮助和支持,

-smgr

python machine-learning neural-network keras

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

在__init__之外初始化实例变量时会发生什么

在python中初始化一个实例变量(例如self.my_var)时,你应该在你的类__init__函数中执行它,以便为每个实例的这个变量正确保留内存(< - 我的错误,见下文).如果要定义类级变量,可以在函数外部进行,而不使用self前缀.

当你比实例化一个函数内部变量等,会发生什么__init__self前缀?它的行为就像一个普通的实例变量,有没有令人信服的理由不这样做?除了隐藏代码逻辑的危险之外,这已经足够了,但是我想知道如果你这样做,你可能会在内存或其他隐藏的问题上运行吗?

我无法找到在某处讨论的内容.

更新 抱歉

我误解了一些答案,包括第一个和第三个Python __init__和self他们做了什么?(寻找其他人)并认为这__init__是一种特殊类型的功能,认为它以某种方式具有内存分配功能(!?).错误的问题.

python software-design

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

如何在 Angular 中将 mat-list-item 包装在 mat-button 中

我有一个列表,我希望列表中的每个元素都可以单击,并具有像垫按钮组件一样的连锁反应。

我试过这个:

<mat-list role="list" *ngFor="let userS of Projet?.backlog.userStory; let i=index">
    <button mat-button>
        <mat-list-item role="listitem">User Story #{{i}} : {{userS.userStory}} </mat-list-item>
    </button>
</mat-list>
Run Code Online (Sandbox Code Playgroud)

但我认为工作元素不可点击。

javascript angular-material angular-material2 angular

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

如何使用aapt2构建可运行的apk?

我有一个简单的android项目。此命令编译资源并构建不带 dex 的 apk:

aapt2 compile project/res/values/strings.xml project/res/layout/activity_main.xml -o project/compiled_res

aapt2 link -o project/apk/unsigned_app.apk -I sdk/platforms/android-28/android.jar --manifest project/src/AndroidManifest.xml -R project/compiled_res/*.flat --java project/src --auto-add-overlay
Run Code Online (Sandbox Code Playgroud)

引用自文档

但是,生成的 APK 不包含 DEX 字节码并且未签名
...
您可以使用其他命令行工具,例如 d8 将 Java 字节码编译为 DEX 字节码,并使用 apksigner 对 APK 进行签名。

好的。我可以:

d8 project/compiled_classes/com/illuzor/buildtest/*.class --output project/dex
Run Code Online (Sandbox Code Playgroud)

但是如何将这个dex打包成apk呢?aapt2 无法识别classes.dex:

在此输入图像描述

我可以通过压缩将classes.dex 添加到我的apk 中:

zip -uj project/apk/unsigned_app.apk project/dex/classes.dex
Run Code Online (Sandbox Code Playgroud)

对齐并签名后即可运行。但一定是另一种方式,更合适。

android aapt2

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

怎么玩!提供XML响应的框架

不知何故,我无法弄清楚如何玩!提供XML响应.我也不了解文档(你可以在这里找到).

我的目标是创建一个站点地图,因此响应应该是一个 Content-Type: application/xml;

如何更改以下控制器以提供Content-Type?

public static Result sitemap() {
    return ok("<message \"status\"=\"OK\">Hello Paul</message>");
}
Run Code Online (Sandbox Code Playgroud)

xml playframework playframework-2.0

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

我在哪里可以找到APPLICATION_ID

我正在学习Android的转换api,我被困在这个部分:

mMediaRouteSelector = new MediaRouteSelector.Builder()
  .addControlCategory(CastMediaControlIntent.categoryForCast("YOUR_APPLICATION_ID"))
  .build();
Run Code Online (Sandbox Code Playgroud)

我在哪里可以找到它APPLICATION_ID,它是什么?

android google-cast android-cast-api

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