編輯:關於Android編程
注解:
1.@Target : 規定Annotation所修飾的對象范圍
ElementType.TYPE:類、接口
ElementType.CONSTRUCTOR:構造器聲明
ElementType.FIELD:成員變量、對象、屬性(包括enum實例)
ElementType.LOCAL_VARIABLE:局部變量聲明
ElementType.METHOD:方法聲明
ElementType.PACKAGE:包聲明
ElementType.PARAMETER:參數聲明
2.Retention:對Annotation的“生命周期”限制
RetentionPolicy.SOURCE:在源文件中有效
RetentionPolicy.CLASS:在class文件中有效
RetentionPolicy.RUNTIME:在運行時有效 ,ps:可以通過反射,獲取到該注解的屬性值,從而去做一些運行時的邏輯處理
3.Documented: 一個標記注解,沒有成員
4.Inherited: 闡述了某個被標注的類型是被繼承的
demo練習
https://joyrun.github.io/2016/07/19/AptHelloWorld/
涉及到的知識點:
AutoService:也是一個注解,官方翻譯是:An annotation for service providers as described in {@link java.util.ServiceLoader}。主要的作用是注解 processor 類,並對其生成 META-INF 的配置信息。 JavaPoet:這個比較熟悉了,這個庫的主要作用就是幫助我們通過類調用的形式來生成代碼。https://github.com/square/javapoetok,學著寫,使用javapoet成功編譯出代碼。休息了,改天繼續研究
AndroidAPT">https://github.com/cxMax/AndroidAPT
如上圖所示,使用facebook sdk進行login和share的時候,需要新建android平台,用到key hashes,生成方法有兩種:方法一:keytool -
在Android開發當中,經常需要用到定位功能,尤其是依賴於地理位置功能的應用,很多人喜歡使用百度地圖,高德地圖提供的sdk,開放API,但是在僅僅需要經緯度,或者城市,
先看布局: main_activity.xml 第二個
在閱讀Android的Framework處的代碼可以發現,無處不在SP給予了我視覺上的沖擊,這個是什麼?初級的我,看這個當初就基本當成指針來用,熟不知其的內在美,於是在這