2019-07-23

轉換跑道滿5年心得

自從2014年5月開始寫Android以來一直始終如一.也滿5年了發個牢騷.


以前學生覺得電子科出來就是要做相關的工作,從生產技術員做到了小組長,生產組長.
了解生產了又怎樣.大環境真的不得不逼你要往上爬.
問題還是收入太少. 大家出來工作都是為了要賺錢.混口飯吃的嘛.

我也從事過保險業務員(半年沒工作吃老本),冷氣水電控制-勞力活,直到最後Android智慧型手機的開始.讓我有好機會-好時機點 進入這個行業.

在軟體業有些地方還是蠻坑的,也想小吐一下苦水.
小公司(3人) 缺點是物資缺但自由度極高.(錢,福利換自由度-尤其喜歡晚到早退的)=小間新創公司(小公司模式,優點是比小公司還多錢可以揮霍-燒錢).

有成立幾年的軟體公司(接外包,SI)-制度嚴,時間管控比較嚴,差不多的收入少了自由.也去過駐點-駐點的好處是自由,錢好像多了一些.但是就是會換地點.對於不喜歡一直待同一個公司的人非常適合(我就不適合)
大一點的公司(超過50人),制度比較明確.步調比較慢.前提是公司體質要好;不然也是會倒,或被整合.

剛開始的同學我都會建議去外包,SI公司練一練.後面要衝的話可以選新創或穩一點金融銀行業,工作也是很吃機運的.
遇到好公司,好相處的同事一定做事很開心又可以做得久~

2019-07-22

股票投資-緯創

自己新手試水溫頭一次從股票獲利的心得,也順便紀錄一下

買入賣出:
5/17 價值投資買入緯創,買入原因-公司年年配息,殖利率4%以上.股價低位階看起來可以買了.
主要是想賺一波除息前的波段.
當天開22.95 收22.55
掛22.55 買到(運氣好) 


7/19 緯創賣出,因為22日要除息了.相對高點
掛當時牌價25.35

分析:
當時以為買入22.55已經很低了沒想到
5月底時川普要對墨西哥課稅往下摔了一跤.(當時沒辦法克服心魔再買他1單)
但還好後來也達成協議解除了這個危機.股價順勢的往上走.
主要在美國貿易戰讓好股票降到低位階.
公司體質好.(包含年年配息)
除息之後還不想買,因為歷年-前2年,都是除息後直直落.
如果又降到21以下,更低的價位覺得可以再來佈局.

2019-07-18

Android icon,roundIcon向量圖

不知道什麼版本開始Android Studio 開新專案的時候預設新增了res/mipmap-anydpi-v26
裡面有2個xml ,是vector向量圖的一種. 這次是有UI工程師協助下研究出來的.
介紹可以參考下面網址:
https://developer.android.com/studio/write/image-asset-studio

這個只支援v26 的icon特效是什麼.官方介紹如下.
https://developer.android.com/guide/practices/ui_guidelines/icon_design_adaptive?hl=zh-tw
簡單的說就是前景icon會依照使用者拉動,點擊做出特效~還蠻酷的喔.
但醜話先說.不是所有手機都支援,應該說接近原生,或原生系統都支援這個特效.
版本未滿6.0 或是大部分手機喜歡深度定制的~就看不到.
秉持實現原生特效實驗

----- 這邊都廢話 -----
先準備1台原生手機(支援這個特效),判斷的方式就隨便拖拉放google的app看有沒有抖動特效
background背景圖,最好是向量圖.手機多大icon的?dpi全吃
foreground前景圖.

開新專案後可以看到
drawable-v24 裡面ic_launcher_foreground.xml
你可以發現ic_launcher_backgorund.xml 放在drawable裡就行
整合引用在mipmap-anydpi-v26 裡面有ic_launcher.xml ,ic_launcher_round.xml
依照google給的圖套入都沒問題. 就這樣~結束了嗎? 當然還沒,google就是每次給開發者不同的考驗
我這邊遇到的問題是套用了UI工程師給的SVG圖引入.前景,背景圖單獨看都沒問題.
但合體後前景圖總是填滿背景圖~
試過1.只換我們的前景圖. 沒用
2.調整vector 頭參數width, height, viewportWidth, viewportHeight 沒用
3.把我們的前景圖path複製到安卓頭的後面~ 誒,果然比安卓頭還大(全填滿)

