Windows App 開發嘉年華 心得


Windows App 開發嘉年華開趴 挑戰25萬獎學金

其實這次是去玩的,從一開始目標就不是要得獎,而是想知道別人在幹嘛,包括:
  1. 我想知道微軟那邊PM的想法,他們希望開發者能有怎樣的作品
  2. open data 會不會變成一個趨勢?我想這是必然的,那麼Metro有哪幾支APP有用到open API了呢?
  3. 我也想知道目前有在做MetroAPP的公司有哪幾家!除了不支援Windows就死定了的訊連、趨勢、HTC....會不會還有哪幾家也在鴨子划水
  4. 最重要的是DEMO的時候可以看到別人對於Metro這個市場端出來的作品。

        所以囉!規劃架構的時候,就想了一個小不隆冬的企劃,我估計要是用 iOS我自己來寫的話,半小時到兩小時內一定可以完成。我才沒有想要在那邊過夜呢!
        也或許是太輕鬆了,所以一到會場組員開始寫code的時候,我正在看<雲圖>,其中有一段是兩個男的裸體在床上一起蓋一條棉被,剛好大會的攝影機在拍我那邊,我還以為這篇文章最上面的那個連結會變成 " 羞恥!在Hackthon看Gay片的選手"之類的,真是嚇死我了。

一開始不能上網,我們吃完午餐就跑去肯德雞寫了。



現場最矚目的焦點,唯一一組帶直立式桌機的,桌上還放著一本犀牛本
其他組大多是用筆電,有幾個用準系統


作品太爛了,莫再提~~
梗也很爛,DEMO的時候都沒人笑我好難過,

簡單說一下我觀察到的重點好了:
  • Metro還是一片藍海,競爭者少、但使用者也少,很值得一試。
  • 承上,微軟不支援上一代系統已有先例(還不止一次),所以phone 8 的APP未來很有機會變孤兒,要做就做Metro。
  • 如果很怕踏進去陷下去死蹺翹的話,身為程式開發者,要專注的是可以跨平台的應用,用制訂好的protocol來發展,像是DLNA、OAuth、SSL,實際案例就像是今天看到一組很厲害的stream sync。最後如果Metro失敗了,要跳出來也沒這麼難。
  • 有很多人也跟我想的一樣,是來測水溫的,難怪今天看到一些web社群的朋友。
此外,會場門口有Nokia 920的Demo櫃臺,920的夜拍功能實在是太強了、還有無線充電也很厲害。

別人的心得:
http://www.dotblogs.com.tw/shadow/archive/2012/12/31/86391.aspx
看完才發現來了一堆微軟MVP


申請apple 企業帳號注意事項

用途是發佈In House Distribution,不用送審就可以發佈,device數量沒有限制,
要安裝的時候除了要給ipa以外還要給provision

apple  提供的DUNS lookup
https://developer.apple.com/support/ios/D-U-N-S.html

先看完這一篇,台灣除了申請DUNS不太一樣,其他都是一樣
http://blog.csdn.net/kmyhy/article/details/6418280

如果是偽分公司,像是英屬維京群島商台灣分公司這樣的,千萬不要寫Taiwan Branch,不然會失敗。

鄧百氏台灣窗口  02-27172523
Apple 開發者窗口  0800-022237
iTunes 改發票    0800020021
iTunes改發票(香港) 002-852-800908988

查詢DUNS碼
http://www.dunsregistered.com/


cocoaTaipei share: IAP 攻防戰



這是原本公司內部分享的topic,把他修正一下變成今晚的slide
原本以為會被噓爆的,所以把code都刪掉了,
不過用流程圖代替,應該也是看得懂吧!

今晚發生遇到很多熱血的人、聽了很多有趣的topic,可惜都短短的沒辦法深聊
今天有五個topic實在是太多了,結束都9點多了
像node.js一樣兩個禮拜一次,一次一個topic 好像比較好,
9點結束可以聊到10點半,但是場地就難橋了
收入場費可能是一種解法

每次去cocoaTaipei都好像是二轉一樣,
第一次去的時候寫了超長的心得文給部門同事,
是想要推廣叫大家一起來的,想不到努力了半年還是沒什麼用QQ

Pro iOS Apps Performance Optimization

CocoaChina上面好心人的翻譯計畫

線上看全文

source code 連結

還有另一本叫Pro Android Apps Performance Optimization,丟給同事叫他看,看完寫讀書心得。

以下是大概介紹跟心得:

  • ch1 大綱,略
  • ch2 介紹基本Debug tool,apple後來還有出很多有用的工具,大概是來不及加進去
  • ch3. 最佳化UITableView
  • ch4 data 和image cache
  • ch5 加上一些演算法跟資料結構吧
  • ch6 多執行序:GCD
  • ch7 記憶體管理
  • ch8 多執行序和記憶體管理進階
  • ch9 用原生C++/C來增加效能
  • ch10 Android 和Windows Phone 增加performance的issue :當故事書看看就好

重點都在3~9

心得還在整理.....

App Store Review Guidelines

