跳到主要內容

文章

Featured Post

Android studio gradle error: Duplicate class com.google.protobuf...

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':app:checkDebugDuplicateClasses'.
> 1 exception was raised by workers:
  java.lang.RuntimeException: Duplicate class com.google.protobuf.AbstractMessageLite found in modules jetified-protobuf-javalite-3.11.0.jar (com.google.protobuf:protobuf-javalite:3.11.0) and jetified-protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
...
  Duplicate class com.google.protobuf.LazyStringArrayList$ByteArrayListView found in modules jetified-protobuf-javalite-3.11.0.jar (com.google.protobuf:protobuf-javalite:3.11.0) and jetified-protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
  Duplicate class com.google.protobuf.LazyStringArrayList$ByteStringListView found in modules jetified-protobuf-javalite-3.11.0.jar (com.google.protobuf:protobuf-javalite:3.11.0) and jetified-protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
  Duplicate class com.google.protobuf.LazyStringList…
最近的文章

寫app真的是好選擇嗎?

最近因為admob收入大減,加上covid-19影響,百業蕭條,大家都縮減廣告行銷預算,自己又沒其他正職工作,專心設計app.(設計app超級累的)
但自己連房租都繳不出來, 感覺自己超可憐的。 今天為了省錢,只好去7-11搶快過期的7折便當來吃, 我都不好意思跟其他人講, 默默地難受著, 也不敢回家見爸媽,不敢打電話,把自己完全消失,因為沒錢給他們,只能叫他們自己想辦法,唉呀! 怎麼這麼慘啊,我也不知道為何會搞成這個樣子,明明努力的寫app,使用者人數也蠻多的,每天全世界都有約5萬人在用我設計的app,但廣告收入還是那麼一丁點,無法維持生活,怨恨google抽那麼多抽成,怨恨使用者都不喜歡廣告,其實我也不喜歡廣告,我自己設計的app都會儘量不使用那種突然彈出的全螢幕廣告,會騷擾到使用者,但相比其他app都是全螢幕插頁廣告不斷跳出,自己這種善意做法卻讓自己沒收入,苦哈哈。

辛苦設計app,日以繼夜不斷努力,但是收入卻是如此低,仔細比較,去7-11當臨時工不用甚麼技術賺的時薪都比這高很多。 好難過,培養了幾年的Android ,ios app設計能力,卻是如此無用。有時感覺自己真的撐不下去,很想放棄,不禁落淚。 新朋友千萬不要以為獨立研發寫app是好工作,錯,大錯特錯。

美國郵政ZIP Postal Code app

昨天有一個app上架啦! 美國的郵遞區號查詢app. 目前先設計android版的,看受歡迎程度再開發ios版本.
https://play.google.com/store/apps/details?id=xyz.markapp.usa_postal_zip



設計了一週的時間,非常久. 為甚麼會設計這App,主因是上次設計了台灣的郵遞區號app,但沒幾個人下載. 於是何不如設計人口較多的國家呢? 美國當然是第一首選.
但是設計完美國Zip後,又發現其實世界上第一大國是中國. 為何不設計中國的postal code/zip code查詢app?
於是今天又要開始設計中國的郵遞區號查詢app. 中國那麼大,為甚麼不設計?

接下來,來談談我們設計app要首選幾個國家?
上圖是世界上人口密集的都市,紅點是密集處. 設計app往人多的地方就對了啦. 只設計台灣的app的話實在是眼界不夠大啊. 台灣人口2358萬人(2020.6.)只佔世界人口0.3%,排名第56名. 實在非常少.
看下表人口排名:

有幾個國家我們完全不熟:很少注意到. 例如: 巴基斯坦Pakistan(官方語言:烏爾都語,英語),奈及利亞Nigeria(官方語言:英語),孟加拉Bengal(官方語言:孟加拉語).但他們加起來人口也有5億人啊!!!!! 印度也是用英語的,也有13億人, 設計app要設計英語的就是這樣,會觸及到這些英語的人口.
我們不要只從台灣看自己這個小地方,太過關注自己週遭,反而應該要多看看世界其他地方.







好可怕,現在共產黨已經入侵台灣了

打開小米官網, 點了一個產品,出現下列畫面,一個頭上有共產黨黨徽的小米兔子, 但這是小米台灣站喔

所以別人說買小米的手機會很危險, 資料都會被傳到....某地 然後如果你是名人,你的隱私都會被掌控. 萬一你那天登大位為大官,這些都將會變成是你的把柄. 這些疑慮都是可能的.

Google也發消費券了,因為Covid-19, Google ads發送了安撫Coupon,不知你收到了嗎?

