最近在工作中做了一個很簡單的任務,制作一個apk,點擊該app鏈接到某一個網站。
代碼很簡單,只有如寥寥幾行:
(browser.java) package com.test.browser; import android.app.Activity; import android.content.Intent; import android.net.Uri; import android.os.Bundle; public class TestActivity extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Intent intent= new Intent(); intent.setAction("android.intent.action.VIEW"); Uri content_url = Uri.parse("http://www.baidu.com"); intent.setData(content_url); startActivity(intent); finish(); } } (AndroidManifest.xml): <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.vf.AIRIS" android:versionCode="1" android:versionName="1.0" > <uses-sdk android:minSdkVersion="10" /> <application android:icon="@drawable/ic_launcher" android:label="@string/app_name" > <activity android:name=".AIRISActivity" android:label="@string/app_name" android:theme="@android:style/Theme.NoDisplay" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
很輕松的完成了這個app,運行很正常。但在啟動的時候發現一個問題,屏幕閃爍一下之后才跳轉到瀏覽器界面,如下圖:
由於啟動瀏覽器打開網站通過TestActivity這個activity啟動的,因此當打開這個app時會首先進入TestActivity,盡管沒有為其設置布局,但也會顯示一個空白界面,所以會出現上述屏幕閃爍一下的現象。
怎樣避免這個現象,能使打開app時繞開testActivity的空白顯示直接進入網站?
在activity標簽下可以配置名字叫做theme的屬性,該屬性可以配置各種各樣的顯示樣式,其中一個屬性值是Theme_NoDisplay,簡單 來說,配置為該屬性值可以不顯示任何東西,僅僅是運行該activity。因此在配置文件AndroidManifest.xml中的activity標 簽下添加如下一句:
android:theme="@android:style/Theme.NoDisplay"
就解決了屏幕閃爍的問題。