https://developer.apple.com/appstore/resources/approval/guidelines.html
看一次就夠了,雖然Guidelines裡面有寫什麼什麼不能做,但是做了沒被發現,
還是可以上架的喔!

我猜今年不會再更新了吧~

1. Terms and conditions

1.1
As a developer of applications for the App Store you are bound by the terms of the Program License Agreement (PLA), Human Interface Guidelines (HIG), and any other licenses or contracts between you and Apple. The following rules and examples are intended to assist you in gaining acceptance for your App in the App Store, not to amend or remove provisions from any other agreement.
2. Functionality

2.1
Apps that crash will be rejected
2.2
Apps that exhibit bugs will be rejected
2.3
Apps that do not perform as advertised by the developer will be rejected
2.4
Apps that include undocumented or hidden features inconsistent with the description of the App will be rejected
2.5
Apps that use non-public APIs will be rejected
2.6
Apps that read or write data outside its designated container area will be rejected
2.7
Apps that download code in any way or form will be rejected
2.8
Apps that install or launch other executable code will be rejected
2.9
Apps that are "beta", "demo", "trial", or "test" versions will be rejected
2.10
iPhone Apps must also run on iPad without modification, at iPhone resolution, and at 2X iPhone 3GS resolution
2.11
Apps that duplicate Apps already in the App Store may be rejected, particularly if there are many of them, such as fart, burp, flashlight, and Kama Sutra Apps.
2.12
Apps that are not very useful, unique, are simply web sites bundled as Apps, or do not provide any lasting entertainment value may be rejected
2.13
Apps that are primarily marketing materials or advertisements will be rejected
2.14
Apps that are intended to provide trick or fake functionality that are not clearly marked as such will be rejected
2.15
Apps larger than 50MB in size will not download over cellular networks (this is automatically prohibited by the App Store)
2.16
Multitasking Apps may only use background services for their intended purposes: VoIP, audio playback, location, task completion, local notifications, etc.
2.17
Apps that browse the web must use the iOS WebKit framework and WebKit Javascript  不然還有哪招?
2.18
Apps that encourage excessive consumption of alcohol or illegal substances, or encourage minors to consume alcohol or smoke cigarettes, will be rejected  菸酒犯罪的不行
2.19
Apps that provide incorrect diagnostic or other inaccurate device data will be rejected
不能虎爛假的device data
2.20
Developers "spamming" the App Store with many versions of similar Apps will be removed from the iOS Developer Program
2.21
Apps that are simply a song or movie should be submitted to the iTunes store. Apps that are simply a book should be submitted to the iBookstore.
2.22
Apps that arbitrarily restrict which users may use the App, such as by location or carrier, may be rejected
2.23
Apps must follow the iOS Data Storage Guidelines or they will be rejected
2.24
Apps that are offered in Newsstand must comply with schedules 1, 2 and 3 of the Developer Program License Agreement or they will be rejected
2.25
Apps that display Apps other than your own for purchase or promotion in a manner similar to or confusing with the App Store will be rejected
3. Metadata (name, descriptions, ratings, rankings, etc)

3.1
Apps or metadata that mentions the name of any other mobile platform will be rejected
3.2
Apps with placeholder text will be rejected
3.3
Apps with descriptions not relevant to the application content and functionality will be rejected
3.4
App names in iTunes Connect and as displayed on a device should be similar, so as not to cause confusion
3.5
Small and large App icons should be similar, so as to not to cause confusion
3.6
Apps with App icons and screenshots that do not adhere to the 4+ age rating will be rejected
3.7
Apps with Category and Genre selections that are not appropriate for the App content will be rejected
3.8
Developers are responsible for assigning appropriate ratings to their Apps. Inappropriate ratings may be changed/deleted by Apple
3.9
Developers are responsible for assigning appropriate keywords for their Apps. Inappropriate keywords may be changed/deleted by Apple
3.10
Developers who attempt to manipulate or cheat the user reviews or chart ranking in the App Store with fake or paid reviews, or any other inappropriate methods will be removed from the iOS Developer Program
3.11
Apps which recommend that users restart their iOS device prior to installation or launch may be rejected
3.12
Apps should have all included URLs fully functional when you submit it for review, such as support and privacy policy URLs
4. Location

4.1
Apps that do not notify and obtain user consent before collecting, transmitting, or using location data will be rejected
4.2
Apps that use location-based APIs for automatic or autonomous control of vehicles, aircraft, or other devices will be rejected
4.3
Apps that use location-based APIs for dispatch, fleet management, or emergency services will be rejected
4.4
Location data can only be used when directly relevant to the features and services provided by the App to the user or to support approved advertising uses
5. Push notifications

