草庐IT

android-development-using-custom-

全部标签

android 音频调试技巧

常用命令查看当前声卡信息catproc/asound/cardsbengal_515:/#cat/proc/asound/cards0[bengalidpsndcar]:bengal-idp-snd--bengal-idp-snd-cardbengal-idp-snd-card1[Loopback]:Loopback-LoopbackLoopback1查看PCM设备列表catproc/asound/pcmbengal_515:/#cat/proc/asound/pcm00-00:PCM_RT_PROXY-TX-1snd-soc-dummy-dai-0::capture100-01:PCM_RT

c++ - Android 调试 native 代码

我正在使用ndk-r9,我正在努力让ndk-gdb为我工作。我已经启动了一个名为“LittlestAndroid”的小型Android应用程序,它对返回硬编码字符串的nativeC++方法进行了简单调用。该应用程序构建/安装/运行得很好。现在我正在重新调整应用程序的用途以了解ndk-gdb。我在list中设置了debuggable="true"。我在我的make中设置了这些环境变量:APP_OPTIM=debugLOCAL_CFLAGS:=-g我已经破解了$NDK_HOME/build/core/build-binary.mk文件,使用以下命令有条件地去除调试符号:$(LOCAL_IN

Android 基础技术——RecyclerView

笔者希望做一个系列,整理 Android基础技术,本章是关于RecyclerViewRecyclerView 对比 ListView 的优点Adapter 面向的是ViewHolder 不是 View, 可以省略convertView.setTag和getTag 这些步骤可以设置布局管理器:竖向、横向、瀑布流方式可以设置 Item 的间隔样式Recycleview去掉了一些api,比如setEmptyview,onItemClickListener等等,给到用户更多的自定义可能Recycleview去掉了设置头部底部item的功能,专向通过viewholder的不同type实现Recyclev

Android笔记(二) 常见log

用户按键操作,唤醒屏幕S00B134 04-1902:46:37.926  951 1128DWindowManager:ReceiveInputKeyEventofPowerkeydownS00B138 04-1902:46:37.929  951 1128DWindowManager:wakeUpFromPowerKeyS00B139 04-1902:46:37.929  951 1128IPowerManagerService:WakingupfromAsleep(uid=1000,reason=WAKE_REASON_POWER_BUTTON,details=android.polic

2024 Android Studio安装及配置gradle快速省心搭建,不放C盘,前置搭建

题外话:要做安卓项目然后安装过AndroidStudio的朋友都知道,下载安装完成之后并不能直接开始你的第一个安卓项目的“HelloWorld”,其中有要配置好gradle,在你测试好环境之前你会遇到很多问题,同时默认下使用中所需依赖的一些大文件和缓存会默认放在c盘,会越积越多,所以在一开始就配置好,后面就不需要去顾虑c盘大小,照这里操作之后使用不占用你的c盘空间,同时畅通无阻完成搭建安卓项目环境的前置需要。 一、AndroidStudio安装这里安装最新的版本,安装旧版的也可以,注意项目里需要下载gradle的版本,后面跟这个有关(后面会说),下面给出网址,点击下载完成之后,点击安装包安装,

c++ - VC++ 2013 : using-declaration + redefinition of member function leads to compile error

我想通过指定策略允许修改我的类的行为。该策略应该用作boost::variant的访问者。有适合大多数情况的默认策略,但用户可能需要添加或替换一些重载。我发现vc++2013没有编译此代码并出现错误C3066:Therearemultiplewaysthatanobjectofthistypeofcanbecalledwiththesearguments。相同的代码在gcc和clang中按预期编译和工作。是vc++2013的错误吗?#includestructDefaultPolicy{voidoperator()(bool){std::coutUPD这个例子适用于vc++2010。看

c++ - 线程构建 block : Deadlocks because all threads used up

在英特尔线程构建block框架中,如何确保所有线程不忙于等待其他线程完成。例如考虑以下代码,#include#include#include#include#includestd::futurerun_something(std::functionfunc,boolb){autotask=std::make_shared>(std::bind(func,b));std::futureres=task->get_future();tbb::task_groupg;g.run([task](){(*task)();});returnres;};intmain(){tbb::parallel

c++ - [conv]/6中语句 "The expression e is used as a glvalue if and only if the initialization uses it as a glvalue"的确切含义是什么

[conv]/6(重点是我的):Theeffectofanyimplicitconversionisthesameasperformingthecorrespondingdeclarationandinitializationandthenusingthetemporaryvariableastheresultoftheconversion.TheresultisanlvalueifTisanlvaluereferencetypeoranrvaluereferencetofunctiontype([dcl.ref]),anxvalueifTisanrvaluereferencetoob

c++ - cmake add_custom_command 失败,目标被删除

我正在使用CMake构建测试可执行文件。在构建过程中,我想运行可执行文件,它返回测试是否通过。如果没有,我希望构建失败。但是,当我使用add_custom_command(...POST_BUILD...)并使用Makefile生成器时,测试可执行文件将被删除(在这个问题中解释:WhydoesGNUmakedeleteafile).有没有办法让CMake将可执行文件视为.PRECIOUS,或者以其他方式更改CMakeLists.txt,以便在测试失败时不会删除可执行文件?作为引用,我的CMakeList.txt如下所示(根据实际情况进行了简化):add_executable(UnitT

c++ - "Include What you use"

我读到了一个名为"include-what-you-use"的工具这可以帮助清理多余的包括从源代码。我知道有一个编译器LLVM(clang)版本和一个GCC版本。我的问题是:为什么这个工具依赖于编译器而不是“跨平台”的编译器。为什么从一开始工具的创建者就没有让它独立于编译器?是否与它的特殊实现或类似的东西有关?如果我想采用与LLVM兼容的工具版本,并且我想让它与GCC兼容(因为我正在使用GCC),我需要为此做什么? 最佳答案 在大多数情况下,Include-What-You-Use应该能够处理任何有效的C++代码库,无论该代码库是使