1. git the AlarmClock source code on AOSP

2. select 'import project' by android-studio & we will revise this code

AlarmKlaxon.java
     L89
           //mVibrator = new Vibrator();
           mVibrator = (Vibrator)getSystemService(VIBRATOR_SERVICE);

L207,8
      //setDataSourceFromResource(getResources(), mMediaPlayer,
      // com.android.internal.R.raw.fallbackring);
      setDataSourceFromResource(getResources(), mMediaPlayer,
       R.raw.fallbackring);
      R.raw.fallbackringとしてfallbackring.oggをファイルを保存 (可以自己隨便用個叫fallbackring.ogg的音檔放到main/res/raw下面)


  Alarms.java
    L462
      //Intent alarmChanged = new Intent(Intent.ACTION_ALARM_CHANGED);
      final String ACTION_ALARM_CHANGED = "android.intent.action.ALARM_CHANGED";
      Intent alarmChanged = new Intent(ACTION_ALARM_CHANGED);

    L512,521,538
    指定APIに対応していないAPIを呼び出そうとしている。
    Eclipseクイックフィックス
    Add target api to (メソッド名)で修正


  DigitalClock.java
    L52 追加
      private Context mContext;

    L104, 110 追加
      this.mContext = context;

    L187
  Alarms.java 同様アノテーション付与


SetAlarm.java
L116
//.findViewById(com.android.internal.R.id.content);
.findViewById(android.R.id.content);

L165
Alarms.java 同様アノテーション付与


AndroidManifest.xml
追加
要素の次

Please execute 'adb uninstall com.android.alarmclock' in a shell.
と出たら素直にCMDで実行

後來還是在一些xml上面報錯,因此砍掉一些錯誤的行。暫時想不到怎改阿!!

結果build apk成功。

ref:

1. http://imax-live.blogspot.tw/2013/04/platformpackagesappsalarmclock.html

2. http://bokukoko.hatenablog.com/entry/20120825/1345895842

Edit the AlarmClock in AOSP with android-studio的更多相关文章

  1. Android Studio 导入 AOSP 源码

    有了 AOSP 源码,接下来就是如何看了,可以直接文本看,可以用 Source Insight,我当然选择 Android Studio,Android Studio 是我熟悉且十分强大的工具.问题来 ...

  2. macOS(Sierra 10.12)上Android源码(AOSP)的下载、编译与导入到Android Studio

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  3. 将AOSP源码导入到Android Studio进行查看

    生成iml和ipr文件 source build/envsetup.sh lunch aosp_x86-eng # 或者直接输入lunch,然后选择对应的target make idegen deve ...

  4. Android Studio导入Android 4.4.4r1的源码

    本文博客地址:http://blog.csdn.net/qq1084283172/article/details/70339471 一.环境配置 1.ubuntu 14.04.5 x64bit 2.j ...

  5. Android Studio快速开发之道

    概述 现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. P ...

  6. 最强 Android Studio 使用小技巧和快捷键

    写在前面 本文翻译自 Android Studio Tips by Philippe Breault,一共收集了62个 Android Studio 使用小技巧和快捷键. 根据这些小技巧的使用场景,本 ...

  7. Android Studio JNI 开发简单案例

    转载:http://www.androidchina.net/5744.html 进程保活,热修复,硬件接入等等都需要底层的支持,而底层代码是 C .C++ 写的,那么在 Android 中怎么调用底 ...

  8. [转]Android Studio 里搭建自动化测试框架Robotium

    Android的自动化测试框架可选择的不多,后来选了Robotium(https://code.google.com/p/robotium/),它的语法及易用性挺像我们用在iOS里的KIF. 官方文档 ...

  9. Android Studio 2.2.2导入Eclipse中创建的项目

    最近随视频教程学习Android,原本都是用Adt写Android程序,中途教程换成了Android Studio,于是我自己下了android studio 2.2.2安装好,并下载好sdk,也跟着 ...

随机推荐

  1. mysql导出函数或者存储过程 设置显示方式

    mysql导出函数或者存储过程 mysqldump -hhostname -uusername -ppassword -ntd -R databasename > /app/backupflie ...

  2. 即时通讯(II)

    Socket 连接Demo Socket客户端代码 #import "ViewController.h" //0.导入头文件 #include <netinet/in.h&g ...

  3. JS基础入门篇(三)— for循环,取余,取整。

    1.for循环 1.for的基本简介 作用: 根据一定的条件,重复地执行一行或多行代码 语法: for( 初始化 ; 判断条件 ; 条件改变 ){ 代码块 } 2.for循环的执行顺序 <bod ...

  4. LOJ 2840「JOISC 2018 Day 4」糖

    有趣的脑子题(可惜我没有脑子 好像也可以称为模拟费用流(? 我们考虑用链表维护这个东西 再把贡献扔到堆里贪心就好了 大概就是类似于有反悔机制的贪心?我们相当于把选中的一个打上一个-v的tag然后如果选 ...

  5. gitignore 忽略文件

    *.project*.prefs*.classpath*.gitignore#ignore thumbnails created by windowsThumbs.db#Ignore files bu ...

  6. Oracle12c修改时区

    Oacle12c支持可插入数据库(PDB)在一个统一的数据库(CDB)中具有不同的字符集.时区文件版本和数据库时区. 出于性能原因,Oracle建议将数据库时区设置为UTC(0:00),因为不需要转换 ...

  7. properties与yml之间的比较

    在Spring Cloud的配置文件中,发现使用yml与properties两种后缀的文件: 在application.properties中内容是这样的: server.port=8801eurek ...

  8. 对拍 & 随机数生成

    用 Windows 批处理对拍: 1. 新建一个批处理(.bat),代码如下: :loop@echo off data_creator.exe force_solution.exe correct_s ...

  9. Android keystore 密码找回

    昨天准备给自己的应用发布一个新版本,在apk打包时,发现之前的用的keystore密码忘了. 蛋碎了一地,我把我所能想到的密码都试了一遍(注:我平常在各个门户网站注册基本上用的都是那几个字母和数字组合 ...

  10. python中将12345转换为54321

    #将12345转换为54321 a = 12345789 ret = 0 #当a不为零的时候,循环条件为true,执行语句块 while a : #对a求余数,第一次循环则把5求出来 last = a ...