5.1
Apps that provide Push Notifications without using the Apple Push Notification (APN) API will be rejected
5.2
Apps that use the APN service without obtaining a Push Application ID from Apple will be rejected
5.3
Apps that send Push Notifications without first obtaining user consent will be rejected
5.4
Apps that send sensitive personal or confidential information using Push Notifications will be rejected
5.5
Apps that use Push Notifications to send unsolicited messages, or for the purpose of phishing or spamming will be rejected
5.6
Apps cannot use Push Notifications to send advertising, promotions, or direct marketing of any kind
5.7
Apps cannot charge users for use of Push Notifications
5.8
Apps that excessively use the network capacity or bandwidth of the APN service or unduly burden a device with Push Notifications will be rejected
5.9
Apps that transmit viruses, files, computer code, or programs that may harm or disrupt the normal operation of the APN service will be rejected
6. Game Center

6.1
Apps that display any Player ID to end users or any third party will be rejected
6.2
Apps that use Player IDs for any use other than as approved by the Game Center terms will be rejected
6.3
Developers that attempt to reverse lookup, trace, relate, associate, mine, harvest, or otherwise exploit Player IDs, alias, or other information obtained through the Game Center will be removed from the iOS Developer Program
6.4
Game Center information, such as Leaderboard scores, may only be used in Apps approved for use with the Game Center
6.5
Apps that use Game Center service to send unsolicited messages, or for the purpose of phishing or spamming will be rejected
6.6
Apps that excessively use the network capacity or bandwidth of the Game Center will be rejected
6.7
Apps that transmit viruses, files, computer code, or programs that may harm or disrupt the normal operation of the Game Center service will be rejected
7. Advertising

7.1
Apps that artificially increase the number of impressions or click-throughs of ads will be rejected
7.2
Apps that contain empty iAd banners will be rejected
7.3
Apps that are designed predominantly for the display of ads will be rejected
8. Trademarks and trade dress

8.1
Apps must comply with all terms and conditions explained in the Guidelines for Using Apple Trademarks and Copyrights and the Apple Trademark List
8.2
Apps that suggest or infer that Apple is a source or supplier of the App, or that Apple endorses any particular representation regarding quality or functionality will be rejected
8.3
Apps which appear confusingly similar to an existing Apple product or advertising theme will be rejected
8.4
Apps that misspell Apple product names in their App name (i.e., GPS for Iphone, iTunz) will be rejected
8.5
Apps may not use protected third party material such as trademarks, copyrights, patents or violate 3rd party terms of use. Authorization to use such material must be provided upon request.
9. Media content

9.1
Apps that do not use the MediaPlayer framework to access media in the Music Library will be rejected
9.2
App user interfaces that mimic any iPod interface will be rejected
9.3
Audio streaming content over a cellular network may not use more than 5MB over 5 minutes
9.4
Video streaming content over a cellular network longer than 10 minutes must use HTTP Live Streaming and include a baseline 64 kbps audio-only HTTP Live stream
10. User interface

10.1
Apps must comply with all terms and conditions explained in the Apple iOS Human Interface Guidelines
10.2
Apps that look similar to Apps bundled on the iPhone, including the App Store, iTunes Store, and iBookstore, will be rejected
10.3
Apps that do not use system provided items, such as buttons and icons, correctly and as described in the Apple iOS Human Interface Guidelines may be rejected
10.4
Apps that create alternate desktop/home screen environments or simulate multi-App widget experiences will be rejected
10.5
Apps that alter the functions of standard switches, such as the Volume Up/Down and Ring/Silent switches, will be rejected
10.6
Apple and our customers place a high value on simple, refined, creative, well thought through interfaces. They take more work but are worth it. Apple sets a high bar. If your user interface is complex or less than very good, it may be rejected
11. Purchasing and currencies

11.1
Apps that unlock or enable additional features or functionality with mechanisms other than the App Store will be rejected
11.2
Apps utilizing a system other than the In-App Purchase API (IAP) to purchase content, functionality, or services in an App will be rejected
11.3
Apps using IAP to purchase physical goods or goods and services used outside of the application will be rejected
11.4
Apps that use IAP to purchase credits or other currencies must consume those credits within the application
11.5
Apps that use IAP to purchase credits or other currencies that expire will be rejected
11.6
Content subscriptions using IAP must last a minimum of 7 days and be available to the user from all of their iOS devices
11.7
Apps that use IAP to purchase items must assign the correct Purchasability type
11.8
Apps that use IAP to purchase access to built-in capabilities provided by iOS, such as the camera or the gyroscope, will be rejected
11.9
Apps containing "rental" content or services that expire after a limited time will be rejected
11.10
Insurance applications must be free, in legal-compliance in the regions distributed, and cannot use IAP
11.11
In general, the more expensive your App, the more thoroughly we will review it
11.12
Apps offering subscriptions must do so using IAP, Apple will share the same 70/30 revenue split with developers for these purchases, as set forth in the Developer Program License Agreement.
11.13
Apps that link to external mechanisms for purchases or subscriptions to be used in the App, such as a 「buy」 button that goes to a web site to purchase a digital book, will be rejected
11.14
Apps can read or play approved content (specifically magazines, newspapers, books, audio, music, and video) that is subscribed to or purchased outside of the App, as long as there is no button or external link in the App to purchase the approved content. Apple will not receive any portion of the revenues for approved content that is subscribed to or purchased outside of the App
11.15
Apps may only use auto renewing subscriptions for periodicals (newspapers, magazines), business Apps (enterprise, productivity, professional creative, cloud storage) and media Apps (video, audio, voice), or the App will be rejected.
12. Scraping and aggregation

