我想构建一个扩展基本闹钟功能的应用程序。由于我没有在闹钟功能中发明任何轮子,因此我想使用公开可用的 Android 默认闹钟。
但是我尝试构建它很多次,但错误太多(还提到了here):
我试过这个approach但我仍然无法构建它。
任何人都可以指导如何构建 git android 树中提供的 android 应用程序吗?
我提到的链接:
更新:
1.)
Alarms.java:
Line 463: Intent alarmChanged = new Intent(Intent.ACTION_ALARM_CHANGED);
Error: ACTION_ALARM_CHANGED cannot be resolved or is not a field.
解决了此错误,但将该行替换为(感谢@shayanpourvatan):
final String ACTION_ALARM_CHANGED = "android.intent.action.ALARM_CHANGED"; Intent alarmChanged = new Intent(ACTION_ALARM_CHANGED);
2.)
AlarmKlaxon.java
Line 89: mVibrator = new Vibrator();
Error: Cannot instantiate the type Vibrator
-----------------------------------
通过将行替换为以下内容来解决:
mVibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
3.)
SetAlarm.java
Line 115: FrameLayout content = (FrameLayout) getWindow().getDecorView()
.findViewById(com.android.internal.R.id.content);
Error:com.android.internal.R cannot be resolved to a variable
通过替换解决:
com.android.internal.R.id.content into android.R.id.content
最佳答案
解决了所有错误并能够在设备上编译和运行。需要进行测试并检查是否有弃用。以下是我解决这些问题的方法:
1.)
Alarms.java:
Line 463: Intent alarmChanged = new Intent(Intent.ACTION_ALARM_CHANGED);
Error: ACTION_ALARM_CHANGED cannot be resolved or is not a field.
解决了此错误,但将该行替换为(感谢@shayanpourvatan):
final String ACTION_ALARM_CHANGED = "android.intent.action.ALARM_CHANGED"; Intent alarmChanged = new Intent(ACTION_ALARM_CHANGED);
2.)
AlarmKlaxon.java
Line 89: mVibrator = new Vibrator();
Error: Cannot instantiate the type Vibrator
-----------------------------------
通过将行替换为以下内容来解决:
mVibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
3.)
SetAlarm.java
Line 115: FrameLayout content = (FrameLayout) getWindow().getDecorView()
.findViewById(com.android.internal.R.id.content);
Error:com.android.internal.R cannot be resolved to a variable
通过替换解决:
com.android.internal.R.id.content into android.R.id.content
最后:
The specified child already has a parent
错误已修复,如下所述:
The specified child already has a parent in google alarmclock code
关于android - 从 Android 源构建闹钟应用程序时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22864856/