從零到一:Android實現歡迎界面 Android項目實現歡迎界面 Android學習指南

萬丈高樓從地起,每個大神都是從第一行代碼開始自己的編程之路。今天在這裏就和大家分享一篇文章,一起從零到一,實現Android歡迎界面~

原文地址:Android實現歡迎界面

Android項目實現歡迎界面

在我們使用軟件的時候,打開一款應用,首先出現的就是歡迎界面,它不僅是應用的入口,也簡單概括了app的功能,有美觀的作用。同時,在顯示歡迎界面的同時,我們可以爲主頁的數據進行預加載,這樣可以讓我們的UI更加流暢,用戶體驗更佳。
值得注意的是,歡迎界面分兩種:

  • 第一次安裝時的歡迎界面
  • 首次啓動(未關閉應用程序)時的歡迎界面

1.區分兩種歡迎界面

爲了區分上述的兩種歡迎界面,我們可以通過設置sharepreference中的鍵對值爲版本號來實現。

  1. 若鍵對值爲空,即指定的鍵值不存在,則說明沒有安裝APP,使用第一種歡迎界面。
  2. 若存在鍵對值,則使用第二種歡迎界面。

存儲鍵對值:

SharedPreferences sp=getSharedPreferences("appDetails", Context.MODE_PRIVATE);
sp.edit().putString("welcome",welcome).apply();

讀取鍵對值:

SharedPreferences sp=getSharedPreferences("appDetails", Context.MODE_PRIVATE);
welcome=sp.getString("welcome",null);

2.歡迎界面的簡單實現

這裏實現最常見的,第二種歡迎界面。第一種歡迎界面與之類似,可以使用輪播圖或者viewpage實現。
實現第二種歡迎界面,主要要考慮到的就是歡迎界面要保留一段時間以便於加載主頁面所需要的一些資源、檢查版本號,檢查token,可以使得用戶體驗更好。此處以2s爲例,實現延時跳轉有常見的兩種方法,一種是Handler,另外一種是Timer。

public class Welcome extends AppCompatActivity {
    public String welcome;
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.welcome);
        SharedPreferences sp=getSharedPreferences("appDetails", Context.MODE_PRIVATE);
        welcome=sp.getString("welcome",null);
        if(welcome==null){
            //顯示第一種歡迎界面的代碼 ……(此處省略)
            sp.edit().putString("welcome","1").apply();
        }
        else{
            //plan1 timer
//            new Timer().schedule(new TimerTask() {
//                @Override
//                public void run() {
//                    startActivity(new Intent(getApplicationContext(), home.class));
//                    finish();
//                }
//            }, 2000);
            //plan2 handler
            new Handler(new Handler.Callback() {
                // 處理接收到消息的方法
                @Override
                public boolean handleMessage(Message msg) {
                    startActivity(new Intent(getApplicationContext(), home.class));
                    finish();
                    return false;
                }
            }).sendEmptyMessageDelayed(0,2000);
        }
    }
}

其實這裏只是簡單地實現了歡迎界面的延時,我們在歡迎界面中這段時間內可以檢查軟件的版本檢測是否需要更新,可以檢查token來決定需不需要重新登陸,同時可以測試服務器是否停機,爲主頁進行必要的預加載等等。由於這些和項目之後的東西有關,有些自己也還沒寫好,之後會對歡迎界面延時這段過程中進行的處理進行完善。

Android學習指南

現在搞Android開發的競爭壓力和以前相比大了很多。

Android學習之路需要學習的東西還有很多,在這裏給大家列舉一個學習路線供大家參考。

(這是從一個大佬的公衆號上面看見的,大家可以點這裏看原文)

  • 架構師築基語言基礎

目前Android APP開發主流語言就是Java語言,Java語言最大的特性就是提高了軟件的交互可能性,可以說安卓手機幾乎所有應用程序都是利用Java語言來進行編寫的。

知識要點:
1、深入理解Java泛型
2、註解深入淺出
3、併發編程
4、數據傳輸與序列化
5、Java虛擬機原理
6、高效IO

  • 設計思想解讀開源框架

