由于参与了 Camera 项目的开发工作,所以需要对原项目代码需要有个详细的了解,在这里先从app的入口做一个整体的分析,让日后的新需求的添加和bug修复有一个比较好的基础。
在这里以高通修改的Camera app (SnapdragonCamera ) 做为研究的对象 。研究一款应用应该从这款应用的 AndroidManifest.xml文件开始,以下简略了部分代码:
<application
android:name="com.android.camera.app.CameraApp"
... >
<activity
android:name="com.android.camera.CameraActivity"
... >
</activity>
<activity-alias
android:name="com.android.camera.CameraLauncher"
...
android:targetActivity="com.android.camera.CameraActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity-alias>
</application>
由代码可知,app 的入口是 CameraLauncher