在這世上的人都很冷漠,世態炎涼. 美國,香港還發生抗議活動,世界疫情大流行時,大家生活都很難過. 全球app開發者都歷經ecpm大幅下滑的慘劇,都快活不下去時, 而google佛心的對大家發送ads消費券了. 真的很感動,

雖然只是一點小小的金額,但是不無小補. 可以用來發送廣告.app 開發者可以用來刊登app廣告.推廣app. 其他人可以發送關鍵字廣告,推廣其他業務. 很好用啦!!!


還沒收到的人趕快去檢查喔. 每個人額度不一樣喔. 換言之,最近大家的admob revenue 可能會慢慢增加囉,因為Google ads發送coupon, 最後這些錢會有大部分都流到各種app中, 所以大家的admob收益在這之後個月都會增加喔.

short-circuit at OR (java)

在設計台灣郵遞區號app時,遇到一個問題:
if( datasave_zip.arr_save != null || datasave_zip.arr_save.size() > 0 )
{ Log.e(TAG, "bypass! zip array save != null.");return;}上面這段code 有沒有錯呢? 大家猜猜看.... .. 沒錯,一執行就當機了.  java.lang.NullPointerException: Attempt to invoke virtual method 'int java.util.ArrayList.size()' on a null object reference
        at com.mark.taiwanpostmailbox.zip.datasave_zip.parpare_zip_data(datasave_zip.java:58)


我一開始寫的時候,考慮到OR short-circuit. 所以當
datasave_zip.arr_save = null 時, 理論上第一個條件成立, 就不會判斷到第二個條件才對??!! ???
所以問題到底在哪裡呢? 為甚麼會當機呢?
答案在這啦:
There is only one case of short-circuiting for each operator, and they are:false && ... - it is not necessary to know what the right-hand side is because the result can only be false regardless of the value theretrue || ... - it is not necessary to know what the right-hand side is because the result can only be true regardless of the value there
所以說: || OR 只在true時才會short-circuit, 而在false時,不會short-circuit. .... 故上面的例子會判斷第二個條件,但arr_save==…

談談我對郭董的了解

對,今天我又來聊聊郭董了, 接下來就發表一個獨家照片.這張照片只有我有(因為不就是....)
你問我為什麼要聊他? 這不是廢話嗎? 他是台灣首富阿~不聊他聊誰啊.等你變有錢再請我去你身邊當你專屬顧問. 我當然希望他本人能看到這篇文章,不過他是不會回應的啦. 如果他記憶力不錯的話,應還是記得我.
我覺得台灣一百年來能出個郭董,張忠謀,王永慶,張榮發這幾位企業家真的不容易. (政治上出了李登輝)
讓我們身為台灣人真是驕傲. 你看看中國大陸,除了鄧小平之外,有哪個總書記真正為民著想. 而中國企業家也出了馬雲!!!!小米雷軍(打趴HTC). 當然我說這幾位不是為了要拍馬屁,是要大家去看他們的自傳,看看他們怎麼經營企業的. 記住我這一句話: "別人怎麼有錢,都不甘你的事!!". 你又不是他兒子,遺產又不會給你. 我們要學的是他們的理念,思考方法. 成功是可以被複製的.
這個照片中的場景有個故事, 就是郭董座位在最前面,下面有800人(鴻海股東會都在這開),他都會在前面批公文,台上就是員工在演講. 希望演講後能被公司提拔. 有次有個人在台上演講了三個小時,郭董都在下面聽. 儘管很多後面的人在打pass要他結束演講,但台上的人為了陞官,不願停止. 讓全場800多人都在聽台上那員工唬爛!!! 我一直在想郭董應該會生氣吧. 結果他不但沒生氣,還全場聽完! 神奇吧!! 看到這事我就覺得,如果是我的話就會馬上要求員工講重點,15min結束,這員工連講了3小時,中間還不給休息. 最後郭董不僅沒發飆還聽完,還給他評語. 所以那天我才知道.為何大家都會叫郭董"鐵人".
我們要學習一下這精神,有時候做一件事,不管是工作上,讀書上我們撐不下去時,累的時候,要想一想這郭董這精神. 不要一下就喊累,這員工連三小時的演講,就好像一個百般刁難的客戶,當你面對這種客戶時,還能忍下去,以得到訂單為主. 其他人可能就馬上開罵或終止了,但你撐到最後,成功就屬於你,郭董可以,你也可以成功的.
ps:我寫這篇就是跟app開發者有什麼關係呢? 有的,當你寫app時,實在太累,遇到瓶頸,debug太久? 沒資金時,撐不下去時. 想想這篇文章,可以幫助到您.





admob真是最爛的服務

今天又收到了三個admob發給我的警告
Site Behavior: Navigation