12.1
Applications that scrape any information from Apple sites (for example from apple.com, iTunes Store, App Store, iTunes Connect, Apple Developer Programs, etc) or create rankings using content from Apple sites and services will be rejected    這我們幹過XD
12.2
Applications may use approved Apple RSS feeds such as the iTunes Store RSS feed   可以偷吃步
12.3
Apps that are simply web clippings, content aggregators, or a collection of links, may be rejected
13. Damage to device

13.1
Apps that encourage users to use an Apple Device in a way that may cause damage to the device will be rejected
13.2
Apps that rapidly drain the device's battery or generate excessive heat will be rejected 
有寫在description就沒事

14. Personal attacks

14.1
Any App that is defamatory, offensive, mean-spirited, or likely to place the targeted individual or group in harms way will be rejected   這我猜有寫description也可以
14.2
Professional political satirists and humorists are exempt from the ban on offensive or mean-spirited commentary
15. Violence  暴力行為 跟賭博有關的一律reject,但是大陸....

15.1
Apps portraying realistic images of people or animals being killed or maimed, shot, stabbed, tortured or injured will be rejected
15.2
Apps that depict violence or abuse of children will be rejected
15.3
"Enemies" within the context of a game cannot solely target a specific race, culture, a real government or corporation, or any other real entity
15.4
Apps involving realistic depictions of weapons in such a way as to encourage illegal or reckless use of such weapons will be rejected
15.5
Apps that include games of Russian roulette will be rejected
16. Objectionable content

16.1
Apps that present excessively objectionable or crude content will be rejected
16.2
Apps that are primarily designed to upset or disgust users will be rejected
17. Privacy

17.1
Apps cannot transmit data about a user without obtaining the user's prior permission and providing the user with access to information about how and where the data will be used
17.2
Apps that require users to share personal information, such as email address and date of birth, in order to function will be rejected
17.3
Apps that target minors for data collection will be rejected
18. Pornography  跟性有關的不行

18.1
Apps containing pornographic material, defined by Webster's Dictionary as "explicit descriptions or displays of sexual organs or activities intended to stimulate erotic rather than aesthetic or emotional feelings", will be rejected
18.2
Apps that contain user generated content that is frequently pornographic (ex "Chat Roulette" Apps) will be rejected
19. Religion, culture, and ethnicity

19.1
Apps containing references or commentary about a religious, cultural or ethnic group that are defamatory, offensive, mean-spirited or likely to expose the targeted group to harm or violence will be rejected
19.2
Apps may contain or quote religious text provided the quotes or translations are accurate and not misleading. Commentary should be educational or informative rather than inflammatory
20. Contests, sweepstakes, lotteries, and raffles

20.1
Sweepstakes and contests must be sponsored by the developer/company of the App
20.2
Official rules for sweepstakes and contests, must be presented in the App and make it clear that Apple is not a sponsor or involved in the activity in any manner
20.3
It must be permissible by law for the developer to run a lottery App, and a lottery App must have all of the following characteristics: consideration, chance, and a prize
20.4
Apps that allow a user to directly purchase a lottery or raffle ticket in the App will be rejected
21. Charities and contributions

21.1
Apps that include the ability to make donations to recognized charitable organizations must be free
21.2
The collection of donations must be done via a web site in Safari or an SMS
22. Legal requirements

22.1
Apps must comply with all legal requirements in any location where they are made available to users. It is the developer's obligation to understand and conform to all local laws
22.2
Apps that contain false, fraudulent or misleading representations or use names or icons similar to other Apps will be rejected  防抄襲嗎XD
22.3
Apps that solicit, promote, or encourage criminal or clearly reckless behavior will be rejected
22.4
Apps that enable illegal file sharing will be rejected  
22.5
Apps that are designed for use as illegal gambling aids, including card counters, will be rejected
賭的也不行
22.6
Apps that enable anonymous or prank phone calls or SMS/MMS messaging will be rejected
不可以直接用APP做,但可以用APP叫SEVER做
22.7
Developers who create Apps that surreptitiously attempt to discover user passwords or other private user data will be removed from the iOS Developer Program
22.8
Apps which contain DUI checkpoints that are not published by law enforcement agencies, or encourage and enable drunk driving, will be rejected   這條看不懂QQ
Living document

This document represents our best efforts to share how we review Apps submitted to the App Store, and we hope it is a helpful guide as you develop and submit your Apps. It is a living document that will evolve as we are presented with new Apps and situations, and we'll update it periodically to reflect these changes.

Thank you for developing for iOS. Even though this document is a formidable list of what not to do, please also keep in mind the much shorter list of what you must do. Above all else, join us in trying to surprise and delight users. Show them their world in innovative ways, and let them interact with it like never before. In our experience, users really respond to polish, both in functionality and user interface. Go the extra mile. Give them more than they expect. And take them places where they have never been before. We are ready to help.

