小编Ser*_*lov的帖子

坚持"倾倒记忆,app会冻结.Brrr." 信息

我正在尝试使用LeakCanary来检测我的应用程序中的内存泄漏,但它没有比消息"倾倒内存,应用程序将冻结.Brrr."更进一步.我已经等了大约20分钟左右,但没有变化.在这些设备上的行为相同:1.华硕fonepad 8(Android 5.0股票)2.索尼Xperia SP(Android 5.1.1 CM 12.1自定义)3.HTC Desire C(Android 4.4 CM 11自定义)

我在教学中做了一切建议:

public class ExampleApplication extends Application {

  @Override public void onCreate() {
    super.onCreate();
    LeakCanary.install(this);
  }
}
Run Code Online (Sandbox Code Playgroud)

android memory-leaks leakcanary

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

Wi-Fi P2P.通知所有可用的同事

问题是:我正在制作一个离线多人安卓游戏,人们可以通过Wi-Fi创建或加入一个房间并一起玩.考虑用户创建房间时的情况,他(当然)必须通知所有其他用户有可用房间.所以问题是"如何?".我已经阅读了大约1000次这个这个.它写在那里,为了将一些数据发送到另一个设备,其中一个应该是服务器而另一个应该是客户端.客户端向服务器发送一些信息,服务器接受它.那么,这是否意味着我必须让所有"玩家"服务器和"房间创建者"成为客户?这听起来很疯狂.请帮忙,可能是我在读错了文档?

android wifi-direct wifip2p

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

运行时的NoClassDefFoundError是外部.AAR库中的类

所以今天我遇到了这个问题.我有一个例外说

"NoClassDefFoundException" class com.example.app.MainClass$3
Run Code Online (Sandbox Code Playgroud)

我知道这个异常是什么意思所以首先我查看了位于的classes.jar文件 /app/build/intermediates/exploded-aar/$packageName%/%versionName%/jars.

在那里,我找到了具有完全相同签名的"缺失"类:MainClass$3.所以它产生了.然后在我的智能手机上,我去看了/data/app/%packageName%/里面的base.apk文件.在里面我发现了一个名为的文件classes.dex.我用Notepad ++打开它,我发现在MainClass$3那里也提到了我!为什么找不到这堂课?我还应该检查什么?我不能发布原始异常消息,也不能发布文件,因为它是商业广告,但如果需要,我会尽量澄清事情.

更新#1:我认为我需要添加一些内容.所有这一切的奇怪之处在于,这个类是唯一一个无法从整个库中找到的类.这不是新的,我很久以前就添加了它,所以我只是想,也许是从该类运行一些代码时发生的一些异常导致了这个错误?

更新#2:我调试了我的应用程序并看到了最奇怪的事情:我能够使用参数调用有问题的类的构造函数,并且对象是成功创建的.然后我调用了类的方法并得到了这个异常.这是我打电话的方法

public Observable<String> getSnapshotTaker() {
        int a = 1;
        Observable<String> snapshotTaker = Observable.create(new Observable.OnSubscribe<String>() {
            @Override
            public void call(Subscriber<? super String> subscriber) {
                queueSnapshot(true, 0, subscriber);
            }
        });
        return snapshotTaker;
    }
Run Code Online (Sandbox Code Playgroud)

我插了

int a = 1;
Run Code Online (Sandbox Code Playgroud)

用于调试目的.应用程序崩溃,方法的第二行有异常,我正在尝试创建一个Observable.所以,看起来它不是SnapshotManager导致崩溃的类,而是这个Observable.但是为什么异常消息看起来像这样呢?

更新#3:这是堆栈跟踪:

E/AndroidRuntime: FATAL EXCEPTION: main

 java.lang.NoClassDefFoundError: com.test.pack.SnapshotManager$3
    at com.test.pack.SnapshotManager.getSnapshotTaker(SnapshotManager.java:370)
    at com.test.pack.CameraPresenter.takePhoto(CameraPresenter.java:31)
    at com.test.pack.MainActivity$MainShutterClickListener.onClick(MainActivity.java:1100)
    at android.view.View.performClick(View.java:5204)
    at android.view.View$PerformClick.run(View.java:21153) …
Run Code Online (Sandbox Code Playgroud)

java

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

标签 统计

android ×2

java ×1

leakcanary ×1

memory-leaks ×1

wifi-direct ×1

wifip2p ×1