从今天开始我们就开始研究Android 4.0里面的Gallery3d (Gallery2)
4.0的代码就庞大许多,而且现在的包名变成了com.android.gallery3d了,是真正的Android写的了。我们看下AndroidManifast.xml,
我们先看一个简单的Activity,熟悉下代码
<activity android:name="com.android.gallery3d.app.MovieActivity" android:label="@string/movie_view_label" android:configChanges="orientation|keyboardHidden|screenSize"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="rtsp" /> </intent-filter> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="http" /> <data android:scheme="https" /> <data android:scheme="content" /> <data android:scheme="file" /> <data android:mimeType="video/mpeg4" /> <data android:mimeType="video/mp4" /> <data android:mimeType="video/3gp" /> <data android:mimeType="video/3gpp" /> <data android:mimeType="video/3gpp2" /> <data android:mimeType="video/webm" /> <data android:mimeType="video/avi" /> <data android:mimeType="application/sdp" /> </intent-filter> <intent-filter> !-- HTTP live support --> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <data android:scheme="http" /> <data android:scheme="https" /> <data android:mimeType="audio/x-mpegurl" /> <data android:mimeType="audio/mpegurl" /> <data android:mimeType="application/vnd.apple.mpegurl" /> <data android:mimeType="application/x-mpegurl" /> </intent-filter> </activity>
因为看过类似的代码,我就快点过
我发现android也不厚道,写的代码都这么的相似,2.3让人家写代码,4.0就抄袭改进人家的代码,把别人踢开了。
不过也可以解释为本身代码就是个空框架,没什么好改的
public class MovieActivity extends Activity {}
public class MoviePlayer implements MediaPlayer.OnErrorListener, MediaPlayer.OnCompletionListener, ControllerOverlay.Listener {}
public class MovieControllerOverlay extends FrameLayout implements ControllerOverlay, OnClickListener, AnimationListener, TimeBar.Listener {}
Android 还做了一个无耻的事情,请看AndroidManifast.xml
<!-- we add this activity-alias for shortcut backward compatibility --> <!-- Note: The alias must put after the target activity --> <activity-alias android:name="com.cooliris.media.Gallery" android:targetActivity="com.android.gallery3d.app.Gallery" android:configChanges="keyboardHidden|orientation|screenSize" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> </intent-filter> </activity-alias>
视频播放器就不说了,后面开始,还是按照我们原来的方法来研究 数据流程 消息流程 刷新流程,界面切换流程来研究下吧。