© Apple, 2012

清大ERP課程演講 mobileAPP開發甘苦談與ERP上的應用


email那邊 hiiir 少打一個i,好像keynote沒轉好


12/4 回清大ERP演講的投影片

想講的東西太多了,一開始就知道不可能全部講完,所以在最後一頁做了選項讓同學選想聽的。
可惜跟ERP最有關係的big data沒有講到,平常我們會遇到很多跟寫code沒關係但是有很重要的問題,像是設計使用者操作步驟、巨量資料的處理分析、時程規劃、進度爆炸怎麼辦之類的問題。
最近這一個月都在讀UX的書,雖然找了很多資料,但是還沒有把它整理完整,新的東西一直出來是其中一個原因,但主要還是因為沒空XD









2012台北遊戲App開發者論壇 DAY2 brief


App遊戲產業高峰座談(II)
  • 國外遊戲業者9成都發在iOS平台上,想一想為什麼?
  • Android除了要搞定一堆device外,還要想payment的問題!
  • 人少想賺錢最好focus在iOS上就好
  • cytus 用unity 4個月搞定iOS 1.0版,又花了3個月做出Android版
  • David:大陸做事是沒有底線的 ex:都仿造 只做網游
  • 中國iOS Android 遊戲比例1:9 ; 因為中國iOS有第二個渠道:91
  • 中國Android Device是iOS三倍,歐美是7:3
  • 為了因應中國開發,所以自己開發工具: objc畢業生起薪1萬,c++畢業生6000 8000就請得到了
  • 常常有員工自己跳出來變工作室,打敗原公司,我今年聽過的就三間了....聽不到的就不知道有多少了
  • 成吉思汗2萬塊人民幣就可以買到source code,其他很多排行榜遊戲都是改這份code來的

與cytus製作人聊天,跟偶像見面超爽的!學到很多音樂遊戲製作技巧,他果然也是寫一個規則表來出球。








亞洲地區遊戲App市場現況與展望  溫浩邦(北京觸控)
  • 他超謙虛的
  • 捕魚達人大概有1億兩千萬激活量
  • 北京觸控的前生是CocoaChina ,我每天都有看喔!
  • 在中國賺了第一筆錢不要放在口袋,因為別人很快就會山寨,最好是拿去投資,防堵別人
  • 投資cocos2d-x !為了打擊盜版:為什麼我明明是做iOS 為什麼Android一下就有盜版了呢!?
  • 現在策略是先上Android再做iOS的
  • 今年八月上捕魚達人二的事後發現Android開始可以賺到錢了
  • 結束後投影片會公開所以不用拍照沒有關係XD
  • 透過捕魚達人的數據可以了解市場Device分布
  • Android增加速度比iOS快
  • 中國用戶開始習慣不破解!
  • 4.0成長快速,Android 2.3還是占六成
  • 迪士尼的鱷魚洗澡....遍佈散花
  • 個人開發者減少,28% -->10%。 小公司都變成大公司惹
  • 中國用戶平均使用使間、開啟次數都比其他國家高,但黏著度也低
  • 開啟時間3分鐘以內占六成
  • 700y rmb 20% iOS 3rd 50% Carries 30%
  • 網游跟mobileAPP結合會變趨勢!
明年預估:

  • 單平台收入可達5000萬rmb
  • 單一遊戲收入可以達到3000萬rmb

日本市場
  • iOS Android 1:2
  • 有40%的人有智慧手機
  • 日本的人際關係交往是靠心跟心在交流XD,韓國人際關係六度分隔散佈超快!
  • 所以日本市場除了靠社群網路以外,產品本身的創意要夠
韓國市場
  • 52%的人有smart phone
  • iOS Android 2:7
  • 他們google play已經解禁了 (好龍兵不用負責嗎!)
  • 上線後一個月之內事後登錄註冊
  • 市場相對封閉性高、付費習慣非常好、線上遊戲影響力強
kakao talk ;Line 好朋友
越南智慧手機是高社經地位代表 (差點打錯字XD)
印尼java game還活得很好,SNS用戶多

QA:
  • 預計2013年中國政府開始會出一些政策來限制~~
  • cocos2d-x 支持windows phone ,但他也要努力阿QQ 不需要花太多心思在上面,找一個自己覺得適合的時間再跳進去
  • GREE 跟DNA進來了,DNA主要是幫日本遊戲帶到國內....但是找錯人了,有很多潛規則
  • GREE 沒有greenPhone 日後會GG
  • 進大陸市場不要想靠人人,應該跟別人合作



Tapjoy

  • 平常就在聽,略。





