小编Jer*_*101的帖子

Android 仪器测试中的“additional_test_output”?

运行 Android Instrumented Tests,gradle 任务:app:connectedDebugAndroidTest现在在成功测试运行后打印红色警告:

Feb 12, 2022 11:53:02 PM com.android.tools.utp.plugins.host.additionaltestoutput.AndroidAdditionalTestOutputPlugin deviceShellAndCheckSuccess
WARNING: Shell command failed (1): ls "/sdcard/Android/media/<APP_NAME>/additional_test_output"
ls: /sdcard/Android/media/<APP_NAME>/additional_test_output: No such file or directory

Feb 12, 2022 11:53:02 PM com.android.tools.utp.plugins.host.additionaltestoutput.AndroidAdditionalTestOutputPlugin afterAll
WARNING: Failed to retrieve additional test outputs from device.
com.android.ddmlib.SyncException: Remote object doesn't exist!
    at com.android.ddmlib.SyncService.pullFile(SyncService.java:341)
    ...
Run Code Online (Sandbox Code Playgroud)

确实模拟器没有这样的文件,但是之前测试并没有想到会创建它。

问:有办法解决这个警告吗?这是测试协调器错误吗?(我不打算破解测试来创建空文件。)

环境: MBP 上的 Android Studio、com.android.tools.build:gradle:7.1.1APIandroidx.test:orchestrator:1.4.1级别 26 - 32 的 Android 模拟器,有些带有 Google API,有些没有 Google API;也在 API 级别 31 的 Pixel 3 …

android android-test-orchestrator

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

Android Studio gradle无法导入groovy.swing.SwingBuilder

我正在使用这种技术使发布版本要求密钥库密码,但最近Android Studio编辑器build.gradle抱怨:

Cannot resolve symbol 'groovy'
Run Code Online (Sandbox Code Playgroud)

对于该行:

import groovy.swing.SwingBuilder
Run Code Online (Sandbox Code Playgroud)

它不习惯抱怨.命令行构建./gradlew assembleRelease仍然有效.它只是AS无法导入groovy.

这是Android Studio 2.3.1,Gradle 3.3,Android Gradle插件2.3.1.

是否有一些AS配置让它开心?

令人惊讶的是,导入错误不会阻止AS进行调试构建,而build.gradle不会尝试在调试版本中使用Swing.

swing android android-gradle-plugin

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

如何让用户恢复到应用自定义声音?

Android O 应用可以使用应用声音资源在 NotificationChannel 上设置自定义声音:

NotificationChannel channel = new NotificationChannel(channelId, name, importance);
Uri uri = Uri.parse("android.resource://" + context.getPackageName() + "/" + R.raw.customSound);
AudioAttributes audioAttributes = new AudioAttributes.Builder()
    .setContentType(AudioAttributes.CONTENT_TYPE_SONIFICATION)
    .setUsage(AudioAttributes.USAGE_ALARM)
    .build();
channel.setSound(uri, audioAttributes);
Run Code Online (Sandbox Code Playgroud)

现在在系统设置中,用户可以重新配置 NotificationChannel,从系统的声音资源中选择不同的声音。

问题:该声音列表不包括应用程序自己的声音资源,因此用户在更改后永远无法恢复到应用程序的自定义声音资源。

Q. APP如何让用户恢复APP的自定义声音资源?应用程序是否必须将声音文件复制到共享目录(并使其工作)?

audio android android-notifications android-8.0-oreo

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

安卓。为什么 E/JavaBinder:BINDER 事务失败?

我读过很多关于此错误的帖子,其中大多数是关于管理图像的。

\n

但是当我停止应用程序(放入后台)时,我收到此错误,因此应该考虑内存中的数据......

\n

我没有在片段和活动的 onStop() 中执行任何操作。

\n

我已经检查了 onSaveInstanceState(final Bundle outState) 并且该包是空的... \xc2\xbf?

\n

我有 5 个对象的 ArrayList 并进行测试,我意识到如果我没有最大的一个,则不会抛出错误。

\n

我的应用程序将拥有比现在更多的数据,所以这是一个问题。

\n

谁能解释一下为什么我会得到这个以及我必须如何处理这个?

\n

错误:

\n
01-25 13:51:09.272 4940-4940/com.cathedralsw.schoolteacher\nE/JavaBinder: !!! FAILED BINDER TRANSACTION !!!  (parcel size = 539984)\n\n--------- beginning of crash\n01-25 13:51:09.281 4940-4940/com.cathedralsw.schoolteacher E/AndroidRuntime: FATAL EXCEPTION: main\n  Process: com.cathedralsw.schoolteacher, PID: 4940\n  java.lang.RuntimeException: android.os.TransactionTooLargeException: data parcel size 539984 bytes\n      at android.app.ActivityThread$StopInfo.run(ActivityThread.java:4039)\n      at android.os.Handler.handleCallback(Handler.java:761)\n      at android.os.Handler.dispatchMessage(Handler.java:98)\n      at android.os.Looper.loop(Looper.java:156)\n      at android.app.ActivityThread.main(ActivityThread.java:6595)\n      at java.lang.reflect.Method.invoke(Native Method)\n      at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:942)\n      at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:832)\n   Caused by: android.os.TransactionTooLargeException: data …
Run Code Online (Sandbox Code Playgroud)

java performance android

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