小编Ran*_*ku'的帖子

检查SoundChannel是否正在播放声音

如何可靠地检查SoundChannel是否还在播放声音?

例如,

[Embed(source="song.mp3")]
var Song: Class;

var s: Song = new Song();
var ch: SoundChannel = s.play();

// how to check if ch is playing?
Run Code Online (Sandbox Code Playgroud)

flash audio soundchannel actionscript-3

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

C++中Thread.SetApartmentState的等价物是什么?

在C#SetApartmentState中,类中有一个方法Thread.我如何在C++中做同样的事情?

c++ windows com multithreading

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

Hibernate:查询包含CollectionOfElements中指定元素的实体?

假设我有这个实体(对于Hibernate):

@Entity
public class Person {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    Long id;

    @CollectionOfElements
    @IndexColumn("phones_index")
    Set<String> phones;
}
Run Code Online (Sandbox Code Playgroud)

例如,我想获取Person的实例,其手机包含"555-1234".我怎么能对此进行查询?我正在寻找类似的东西:

session.createCriteria(Person.class)./*something*/.add(Restrictions./*something*/"555-1234").list();
Run Code Online (Sandbox Code Playgroud)

java database collections hibernate

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

适用于Android的Java ME兼容层

是否有适用于Android的Java ME兼容层,这使得移植Java ME(aka.J2ME)应用程序更容易?

我的意思是第三方类库,它将调用重定向到内部Android API.

android java-me libraries

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

进程被终止后不调用 onActivityResult

我有一个主要活动 (Main) 和另一个从 Main 调用的活动 (Sub)

startActivityForResult(new Intent(this, SubActivity.class), 25); 
Run Code Online (Sandbox Code Playgroud)

当我在 Sub 时,我终止了进程(使用任务管理器或 by adb shell kill <pid>),然后我重新打开应用程序,我立即被带到了 Sub。

在 Sub 中,我有这个代码可以回调到 Main 活动:

setResult(RESULT_OK, data);
finish();
Run Code Online (Sandbox Code Playgroud)

onActivityResult如果我没有终止进程,我会收到 requestCode (25)、resultCode (RESULT_OK) 和数据。然而,在这种情况下,我被带到了主要活动,但onActivityResult 没有被调用。

这是Android的工作方式(我不期望),还是我的方法有问题?


更新:这发生在我的 Nexus One、CyanogenMod 7.0.2、Android 2.3.3 上。我尝试使用模拟器 API 10,Android 2.3.4 并且它按预期工作,onActivityResult在我杀死进程后仍然被调用。

android activity-lifecycle android-activity

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

获取 Android Wi-Fi Hotspot/tethering/AP 的 MAC 地址

我可以通过以下方式获取 Android 中 Wi-Fi 接口的 MAC 地址:

final WifiInfo wi = wm.getConnectionInfo();
String mac = wi.getMacAddress();
Run Code Online (Sandbox Code Playgroud)

然而,我意识到,当 Wi-Fi 充当无线接入点(路由器)(又名热点或网络共享或 AP)时,MAC 地址不再相同。我可以从adb shell ip addr show.

当 Wi-Fi 连接到网络时,adb shell ip addr show显示:

10: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether a0:0b:ba:xx:xx:xx brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.25/24 brd 192.168.1.255 scope global wlan0
    inet6 fe80::a20b:baff:fee0:73c7/64 scope link 
       valid_lft forever preferred_lft forever
Run Code Online (Sandbox Code Playgroud)

然而,当它作为接入点时,

10: wlan0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 02:1a:11:xx:xx:xx …
Run Code Online (Sandbox Code Playgroud)

android mac-address wifi

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

何时使用 RecyclerView setHasFixedSize(true)?

我已经阅读了 Android 开发人员信息以及许多 SO 帖子和 RecyclerView 文章。我仍然不清楚我是否可以使用:

recyclerView.setHasFixedSize(true);
Run Code Online (Sandbox Code Playgroud)

我的 RecyclerView 列表中的方法。随着 CardView 项目随着时间的推移动态添加和删除,我的 RecyclerView 列表的大小将不断变化。但是,每个 CardView 的大小(高度和长度)是固定的。请指教。

android android-cardview android-recyclerview

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

支持按索引和键随机访问,在对数时间内插入、删除并保持顺序的数据结构

我正在寻找存储 E = (K, V) 元素的有序列表并在最多 O(log(N)) 时间内支持以下操作的数据结构,其中 N 是元素数。内存使用不是问题。

  • E get(index) // 通过索引获取元素
  • int find(K) // 找到 K 匹配的元素的索引
  • delete(index) // 删除索引处的元素,以下元素的索引减1
  • insert(index, E) // 在索引处插入元素,后面元素的索引加1

我考虑了以下不正确的解决方案:

  • 使用数组: find, delete,insert仍然是 O(N)
  • 使用数组 + K 的映射来索引:delete并且insert仍然会花费 O(N) 来移动元素和更新映射
  • 使用链表 + K 到元素地址的映射:get并且find仍然会花费 O(N)

在我的想象中,最后一个解决方案是最接近的,但不是链表,而是一个自平衡树,其中每个节点都存储其左侧的元素数量,这将使我们可以get在 O(log(N) )。

但是我不确定我是否正确,所以我想问问我的想象是否正确,这种数据结构是否有名称,以便我可以寻找现成的解决方案。

algorithm random-access data-structures

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

如何在右侧创建状态栏图标?(机器人)

NotificationNotificationManager用于创建放置在屏幕左上角位置的图标.A Notification还需要在状态栏下拉菜单上有一个条目.

但是,右侧的图标,如电池,信号强度,无线指示灯不需要状态栏上的任何条目.

如何在状态栏下拉列表中没有任何条目的情况下制作此类图标?

notifications icons android notificationmanager

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

"无法在Google App Engine灵活环境中导入google/appengine/ext/deferred/handler.py"

我使用App Engine Flexible Environment(以前称为托管虚拟机),最近升级到最新的gcloud SDK.它包括一些新的错误:

ERROR: (gcloud.preview.app.deploy) Error Response: [400] Invalid
character
in filename: lib/setuptools/script (dev).tmpl

ERROR: The [application] field is specified in file [.../app.yaml]. This field is not used
by gcloud and must be removed. Project name should instead be
specified either by `gcloud config set project MY_PROJECT` or by
setting the `--project` flag on individual command executions.

ERROR: (gcloud.preview.app.deploy) There is a Dockerfile in the
current directory, and the runtime field in
.../app.yaml is currently set to
[runtime: …
Run Code Online (Sandbox Code Playgroud)

python google-app-engine deferred managed-vm

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