iOS遊戲開發實戰經驗--從0到2000萬 華大衛(北京百酷門 CEO)

  • 04年到北京做RD.....09年創業2->17人
  • iSHUFFLE BOARD ,IAP 09年iphone還沒進去中國
  • 國外受歡迎題材:FPS 賽車 運動 電影
  • 2010 全球事件可以帶來營銷,好像有搞頭!
  • 把守門員移走....被罵奸商...但是就賺錢了
  • 2010 apple開始IAP
  • 透過產品線的戰略模式,收入大增
  • 我在2011做捕魚達人山寨,輸給捕魚達人其他山寨,現在已經有200多款了
  • 不要care用戶能不能接受IAP的價格,定價要殘忍 100塊也可以! by cocoaChina COO
  • 賺錢了就擴人,擴到跟收入一樣高,再賺就再擴
  • 簡單,能帶來樂趣就好!
  • 只吃能吃到的蛋糕 Ex 只做足球1對1pk
  • eXtreme programing 製作人+程序員+美術  兩個月一定可以搞定
  • 累積開發技術!Ex 粒子+物理碰撞+shader 
  • 新遊戲約有30%是用舊的招式
  • 測試人員:1.不玩遊戲的女孩子 2.媽媽 老人  3.三歲的小孩    這三種一定要測過不能卡關
  • 用戶根本不會遵造你的想法,= =川,用戶不會買單的~
  • 不需要給會玩遊戲的人玩
族群定位
  • 以前喜歡打保的人,現在找不到保齡球館,
  • 三到六歲的小男生,超愛車
QA 設計計費模式小技巧!
  • 下一個一定是上一個的兩倍以上貴
  • 下一個一定是上一個的2.5倍以上
  • 最後一個可以給大一點bonus 比如說1塊錢10金幣  100塊錢1500金幣








如何設計一款具高度創意及特殊視覺效果的App遊戲  東江亮 (Ryo Agarie)





App遊戲跨平台開發 揚子弘(聖騎科技 遊戲製作人)
  • 我在Tapjoy顧攤位沒聽到,以下是巴哈的文章
http://gnn.gamer.com.tw/7/74117.html


2012台北遊戲App開發者論壇 DAY1 brief

2012台北遊戲App開發者論壇
    
因為我們公司是贊助廠商之一,所以拿到名額可以進來聽,位置還在最前面,超爽的,
自己報名還要花1500,代價是進度要六日趕回來!






App遊戲產業高峰座談(I)
  • iOS最賺錢的開發商EA 有962款遊戲,第二名的荷蘭公司只有兩款(應該不用說是誰了吧)
  • 一個好的遊戲必須在兩分鐘內讓使用者上手
  • 大陸做web game有1000多家,做smart phone game還不多,有的也是新進者
  • 台灣目前最大的武器就是便宜又優質的人力  (馬英九不用負責嗎)
  • 中國大陸遊戲出得也快死的也快  最快有聽過18天完成一款遊戲的
  • 有規模的遊戲公司從設計到上線有3000多道工序,大公司有時候都會不知所措,更何況小公司獨立開發者:解法就是要多參加網聚
  • 不要以為一個遊戲100美金沒人買....(邪道)?
  • 09年藍海 10年紅海 現在已經變熔岩惹,誰進來誰死,北京成都加一加至少有1萬家公司
  •  台灣公司比較熟悉美國、日本市場,建議往這兩塊發展
  • 不可能迎合所有玩家,要選擇一個市場做自己擅長的東西
  • 山寨是種模式、創新也是種模式





音樂遊戲App的成功戰略企劃
  • 我也是有讀lean startup的
  • app命名法則:簡短、聽起來很厲害、要容易理解
  • 在公司內外都要避免使用專業術語
  • 五種行銷手法:新聞稿、社群網路、app交互推廣、研究排名機制、搜尋關鍵字
改變生活的觀點:
  1. 瞄準1x~2x歲族群
  2. 與其注意大都市,更應該看其他城市:偶而去鄉下走走
  3. 和別人做不一樣的東西
  4. 去做無所謂的事=放手去玩
  5. 和不同業界的人交流,激發靈感





Unity引擎行動開發技術分享-Unity4.0 正式發佈
  • 為什麼要用Unity 不用cocos2d ?如下
  • 他3D做得比較好!銀灰色的國王2
常犯的錯誤:
  • 以為programmer可以搞定一切,才不呢!美工才是最重要的
  • programmer應該檢查美工對於美術規範做出來的成品
  • 針對遊戲邏輯/cpu做的優化比 GPU做的優化 cp直來得高
具體:
  • 面數<2000 nbsp="nbsp">
  • 紋理對效率影響最大
  • 一般不應該過6種shader,2 到3個shader就夠用惹
  • 盡量用box sphere來逼近mesh 形狀做碰撞,不行才用mesh collider
  • 分層管理:分成大物件層、中物件層、小物件層,並未不同物件做不同距離才顯示
  • 靜態物體要標stastic 
  • 要嚴格控制光源數量,平行光  per pixel lighting不應該超過一
  • 遠距離的東西 update farme rate 設成5秒更新一次就好
  • 優化cp值排序:studio ;n frame更新  ;every frame更新  ;GPU
4.0 更新內容:看tutorial 就好

感想:做2D遊戲還是用cocos2d就好,3D才需要用到Unity




InMobi 另一個promotion tool
  • 60%的app是沒有賺錢的  30%的APP載下來開一次就被刪掉了
  • 提高大家對產品的認識
  • rich media 廣告的點擊率是最高的
  • 保持app在50Mb以下
  • 一般使用者在決定要不要下載只會花三秒
