相关疑难解决方法(0)

android从服务开始活动

安卓:

public class LocationService extends Service {

@Override
    public void onStart(Intent intent, int startId) {
        super.onStart(intent, startId);
        startActivity(new Intent(this, activity.class));
    }
}
Run Code Online (Sandbox Code Playgroud)

我推出了这项服务 Activity

Activity如果条件满足启动

startService(new Intent(WozzonActivity.this, LocationService.class));
Run Code Online (Sandbox Code Playgroud)

从我LocationService上面提到的无法启动Activity,我怎样才能获得当前Activity在服务类中运行的上下文?

android android-service android-activity

139
推荐指数
5
解决办法
20万
查看次数

Android响应PN532 InListPassiveTarget

我有一个奇怪的情况,我试图在标签模拟和标签阅读器模式之间切换我的PN532.读者持续约70ms,标签仿真运行约600ms.

我想要发生的是,当我将我的Android设备放在天线附近时,它会读取模拟标签.当我将PN标签保存到PN532时,它应该读取标签.

我的解决方案有点工作,但我看到一个奇怪的情况,当我打电话readPassiveTargetID测试无源标签的存在时,Android正在响应.这样会很好,但我认为Android正在启动一项服务,阻止它阅读模拟标签.

在测试时,有时设备根本不与PN532通信,但是当他们这样做时,最常用的是读卡器模式.以下是发生这种情况时得到的输出:

Nexus 5x(Android 6):

<< 4A 1 0
>> 4B 1 1 0 4 60 4 1 2 3 4 5 78 80 71 0
Run Code Online (Sandbox Code Playgroud)

Galaxy S4(Android 5.0.1):

<< 4A 1 0
>> 4B 1 1 0 4 20 4 8 87 F6 62 5 78 B3 70 2
Run Code Online (Sandbox Code Playgroud)

5x通常会在一秒左右后读取模拟标签,但是当我在两种模式之间切换时,S4很少会读取标签.当我只运行标签模拟时,两个设备都可以正常运行.

我在想我可能会遇到一些问题.

  1. 我是否需要做一些特殊的事情来切换模式?切换时,我实际上没有重置或重新初始化PN532.
  2. 是否有一个命令我可以发送告诉设备停止收听或我可以发送的设置将解决此问题?

android nfc nfc-p2p contactless-smartcard hce

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