标签: android-source

DDMS源/扩展DDMS

有谁知道在哪里可以找到DDMS源代码?我想扩展它的功能.或者是否有这个工具的CLI而不是eclipse插件?

android eclipse-plugin command-line-interface ddms android-source

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

HelloWorld无法在dalvikvm下运行

我正在尝试https://android.googlesource.com/platform/dalvik/+/gingerbread/docs/hello-world.html上的Hello World示例

但是,我的Foo程序没有运行; dalvikvm抱怨如下:

Dalvik VM无法找到类'Foo'java.lang.NoClassDefFoundError:Foo at dalvik.system.NativeStart.main(Native Method)引起:java.lang.ClassNotFoundException:Foo in loader dalvik.system.PathClassLoader [/ mnt/sdcard /foo.jar]在java.lang.ClassLoader.loadClass(ClassLoader.java:532)的java.lang.ClassLoader.loadClass(ClassLoader.java:573)的dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) ......还有1个

在dalvikvm调用期间,Logcat提供了更多信息:

D/dalvikvm(1361):创建instr宽度表E/dalvikvm(1361):无法打开dex缓存'/data/dalvik-cache/mnt@sdcard@foo.jar@classes.dex':没有这样的文件或目录I/dalvikvm(1361):无法为/mnt/sdcard/foo.jar打开或创建缓存(/ data /dalvik-cache/mnt@sdcard@foo.jar@classes.dex)W/dalvikvm(1361):threadid = 1:线程退出未捕获的异常(组= 0x4 001e9a8)

有没有人知道我做错了什么?

android dx android-source

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

从github检查Android源代码

在完成所有这些步骤以查看Android源代码(Gingerbread分支)之后,为了解决编译错误,我决定尝试从不同的源代码获取源代码.

以下是我从GitHub.com存储库中检出源代码所采取的步骤.

我检查了GitHub.com存储库中的repo工具

git clone git://github.com/android/tools_repo.git
Run Code Online (Sandbox Code Playgroud)

在下载的repo脚本文件中,我更改了repo工具的位置,如下所示:

## repo default configuration
##
#REPO_URL='git://android.git.kernel.org/tools/repo.git'
REPO_URL='git://github.com/android/tools_repo.git'
REPO_REV='stable'
Run Code Online (Sandbox Code Playgroud)

在此之后,我使用repo脚本'git wrapper'为源代码创建了存储库.

repo init -u git://github.com/android/platform_manifest.git -b gingerbread
Run Code Online (Sandbox Code Playgroud)

这给了我一个成功的结果; "repo在/ home/my /目录中初始化"

但是,当我尝试时repo sync,我收到以下错误消息:

$ repo sync

Initializing project platform/bionic ...
android.git.kernel.org[0: 149.20.4.77]: errno=Connection timed out
fatal: unable to connect a socket (Connection timed out)
error: Cannot fetch platform/bionic
Run Code Online (Sandbox Code Playgroud)

现在离线android.git.kernel.org的引用在哪里? cat repo|grep kernel.org没有给我什么.

git android repository android-source

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

我能以编程方式在Android上播放电台吗?

我在我的s2上有一个预定义的应用程序,让我收听广播.它不使用互联网,而是使用周围的无线电波.有什么方法可以使用该功能以编程方式启动无线电并搜索广播电台?

android android-source

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

在Android内核中执行insmod时没有此类文件或目录错误