如何擴大業務&加強廣告宣傳:
  • 持續最佳化 計算cost per download 來計算哪種廣告效果最好,提昇ROI
  • 哇靠他的數字爛暴了也敢拿出來講!






將你製作的遊戲販售至全世界所需的要素
  • http://nigoro.jp/ 獨立製作遊戲廠商
  • Mekuri Master 蠢斃了
  • 要走出自己的路
  • 我們製作團隊只有三個人,所以....不能跟大廠拼
  • 走大廠不會走的方向:復古遊戲
  • 讓玩家玩的時候心情起伏,才會快樂
  • 比如說音效、畫面上要有巧思
  • ex 發現寶箱打開卻是怪物殺死你 失落
  • ex 發現寶箱走過去地上卻有陷阱殺死你  更失落
  • ex 發現寶箱的瞬間天下掉下一塊巨石就死了 down到谷底了
  • timeing 不同心情更不同....





DeNA的發展經驗,看全球移動遊戲市場的現況與未來

l強爆了!一定要找他合作
l   台灣對於網游一片低迷,是因為沒有好遊戲的關係,那把國外的遊戲引進來不就好了
l   除了騰訊以外都有合作Ex 91(超麻吉)、新浪、人人






App遊戲美術與視覺設計

l   都講一些我已經知道的事
ex:生死決戰三分鐘、使用者設計原則、設計流程
l   把圖刻細不等於使用者感動:PC->mobile 一般會遇到的問題
l   新手:用手機做視覺效果檢視  iphone吃彩度吃得蠻嚴重的
l   實用小技巧:除了icon跟截圖之外多做一張宣傳組圖!(超重要)
訂定目標族群->模擬畫面->關鍵三分鐘->友善的介面->掌握風格傳達感動->視覺檢視->要作主圖