要我調整那個pathData像天書一樣,就算真的要調整有很多節點要調整~
也請UI工程師出了好幾次圖
唯一不會有問題的就是前景+背景整張圖. 那就不用出向量圖了啊.
後來爬文看到1個解法-前景圖內縮
<foreground>
    <inset
android:drawable="@drawable/ic_launcher_foreground"
android:inset="15%" />
</foreground>
搞了幾天,幾行收工.公司開發的APP就不方便貼上來了.紀錄一下,也希望能幫到有再研究的人

AS開發工具版本

開始開發Android, 經歷了Eclipse + adt , intellij(過渡期) , 現在的Android Studio 3.4.2
以前的優缺點就不分析了.谷歌也說了未來要寫Android 用它的工具支援度最高(跨平台不在這個文章討論)
SDK Platforms我裝了28,16,24,23, 21其實從這邊開始可裝可不裝.大部分開發app minSdk幾乎都是從21開始.

SDK Tools我裝了Build-Tools (這個可以不裝嗎?) 其他就預設的. LLDB,CMake 是以前有整合過C++的專案,不過後來也很少用了,可以不裝. Support Repository全裝.

倒是想說一點Intel x86 Emulator Accelerator(HAXM) 說是能讓intel cpu運行加速.
必裝-但不知道是不是我的mac太老太慢了,很無感. 模擬器跑起來還是很卡頓. 後來我都用真機測試~無所謂了

最後來看一下今年2019年中. Android sdk分佈
以前還有列出2.2 的咧.不見了~ 一般專案大部分會指定minSdk=19或21 開發. 大部分有搭配藍芽硬體, 但我都會希望從指定23這樣可以省了不少麻煩.
譬如Permission... notification, 不過每次版本更新都會這樣被虐習慣了.





2019-07-17

Android 強迫症發作-gradle紅色底線

相信很多開發者一定會發現gradle dependencies裡通常第一行support-v7 出現紅色底線
找了很多資料大概的意思是專案的(通常是新版本),有舊版本的support庫.發生衝突,阿咧.
這種情況,很嚴重?,又好像很不嚴重-編譯跑起來又正常啊. 但是有紅色底線就是不爽.以下為我的Support-v7的狀況

All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 28.0.0, 27.1.1. Examples include com.android.support:animated-vector-drawable:28.0.0 and com.android.support:support-media-compat:27.1.1 less... (⌘F1) 
Inspection info:There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion).
增加了support-media-compat:27.1.1 好了嗎? 並沒有. 又跳出下面

All com.android.support libraries must use the exact same version specification (mixing versions can lead to runtime crashes). Found versions 28.0.0, 27.1.1. Examples include com.android.support:animated-vector-drawable:28.0.0 and com.android.support:support-v13:27.1.1 less... (⌘F1) 
Inspection info:There are some combinations of libraries, or tools and libraries, that are incompatible, or can lead to bugs. One such incompatibility is compiling with a version of the Android support libraries that is not the latest version (or in particular, a version lower than your targetSdkVersion).
再加.
implementation 'com.android.support:support-v13:28.0.0'
疑,好了. 再把media-compat:27.1.1移除. 也沒紅底線了.

為了釐清是不是build有暫存Build-Clean Project ,然後Rebuild Project.
再重開Android studio再Rebuild竟然修好了.


Android舊專案-gradle問題

紀錄一下,通常舊專案-約莫2017,Android studio 3.0以前dependencies是用compile來引用
現在都要改implementation了
編譯的時候會讓你看到WARNING的紅字,對於有強迫症的人一定會馬上把它修正.
紅字的樣式...
來源參考開發者網址:https://developer.android.com/studio/build/dependencies?utm_source=android-studio#dependency_configurations
主要意思就是compile, apk 等要被棄用了~ 建議用對應的implementation ,或api.

轉換跑道滿5年心得

自從2014年5月開始寫Android以來一直始終如一.也滿5年了發個牢騷. 以前學生覺得電子科出來就是要做相關的工作,從生產技術員做到了小組長,生產組長. 了解生產了又怎樣.大環境真的不得不逼你要往上爬. 問題還是收入太少. 大家出來工作都是為了要賺錢.混口飯吃的嘛....