2015-01-03

App Inventor 2 寫不出來的 Android APP 是 ?

阿舍對於用 Android 原生的 SDK 來寫手機 App 的這件事,一直都沒有很有興趣,大概是因為在很早以前接觸的時候,覺得用 Android SDK 來寫程式很麻煩,所以,那個印像就一直存在阿舍的心中,因此,也就一直有理由不好好學用 Android SDK 來寫手機的 App 哩 ! 然後,又發現有這個 App Inventor 2  (簡稱 AI2 )之後,就又有理由不去學 Android SDK 了 ... 不過,世事無完美,可惜這個 App Inventor 2 有那麼一點點的缺憾哩 ! ....

AI2 的程式碼是用拼圖的方式來寫的

阿舍覺得用這個 App Inventor 2 來寫 Android 手機的 App 真是十分的方便,只要拖一拖和拉一拉就可以拼出一支手機的 App 出來,而且,連手機上的藍牙、感應器、相機、聯絡人 ... 等等的一堆功能都可以很簡單的運用在 App 裡,所以,阿舍很快的就可以弄出想要的 Android App 來玩玩,對於沒有程式設計背景的人或是需要快速做出 App 原型的人來說,App Inventor 2 真的十分的方便哩 !

不過,就像阿舍前面提到的,世事無完美,還是有一些類型的 App 不適合用 App Inventor 2 來開發的,以下是阿舍用過後,對於用 App Inventor 2 開發手機的一些想法,提供給有想要使用 App Inventor 2 來開發手機 App 的人參考囉 !

  • 不支援背景執行程式

App Inventor 2  開發的 Android  App 目前只能在前景執行,一旦切換軟體或手機進入螢幕保護或自動上鎖時,這個 App Inventor 2 所開發出來的 App 就不會執行了,所以,目前的 App Inventor 2 不適合用來開發需要在背景執行或服務型的,可以自動躲在背進行偵測或運算及通知的 App 哩 !

  • 不容易整合外部 SDK 或元件

App Inventor 2 是有提供方法及教學來讓有需要的人來將 App Inventor 2 沒有支援的元件或外部的 SDK 給整合進來,不過,這不是件容易的事,因為,這等同是在寫一個新的 App Inventor 2 的元件,所以,需要對 Andorid SDK 和 Android App 的開發有瞭解才有辦法的,因此,如果有遇到沒支援的元件時,就會有點麻煩的 .....

  • 無法置入 AdMob 廣告

雖然是可以用一個 WebView 元件來把 Adsense 的廣告顯示在 App 裡,不過,這個是違反 Adsens 的規則的,如果想要在手機的 App 上顯示廣告的話,依 Google 的規訂,必需是要透過 Admob 服務的 API 來提供,但是, App Inventor 2 原廠沒有提供這個元件,所以,如果是想寫個會顯示廣告的 App 的話,那就不太合適了哩 !

  • 不容易進行離線開發

最快㤦用 App Inventor 2 的方法就是用 Google 的帳號來登入到 App Inventor 2 的網站來進行開發,這是免費的,不過,這種方式會把開發的東西都放在 App Inventor 2 的網站,而如果想要自己弄一個 App Inventor 2 在自己公司或個人電腦上來用,也是可以的,但是,就是要自己架一個 App Inventor 的網站哩 !  ( App Inventor 2 官方有提供安裝說明 )

  • 不適合開發大型 App 

App Inventor 2 的最大特色之一,就是可以用拼圖的方式來拼出程式,這對比較沒有程式設計經驗的人來說,是很方便的設計,但是,也因為這樣,當程式碼變的龐大時,就不好維護和撰寫了囉!

以上大概就是阿舍遇到的幾個問題,不過,阿舍不是在說 App Inventor 2 不好用,相反的,阿舍覺得,用 App Inventor 2 來寫手機 App 真的是超方便的,只要善用創意,就可以很快的寫出好玩、好用的 App 哩! 而且,阿舍也非常的希望 iOS 也能有這樣的工具哩 ! ...


更新 :
App Inventor 已經有不少的擴充功能,可以到下列網址找找看有沒有可以用的功能。

https://puravidaapps.com/extensions.php



推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

8 則留言 :

Unknown 提到...
作者已經移除這則留言。
Unknown 提到...

不容易整合外部 SDK 或元件...

可將方法mail給我嗎?我想在inventor2裡加入另外寫的java程式(pudding480@gmail.com)

Unknown 提到...

或者可以用app inventor2寫出在程式裡用的懸浮窗嗎

Arthur 提到...

Hello,

AI2 可以透過 Extension 的方式來新增元件,請參考下列文章的說明 ....

http://ai2.appinventor.mit.edu/reference/other/extensions.html

另外,也可以到下面的教學網址看看有沒有合適的做法可以應用哩 ....

http://appinventor.mit.edu/explore/ai2/tutorials.html

供參囉 ! ... ^^=

Unknown 提到...

想問一下,因為我是程式設計新手,app inventor2可以寫的出uber嗎?

Unknown 提到...

謝謝你我覺得你寫出很多重要的問題點
很有參考價值

最早看看 提到...

背景處理已經可以解決了,上網搜尋 app inventor Notification Extension
就可以找到英文網頁,英文能力可以不用太好,因為它有圖片說明 跟懂簡易單字就好

Arthur 提到...

Hello,

謝謝提供實用資訊 ... ^^=

張貼留言

歡迎留言提問和討論 .... 😁