遊戲開發活歷史,他開發過戰神耶
l   他在做戰神二每天看人體解剖圖的時候快崩潰惹
l   一直拿flurry 的統計數據講
l   各年齡層喜歡的美術風格不同:老人喜歡pixel懷舊、年輕人喜歡華麗動畫
l   color skin 看小圖配色、把喜歡的圖吸色、吸五個顏色存下來放在自己的圖裡
l   台灣大部分的美術都喜歡躲在自己的框框裡,不喜歡挑戰,結果就是大家畫風都差不多 (死定了!)(台灣style?
l   挑戰視覺黏著度、初版出來的時候一個禮拜不要看、一個禮拜後如果覺得怪怪的,那就放手去修
l   作品:殭屍巴下去!  三個半月搞定,有一個半月在做開發工具
l   在執行初期有視覺草圖是一個很好的開始點,
l   找完資料,用象限分析法


   Paintery
Realistic                                  Stylized
                      Photo

l   如果你找到的切入點都是同一個風格,那就要考慮要不要加入那個族群(因為他很大!)
l   開發工具Demo 一個ipad APP  一個半月做得出來也蠻強的!
l   方便的工具能提高美術工作的品質,縮短製作時間
l   Tiny Sheepd Demo:一個social game ,步調慢,專攻高年齡的女性族群
l   遠端co work實在很累
l   程式人員應該要開發好工具幫助美術
l   想一想一般新聞台跟壹電視的畫面,simplify你的畫面吧!
l   Air sharing
l   Update 內容納入開發計畫中!提前三個月左右做好,三個月內來做update,針對目標國家重要節慶做特別內容
l   Space qude DEMO,遊戲本身就是編輯器,千年傳統全新感動
l   以前PS2上面做得到的事情現在其實都可以做到手機上,差不多是PSVita 等級了
l   icon需要一目瞭然,跟背景要有層次感
l   走出自己的風格!不要淪為台灣style

NSMutableArray insert 注意事項


NSMutableArray insertObject: atIndex: 時,新增的object一律會在index的左邊出現

比如說 我有 0 1 2 3 4 這四個東西
我下了[testAray insertObject:@"New1" atIndex:0];
New1會出現在0 的位置,所有東西都會往右shift

有趣的地方來了,我現在有5個東西分別是在0 1 2 3 4 這幾個index
我要在最後面add一個Object
需要下[testAray insertObject:@"New3" atIndex:5] 這種指令,
可是我在加入前去access index 5 就會掛掉

慎用insert阿!

茲附上實驗小程式來紀念這個下午

    NSMutableArray *testAray = [[NSMutableArray alloc]init];
    [testAray addObject:@"firstObj"];
    
    [testAray insertObject:@"New1" atIndex:0];
    [testAray insertObject:@"New2" atIndex:0];
    [testAray insertObject:@"New3" atIndex:[testAray count]];
    [testAray insertObject:@"New4" atIndex:[testAray count]];
//    NSLog(@"%@",[testAray objectAtIndex:[testAray count]]); //打開會掛
    
    NSLog(@"%@ count = %d",testAray,[testAray count]);



結果如下

    (
    New2,
    New1,
    firstObj,
    New3,
    New4
) count = 5



NSLog 奇觀

提供了除了用define以外的其他各式各樣的寫法,
可以用function微調參數時比較方便

http://cocoaheads.byu.edu/wiki/different-nslog

A Quieter NSLog()


For some people, NSLog() writes out entirely too much stuff, including the program name, process ID, and current time down to the subsecond level. (Typical NSLog() output looks like: 2008-07-11 15:05:07.582 MyApp[1465] output.) Note that printf()can't be used as a drop-in replacement for NSLog() because it doesn't support the %@ format specifier for NSString objects. (If you're shaky on what format specifiers are, visit this article on Apple's site, and perhaps this brief tutorial to brush up on usage.)


QuietLog() is basically an Objective-C friendly version of printf() that you can use wherever you would normally use NSLog() (but would rather not see the extra spewage it produces). It accepts and outputs an NSString with printf-style format, including a variable number of parameters. For example, QuietLog(@"I have %d dogs and %d cats", dogs, cats); would print something like I have 5 dogs and 2 cats and a newline. Below are two possible implementations — the former uses a method only available in 10.5+ but the two versions are pretty much equivalent.
For 10.5 and later
void QuietLog (NSString *format, ...) {
    if (format == nil) {
        printf("nil\n");
        return;
    }
    // Get a reference to the arguments that follow the format parameter
    va_list argList;
    va_start(argList, format);
    // Perform format string argument substitution, reinstate %% escapes, then print
    NSString *s = [[NSString alloc] initWithFormat:format arguments:argList];
    printf("%s\n", [[s stringByReplacingOccurrencesOfString:@"%%" withString:@"%%%%"] UTF8String]);
    [s release];
    va_end(argList);
}

For 10.0 and later

void QuietLog (NSString *format, ...) {
    if (format == nil) {
        printf("nil\n");
        return;
    }
    // Get a reference to the arguments that follow the format parameter
    va_list argList;
    va_start(argList, format);
    // Perform format string argument substitution, reinstate %% escapes, then print
    NSMutableString *s = [[NSMutableString alloc] initWithFormat:format arguments:argList];
    [s replaceOccurrencesOfString:@"%%"
                       withString:@"%%%%"
                          options:0
                            range:NSMakeRange(0, [s length])];
    printf("%s\n", [s UTF8String]);
    [s release];
    va_end(argList);
}
The call to -initWithFormat:arguments: constructs a formatted string using an arbitrary number of parameters. The resulting string has %% replaced with %, which must be reversed before sending it to printf(). You can also replace printf("%s\n", ...) withfprintf(stderr"%s\n", ...) if desired.
If, like me, you prefer less information but would find it useful to also print the filename and line number where the call occurred, you could use something like this macro in concert with the above function:
#ifndef LocationLog
#define LocationLog(format,...) \
{ \
    NSString *file = [[NSString stringWithUTF8String:__FILE__] lastPathComponent]; \
    printf("%s:%d - ", [file UTF8String], __LINE__); \
    QuietLog((format),##__VA_ARGS__); \
}
#endif
For example, LocationLog(@"Hello World!"); would produce something like main.m:15 - Hello World!
In addition to  __FILE__ and  __LINE__, you can use __PRETTY_FUNCTION__ in a #define macro to get output like -[MyController awakeFromNib] when called from Objective-C methods. (From C code, it just prints the name of the calling function.)
This information was distilled from this post on Borkware.com, which could also be combined with the above approaches to customize the output exactly how you like it.

Where to Add This Code

For small programs, a handy place to put such code is in main.m, so everything in the application has access to it.
For larger compilation units, you'll want to declare the function (as shown below, using the extern keyword) in a header file that is included by any file that needs to use it (such as an Xcode pre-compiled header), then define it exactly as shown above in a .m file.
extern void QuietLog (NSString *format, ...);

Other Alternatives

The Log4Cocoa project is an Objective-C port of log4j, the popular Java based logging package.

Redirected NSLog()

Occasionally, you may want to redirect your NSLog() output to a file so that you can examine it more conveniently. NSLog() works by outputting messages to STDERR, so all you need to do is redirect the STDERR stream to a file, and you're good to go. The following code will redirect it to a file on your desktop:
int fd = creat ("/Users/dave/Desktop/my_log", S_IRUSR | S_IWUSR | S_IRGRP | S_IROTH);
close (STDERR_FILENO);
dup (fd);
close (fd);
NSLog(@"this will be written to my_log");
This will only affect NSLog() calls from your application.

NSLog() and Console.app

For yet another take on logging with NSLog, and specifically how it has changed in Leopard, visit the following URL:

#define log

You can put a custom log type in the prefix header file or any other global header.
It also allows you to disable logs completely by using #ifdefs
#define ExtendedLog( s, ... ) { \
NSLog( @"<%@:(%d)> %@ \t", [[NSString stringWithUTF8String:__FILE__] lastPathComponent], \
                             __LINE__, [NSString stringWithFormat:(s), ##__VA_ARGS__] ) \
}