项目地址:https://github.com/DeYangLiu/AndroidPlayer/

下载链接:

看点:

支持软键盘输入和历史记录。使用了EditText和内部存储。 这里考虑了历史记录的更新: 总共8条记录,新的放在后面,最前面被挤出,反复的忽略。

用ListView实现的简易文件浏览器。

用intent启动还有一个Activity。

ndk 调试。

移植ffmpeg 2.5和sdl2 到android的各种坑。


同一时候编译多个库
====
ln -s /mnt/OpenSource/SDL_image jni/
ln -s /mnt/OpenSource/SDL_image/showimage.c jni/src/
gvim jni/src/Android.mk
LOCAL_SRC_FILES = ... showimage.c
LOCAL_SHARED_LIBRARIES += SDL2_image

測试 cannot locate symbol atof
忘了SDLActivity.java里面加上SDL2_image
然后又出现cannot locate symbol "signal"

Q. how to judge android phone 32 or 64bit?
A: adb pull /system/bin/dalvikvm && file dalvikvm
当然我的手机是32bit的啦,网上有人须要用32bit的ndk的,我试了也没用。
迷茫中,下午又搜了一番,遇到[1]之后,事情出现转机。

ffmpeg4android
====
[1]下载下来不知道从哪里開始,
细致读了里面的shell脚本,明确了要下载ffmpeg源代码,
然后buildtest.sh。[1]的最初计划是和android source
tree以下编译的,可是在内地下载不了, 而u pelya 改造成能够单独编译。
我一開始试最新的ffmpeg2.5,失败了。看到脚本里面仅仅支持到1.1,于是下载了[2]。
makefiles以下三个文件:
Android_configure.mk -- 设置配置參数字符串
Android_.mk -- libavutils libavcodec 等子文件夹都用到的编译參数。
Android.mk -- 包括上面两个文件; 跟据config.mak设置APP_MODULES编译參数。
然后把ffmpeg源代码解压到$ffmpegdir,把makefiles以下的文件复制过去。
生成两个文件:
jni/Android.mk
jni/Application.mk
ln -s $ffmpegdir jni/ffmpeg
然后就能够编啦:
ndk-build -j8 2>&1 | tee build.log

由于SDL2本身自带一个mk,直接
ln -s $sdldir jni/SDL
在jni/Application.mk加上SDL2。

剩下还需一个jni測试入口:
cp -rf android-ndk-r10d/samples/hello-jni/jni/src jni/adapter
UI入口:
cp -rf android-ndk-r10d/samples/two-libs/src src
项目文件:
cp -rf android-ndk-r10d/samples/two-libs/{res, AndroidManifest.xml default.properties}


git代码已使用静态链接。感谢[1]的指引。

ref

====
[1] git://git.code.sf.net/u/pelya/ffmpeg4android
[2] http://ffmpeg.org/releases/ffmpeg-1.1.tar.bz2

更多相关文章

  1. Ubuntu Android(安卓)2.3的编译环境 Ubuntu 11.04 x64的版本
  2. Android(安卓)Studio磁盘空间不足:Emulator: emulator: ERROR: No
  3. android jni示范 修改无法启动注意点 jni无效
  4. Android.mk集成第三方jar与so的方法
  5. Android学习第三天-打包常用命令
  6. 解决Android(安卓)Studio 升级时提示 Connection failed. Please
  7. 关于Eclipse不能升级android SDK和ADT的解决方法
  8. ubuntu11.10下配置android的Eclipse开发环境
  9. Android(安卓)引用使用外部字体

随机推荐

  1. [gitbook] Android框架分析系列之Android
  2. Android执行linux外部命令
  3. Android如何快速入门
  4. Android(安卓)GestureDetector手势监听
  5. 去除警告 Android(安卓)NDK: WARNING: AP
  6. 解决 Android(安卓)模拟器 无法上网问题
  7. Android系统源码极速搜索引擎(OpenGrok)
  8. Android开发环境的安装 Eclipse
  9. Android(安卓)好用插件 / 实用依赖(及时
  10. Android串口开发,基于官方的android-seria