隨着互聯網企業的不斷髮展,產品項目中的模塊越來越多,用戶體驗要求也越來越高,想實現小步快跑、快速迭代的目的越來越難,插件化技術應用而生。如果沒有插件化技術,美團、淘寶這些集成了大量“app”的應用,可能會有幾個g那麼大。

所以,當今的Android移動開發,不會熱修復、插件化、組件化,80%以上的面試都過不了。

知識要點:
1、熱修復設計
2、插件化框架設計
3、組件化框架設計
4、圖片加載框架
5、網絡訪問框架設計
6、RXJava響應式編程框架設計

  • 360°全方位性能調優

在不同層次的開發工程師手裏,因爲技術水平的參差不齊,即使很多手機在跑分軟件性能非常高,打開應用依然存在卡頓現象。

另外,隨着產品內容迭代,功能越來越複雜,UI頁面也越來越豐富,也成爲流暢運行的一種阻礙。綜上所述,對APP進行性能優化已成爲開發者該有的一種綜合素質,也是開發者能夠完成高質量應用程序作品的保證。

知識要點:
1、設計思想與代碼質量優化
2、程序性能優化
啓動速度與執行效率優化
佈局檢測與優化
內存優化
耗電優化
網絡傳輸與數據儲存優化
APK大小優化

3、開發效率優化
分佈式版本控制系統Git
自動化構建系統Gradle

4、項目實戰
啓動速度
流暢度
抖音在APK包大小資源優化的實踐
優酷響應式佈局技術全解析
網絡優化
手機淘寶雙十一性能優化項目揭祕
高德APP全鏈路源碼依賴分析
徹底幹掉OOM的實戰經驗分享
微信Android終端內存優化實踐

  • Android框架體系架構

Android框架體系架構(高級UI+FrameWork源碼) 這塊知識是現今使用者最多的,我們稱之Android2013~2016年的技術。

Android開發者也往往因爲網上Copy代碼習慣了而導致對這塊經常“使用”的代碼熟悉而又陌生:熟悉的是幾乎天天在和它們打交道, 天天在複製這些代碼 ;陌生的是雖然天天和這些代碼打交道,但是並沒有深入研究過這些代碼的原理,代碼深處的內涵。

知識要點:
1、高級UI晉升
2、Android內核組件
3、大型項目必備IPC
4、數據持久與序列化
5、Framework內核解析**

  • NDK模塊開發(音視頻開發系列)

NDK(Native Development Kit縮寫)一種基於原生程序接口的軟件開發工具包,可以讓您在 Android 應用中利用 C 和 C++ 代碼的工具。通過此工具開發的程序直接在本地運行,而不是虛擬機。

在Android中,NDK是一系列工具的集合,主要用於擴展Android SDK。NDK提供了一系列的工具可以幫助開發者快速的開發C或C++的動態庫,並能自動將so和Java應用一起打包成apk。

知識要點:
1、NDK開發之C/C++入門
2、JNI模塊開發
3、Linux編程
4、底層圖片處理
5、音視頻開發
6、機器學習

  • Flutter學習進階

2020 年無疑是 Flutter 技術如火如荼發展的一年。現在這門技術也依然非常有價值。

每一個移動開發者都在爲 Flutter 帶來的“快速開發、富有表現力和靈活的 UI、原生性能”的特色和理念而癡狂,從超級 App 到獨立應用,從純 Flutter 到混合棧,開發者們在不同的場景下樂此不疲的探索和應用着 Flutter 技術,也在面臨着各種各樣不同的挑戰。

知識要點:
1、Flutter跨平臺開發概述
2、Windows中Flutter開發環境搭建
3、編寫你的第一個Flutter APP
4、Flutter Dart語言系統入門**
……

  • 微信小程序開發

微信小程序作爲現在比較火的編程開發應用場景之一,深受市場的青睞,這讓不少開發者眼饞不已。但是對於初學者來說,就完全摸不着頭腦了,不知道微信小程序開發製作需要學習那些知識,有需要的朋友可以參考本篇。

本篇知識要點:
1、小程序概述及入門
2、小程序UI開發
3、API操作
4、購物商場項目實戰

完整版資料已經整理成爲PDF文檔,感興趣的朋友可以點擊此處,快速獲取!希望能幫助到大家!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章