重點是這三個違規有兩個不能歸咎於我,有一個根本就是不知道那裡有錯... admob真是一直找app開發者麻煩. 如果有機會呼籲大家換到別家用.
1.其中一個是使用台鐵的opendata app,來查詢火車時刻表,這個opendata最近台鐵改版了,就不能用了,所以我被判違規,這合情合理,我沒意見.
2.第二個中國地鐵這個app,admob根本就不告訴我那裡有錯,讓我自己猜,真是爛的admob.這樣整開發者. 這個app有三個功能,我怎知那一個有問題,我一個一個測試都沒發現有問題,寫信給admob也不回信,真的這樣亂搞app開發者.害大家焦慮做白工???!

3.第三個這個更是不滿意,這今天內政部整個opendata都當了.你下面看到的所有opendata都當機了,無法連上. 時好時壞.這admob也判我違規,問題是這個我只能寫信給內政部叫他們穩定一點,錯誤不在我這.我要修也沒辦法修.
過了幾天,內政部opendata比較穩定了,我又更新確認app ok.. 請求審查,但admob還是給我判違規,我就很疑惑...
試問到底是因為下圖app截圖中"紅框連到電話"是不允許的,還是因為在他測試時台灣內政部的opendata又短暫當機所造成的, 但是admob policy violation都不會告訴你, 他讓app開發者自己去猜違規判定者的心思? 我們不知道修改那裡才是對的. 現在google play app審核要花很久,且一直重新上架會讓app審核者很煩,等會他就找你的app開刀. 然後admob又如此不友善的對待app開發者. 真的是很生氣又無奈.



內政部opendata server經常不穩定,實在是造成大家困擾. 整個政府中,內政部是opendata做的最差的,看看別人交通部,都有PTX,中央氣象局,觀光局都做得很好. 內政部的整天三不五時斷線,害我每天都收到一堆人評一顆星.

種種事情一直來,讓我覺得admob是在找我麻煩,不應該讓app開發者瞎子摸象,像無頭蒼蠅一樣亂竄. admob並不是像他們廣告中所述服務好,當然,下次他們發問卷給我,我一定會給最爛的評分.
一個app從開發到測試到上架,要耗費多大的精神在這邊, 但admob對app開發者如此不尊重,實在是非常不好.

呼籲各位app開發者,生氣是沒…

Android Distribution dashboard

update date: 2020/05/21


關於APP使用者人數為0的問題.

今天來寫這篇,關於APP使用者人數為0的問題. 心情沉重,我有些APP使用者人數為0!!! (基本上, 少於500就近似於0了)
當初花了很多心血設計的APP,經過一段時間後,安裝人數不如預期.


這些app可能都要放棄了,不更新了. 即便有新想法,想更新或加新功能看看,但是一個一個app更新,時間可能也會花上3個多月. 在沒有收入的情況下,是很危險的一件事.
該麼辦呢?有沒有人可以給我建議?我困擾好久了,一直找不到辦法... APP不是設計出來就沒事了 當我們的APP從發想開始,到雛形出現,上架後, 除了研發經費,投入的心力人力物力,都是非常多的.
此外,還需要大筆的宣傳經費.每個月不停地投廣告. 如果沒有花錢去行銷,那可能都是這樣.....app安裝數非常少. 我們不可能像Google一樣,他有品牌優勢,消費者認Google,所以他的app至少都有幾千萬安裝數或上億安裝數. 也不可能像facebook一樣是殺手級應用,不用宣傳,就有使用者使用. 一開始誰會知道...這是沒人用的APP? 是的,這問題大家都說,誰知道阿.千金難買早知道...如果事先知道,就把時間放在其他事上面了. 幸運的是有些人花費的精力不多, 不幸運的是有些公司花了幾百萬卻做出一個不到500人使用的app,比比皆是. 所以,快速試錯是很重要的事. 這跟創業一樣,當你有一個事業想法,常常一股腦就投入幾百萬,但過沒多久才發現最後沒幾個人用. 你看Google+就是這樣,做不贏Twitter, Facebook...及時懸崖勒馬,及時停止,省下大筆開支.並專注在自己擅長領域. (下圖:殺手級應用已佔據大多數使用者時間,一般人想再開發相同應用已不可能成功)

90% app開發者命運都掌握在google,apple, Facebook 手上. 因為只要Google or apple app store的演算法變動,都會影響你的app排名,當app排名下降,app就慢慢變沒人用了
facebook更不用說了, 優先貼文,決定你的app曝光率. 所以我才說, 90%的開發者都是窮的,而且被人掐著脖子走. 各位新進有想要開發APP的人,要投入金錢前要先想好一件事? 是安安穩穩上班領年薪好? 還是要過這種膽顫心驚的日子?
如果只是寫寫APP過過癮,分享,不以營利為目的,是可以試試. 但如果要靠這過生活,真的不建議. 透過APP賺錢真的很難,比買賣商品實體或製造業都難. 真的…