相关疑难解决方法(0)

在Intellij中使用Java调试器时"Drop Frame"是什么意思?

我在Intellij 8中使用了Java调试器并注意到一个标有"drop frame"的按钮,有人知道这个用途的目的是什么吗?如何/为什么这将被使用/有用?

java debugging intellij-idea

86
推荐指数
3
解决办法
2万
查看次数

调试服务

我用远程接口编写了一个服务,并将其安装在我的PC的Eclipse AVD上.我有一个客户端测试工具,它启动并调用服务中的方法.最初我通过控件类和活动安装了服务,我现在已将其删除,因此服务的清单如下所示:

<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
package="com.myname.gridservice"
android:versionCode="1"
android:versionName="1.0">
<application
    android:icon="@drawable/icon"
    android:label="@string/app_name"
    android:debuggable="true">
    <service
        android:enabled="true"
        android:debuggable="true"
        android:name="OverlayService">
        <intent-filter>
            <action android:name="com.myname.OverlayService.SERVICE"/>
            <action android:name="com.myname.gridservice.IRemoteInterface" />
        </intent-filter>
    </service>
 </application>  
</manifest>   
Run Code Online (Sandbox Code Playgroud)

所以没有活动标签.

当我从Eclipse中的调试图标启动它时,控制台告诉我它正在安装apk(它是),但它不会显示为调试线程并且不会触发断点,尽管服务的行为是可以的客户看到了它.如果我将服务标签包装在具有关联类的活动标签中并启动它,那么我可以调试它

是否可以调试服务而不将其包装在活动中?

android android-manifest

54
推荐指数
4
解决办法
4万
查看次数

每次调试运行时都禁用辅助功能服务

每次启动新的调试实例时,我的辅助功能服务都会重置为禁用状态.

是否有任何方法可以在连续的调试运行中保持启用(因为每次启用调试服务都很长很无聊)?

我在真实设备和模拟器上有相同的行为.
服务中没有异常,我在事件处理程序中尝试了没有代码的事件.

我的日志中有可疑的行:

10:47:32.801 31669-31669/? E/AffinityControl: AffinityControl: registerfunction enter
10:47:32.821 3650-3690/? I/ActivityManager: Force stopping com.test.testaccessibilityservice appid=10241 user=0: from pid 31669
10:47:32.821 3650-3690/? I/ActivityManager: Killing 31271:com.test.testaccessibilityservice/u0a241 (adj 1): stop com.test.testaccessibilityservice cause from pid     
10:47:32.821 3650-3690/? W/ActivityManager: Scheduling restart of crashed service com.test.testaccessibilityservice/.MyAccessibilityService in 1000ms
10:47:32.821 3650-3690/? I/ActivityManager:   Force stopping service ServiceRecord{3f5e1fc4 u0 com.test.testaccessibilityservice/.MyAccessibilityService}
Run Code Online (Sandbox Code Playgroud)

因此服务被强制停止并且从未重新启动.

笔记:

  • 如果我重新启动手机,则启动该服务.
  • 我对ApiDemos示例和ClockBackService(QueryBackService)也有相同的行为:

    18:07:15.871 3523-4251/? I/ActivityManager: Force stopping com.example.android.apis appid=10242 user=0: from pid 19382
    18:07:15.871 3523-4251/? I/ActivityManager: Killing 16542:com.example.android.apis/u0a242 (adj 1): stop com.example.android.apis …
    Run Code Online (Sandbox Code Playgroud)

debugging android accessibilityservice

52
推荐指数
1
解决办法
2317
查看次数

强制应用程序从第一个Activity重新启动(当权限被拒绝时)

众所周知,当我们在Android 6.0中拒绝运行时的权限并从最近的菜单中恢复应用程序时,应用程序进程将被终止,应用程序将被强制重新启动.据称这是为了防止任何安全问题:

在此输入图像描述

值得注意的是,当恢复时,应用程序会从最后一次重新开始Activity.操作系统显然跟踪Activity用户访问的最后一次.

不幸的是,这是一个问题,因为它打破了业务逻辑的流程.不允许用户以这种方式中途访问应用程序.

我的问题是,有没有办法强制应用程序从Activity应用程序的第一个重新启动,而不是用户将其保留的应用程序?

是否有与应用程序重启/进程终止/权限切换相关的回调?

这是一种错误的做法吗?如果是这样,怎么样?什么是正确的方法?

这种行为当然在以前被观察过:

1. Android预览M:在权限授予后重新创建活动

2. 启用/禁用Android M nexus 6上的设置权限后,应用程序将被终止

3. Android Marshmallow:运行应用程序的权限更改

4. 按"重置应用偏好设置"后,我的应用的所有权限都被撤消

5. Android 6权限 - 在设置中切换权限时崩溃并返回应用程序

android android-activity android-permissions activity-manager android-6.0-marshmallow

22
推荐指数
1
解决办法
3667
查看次数

在Android Studio中调试服务的正确方法?

有没有正确的方法在Android Studio中调试服务?或Android Studio无法做到这一点?当我尝试调试时,它只会断开套接字.("与目标VM断开连接,地址:'localhost:8600',传输'套接字')

希望你能在这里帮助我..

我在这里通过一些链接做了什么建议,我放了.waitForDebugger但没有任何反应.请帮帮我..非常感谢你.

   @Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Intent mainService = new Intent(this,MainPowerAndVolumeService.class);

    startService(mainService);
    android.os.Debug.waitForDebugger();

    finish();

}
Run Code Online (Sandbox Code Playgroud)

service android android-studio

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

Android:如何调试应用程序的启动过程

我调查了一些问题,在我的应用程序的启动过程,发生,但直到进程DDMS将无法启动调试模式已经开始了,是有办法,我可以更早捕获的事件?

android process startup ddms

7
推荐指数
3
解决办法
2152
查看次数

如何调试Android后台服务?

我一直在为Android开发一个包含后台服务的PhoneGap应用程序.我的问题是:我该如何调试这项服务?是否可以使用AVD进行调试并逐步进行?或者我可以使用自己的设备来实现这一目标吗?

谢谢!

java eclipse android background-service cordova

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

服务中的断点无法正常工作

我试图将断点添加到在单独的线程上运行的服务.无论我在哪里将断点放在服务中,它们总是被忽略.

我确信该服务正在运行,因为我Log.e在logcat中看到了.我的调试模式也正确用作应用程序主线程中的任何断点.

我错过了什么吗?单独线程中的服务不支持调试模式吗?

我刚刚将Eclipse和Android SDK工具更新到了今天的最新版本.

我在设备上测试我的应用程序.

eclipse debugging service android breakpoints

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