我按照论坛中的步骤(http://www.schaeuffelhut.de/wordpress/?p=237&cpage=1#comment-384)获取Linux内核源代码并交叉编译我的模块.google nexus one的内核版本与论坛中的版本完全相同.我最初测试了我的测试模块hello-1.ko,它已成功安装在Android设备上.但是当我使用insmod在Android设备上安装我的模块ec.ko时,我收到以下错误.

apurva @ apurva-Inspiron-1464:〜/ $ adb shell
$ cd sdcard/data/ec
$ ls
ec.ko
$ su
#insmod ec.ko
insmod:init_module'ec.ko'失败(没有这样的文件或目录)
#

很明显,文件ec.ko存在.但我不确定为什么不挑选文件.我为hello-1.ko做了同样的事情,它得到insmod非常好.没有权限问题,ec.ko获得了与hello-1.ko相同的权限.

现在这让我想到一个问题,Android设备中是否存在内核模块的某些限制,因为该模块在Ubuntu中获得了insmod.对我来说,下一步是采用命中和试用方法,并检查ec.c中的哪些行导致了问题.同时如果你有什么建议,请告诉我.

android android-source

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

为什么选择Toast.makeText而不是新的Toast

这可能是一个菜鸟问题,但我想知道为什么我们必须使用静态方法(makeText)来创建Toast而不是构造函数.

为什么我们必须使用这个:

makeText(Context context, CharSequence text, int duration)
Run Code Online (Sandbox Code Playgroud)

而不是这个:

new Toast(Context context, CharSequence text, int duration) 
Run Code Online (Sandbox Code Playgroud)

这是makeText方法:

    public static Toast makeText(Context context, CharSequence text, int duration) {
        Toast result = new Toast(context);

        LayoutInflater inflate = (LayoutInflater)
                context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View v = inflate.inflate(com.android.internal.R.layout.transient_notification, null);
        TextView tv = (TextView)v.findViewById(com.android.internal.R.id.message);
        tv.setText(text);

        result.mNextView = v;
        result.mDuration = duration;

        return result;
    }
Run Code Online (Sandbox Code Playgroud)

为什么我们没有以下内容:

public Toast (Context context, CharSequence text, int duration) {
    this(context);

    LayoutInflater inflate = (LayoutInflater)
            context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
    View v = inflate.inflate(com.android.internal.R.layout.transient_notification, null);
    TextView tv = …
Run Code Online (Sandbox Code Playgroud)

android toast android-source

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

addJavascriptInterface()是否依赖于getClass()?

我试图通过代码来追踪,看看addJavascriptInterface()WebView实现的,但它潜入native代码,基本上戕害我神交是怎么回事能力.

具体来说,我试图确定JNI(?)是否意味着addJavascriptInterface()回调为Java代码的方式依赖于getClass()作为反射策略的一部分,将JavaScript源中的方法引用映射到Java中的实现.我会认为它必须,也许我在错误的地方搜索,但我没有看到它.

任何人都可以指向使用注入的Java对象的代码,所以我们可以看到它是如何实现的?

谢谢!


UPDATE

澄清一下,我的意思是使用getClass()传递给的对象addJavascriptInterface().

android dalvik android-source android-webview

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

禁用硬件密钥android rom

我想在我的自定义AOSP ROM中禁用Home,Menu和Back按钮.我已经上网了,看到我可以在out/target/product/generic/system/usr/keylayout中找到的关键布局文件中成功构建后禁用按钮.我正在编辑的文件是:Generic.kl现在我已经注释掉了这些按钮:

  • #键139 MENU WAKE_DROPPED
  • #键158返回WAKE_DROPPED
  • #键172 HOME

然后我重新启动了模拟器,按钮仍然工作...有什么我想念的?

谢谢,斯特凡

android android-source android-hardware

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

Fastboot flash system.img错误

当我尝试通过fastboot system.img(从我的自定义AOSP版本)闪存到Sony Xperia Z3时,我收到以下错误:

# fastboot flash system system.img 
sending 'system' (584106 KB)...
OKAY [ 18.294s]
writing 'system'...
FAILED (remote: size too large)
finished. total time: 18.297s
Run Code Online (Sandbox Code Playgroud)

Z3有大约2GB的系统分区,我不知道为什么闪存失败.

android sony android-source fastboot

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

本机代码覆盖与android soong构建系统

我正在尝试使用soong构建系统使用AOSP源代码为我的本机组件生成代码覆盖率报告.

我扩展了aosp vhal,但单元测试用例与下面的链接相同. http://androidxref.com/8.1.0_r33/xref/hardware/interfaces/automotive/vehicle/2.0/default/tests/

尝试将以下内容添加到Android.bp中的cc_test,cc_binary

native_coverage : true,

    cflags: [
         "-g",
         "-O0",
         "-fprofile-arcs",
         "-ftest-coverage",
    ],

     ldflags : [
        "-fprofile-arcs",
        "-ftest-coverage",
    ],
Run Code Online (Sandbox Code Playgroud)

本地二进制单元测试覆盖是在out/target/product中生成的,但我找不到gcno中间体.

在命令下运行会为每个测试文件提供*.gcda文件.

adb shell \
    GCOV_PREFIX=/data/local/tmp \
    GCOV_PREFIX_STRIP=`echo $ANDROID_BUILD_TOP | grep -o / | wc -l` \
    /data/local/tmp/unit-tests-coverage
Run Code Online (Sandbox Code Playgroud)

我试过下面的链接,但不知道如何继续:(

http://logan.tw/posts/2015/04/28/check-code-coverage-with-clang-and-lcov/ https://android.googlesource.com/platform/bionic.git/+/master- soong https://android.googlesource.com/platform/build/soong/+/581341d%5E%21/ https://android.googlesource.com/platform/external/e2fsprogs/+/fedfb27%5E%21/ https : //android.googlesource.com/platform/development/+/master/scripts/acov#23 http://androidxref.com/9.0.0_r3/xref/bionic/README.md#293

我不确定谷歌的vts框架是否可用于生成本机代码覆盖. https://codelabs.developers.google.com/codelabs/android-vts-8/#6

生成" gcnodir "但不确定如何使用它./coverage/data/nativetest64/vehicle-unit-tests-coverage/unit-tests-coverage.gcnodir

android code-coverage gcov android-source android-soong

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