[新聞] 現在要上架 Apps 到 Windows Store 上變得更便宜了!

自即日起,申請上架 Windows Store 的「個人帳戶」年費已由原來的台幣 NT$1,420元 ($49 美元) 降價至台幣 NT$568元 ($19 美元) 了! 「公司帳戶」則仍維持台幣 NT$2,840 ($99 美金)。

其實這篇新聞的最大重點,是 Windows Phone 及 Windows Store 兩個市集的註冊程序已經合併了,也就是只要註冊一次,開發者即可以選擇將您的 Apps 上架至 Windows Phone 或 Windows Store 市集。簡略說明重點如下:

  • 已註冊的 Windows Phone 開發者: 現在可以使用既有的 Microsoft Account,免費提交 Apps 到 Windows Store 市集。

  • 已註冊的 Windows Store 開發者:現在可以使用既有的 Microsoft Account,免費提交 Apps 到 Windows Phone 市集。

  • 新的開發者、或是既有的開發者:可以使用同一個 Microsoft Account 註冊或續訂。開發人員只要提交一次註冊資訊,選擇支付 「個人帳戶」$19美元或「公司帳戶」 $99 美元的年費,即能同時發佈 Apps 於 Windows 和 Windows Phone 的市集中。

  • 已使用相同的 Microsoft Account 同時在 Windows Store 和 Windows Phone 註冊的開發人員: 本月將收到一組代碼,免費獲得延長一年的續簽優惠。

  • 學生身份開發者可持續獲得 DreamSpark 計畫的註冊優惠。

現在就將您的 Apps 發佈至 Windows Phone 及 Windows Store 平台,獲得大獎機會!

App 怪獸爭霸戰第二回合即將在 2013/11/15 展開,Apps 愈多得獎機會愈大喔!

https://aka.ms/appbattle

image

Windows 8.1 上市之後,我還能繼續開發 Windows 8 App 嗎?

答案是可以的! 您可以繼續使用 Visual Studio 2012 開發且上架 Win8 App,或是使用 Visual Studio 2013 開發 Win8.1 後上架;最棒的是,Visual Studio 2012 及 Visual Studio 2013 是可以同時安裝在 Windows 8.1 上的!
至於 Win8 App 及 Win8.1 App 在不同版本作業系統上之相容性如何呢? 請見下表:
image
也就是所有的 Win8 Apps,都能直接在 Win8 及 Win8.1 機器的市集中下載並且順利運行;然而 Win8.1 Apps ,則只能運行在 Win8.1 的機器上。
以這樣的角度看來,繼續開發 Win 8 App 以能同時在 Win8 及 Win8.1 的機器上運行,就會是很明智的作法,因為雖然2013/10/18起,所有的 Windows 8 就可以免費經由 Windows Store 升級為 Windows 8.1,但在這完全轉移的過程中, Win8 Apps 能同時讓最多的使用者有機會下載使用。
那是不是就沒有開發 Win8.1 Apps 的理由了呢? 有兩點考量給各位參考。
第一,就是 Win8 App 在不更改程式碼的情況,只要重新 compile 成 Win8.1 App,在效能上就會有很大進步:
image
第二,當然就是 Win8.1 加強或新增的 APIs 了。下表可以看到這些改變:
image
以上這些改變中,綜合過往一年來 Win8 App 開發合作夥伴的反應,前 3 名最有感的改變是:
1. WebView 控制項: 現在可以直接存取本地 Web 內容,甚至執行其中的 JavaScript 了! (範例: http://code.msdn.microsoft.com/XAML-WebView-control-sample-58ad63f7)
image
2. 利用全新的 RenderTargetBitmap 物件,就可以將整個 UIElement (如: Gird) 存成圖檔,以作出如 Instagram, Instaweather 等效果: (說明: http://msdn.microsoft.com/zh-tw/library/windows/apps/bg182878.aspx)
 image
3. 終於內建支援 PDF rendering,再也不用花錢購買第三方軟體套件了! (中文詳解: 在Windows 8.1 App中輕鬆完成PDF渲染)

image

小結: 在 Windows 8.1 上市之後,要開發一個 Windows Store App ,可以有以下 3 種選擇:
A. 僅作成 Win8 App: 優點是可在 Win8/8.1 機器中看到,但效能會較差且無法使用 8.1 新增 APIs.
B. 僅開發 Win8.1 App: 可使用 8.1 APIs 且在效能有進步,但無法在 Win8 機器中運行。
C. 同時開發 Win8及8.1的版本: 可使用新功能且效能好,又可同時在 Win8/8.1 機器上運行 (但增加維護成本)
未來的 Windows Store 的上傳畫面,也因這些可能的選擇而作了改變,以下是 packages 上傳畫面:
image
相同的 App 在 Win8/8.1 的資訊填寫畫面:
image
延伸閱讀: Windows 8.1 Preview:開發人員適用的新 API 和功能

在註冊 Windows Store 帳號時卡住嗎? App 上傳很久還沒審核嗎? 怎麼我收到的錢不如我預期的多?

如果您有以上的疑問,或是在 Windows Store 上有任何註冊、開發、上傳、收費等其他問題,除了到論壇問問看是否已有解答之外,建議大家可直接到以下網站作詢問:

http://getsupport.microsoft.com

會得到微軟官方技術服務團隊的回答及支援!

 

有各種問題類型供選擇:

image

之後選擇類別,「應用程式提交和憑證」類:

image

「Windows 市集註冊和您的帳戶」類:

image

我個人最常使用的是使用 email 電子郵件,通常 24 小時內就會收到回覆。

image

與 Microsoft 對話交談 (類似 MSN 的方式,可以用中文喔!)

image:

 

以電子郵件詢問:

圖片1 

Logo 製造機- 適用於Windows Store App 及 Windows Phone 8 App

之前曾介紹過一個 Metro Studio,可以來製作 Windows 8 App Logo,最近發現一個同樣免費、免安裝且操作更方便的工具,不但可以一次製作出適用於 Windows Store App 及 Windows Phone 8 App 的 Logo,還可以直接使

用既有的圖檔來製作。

 

檔案下載: http://bit.ly/storelogomaker (作者是日本微軟的員工)

 

操作方式超簡單! 下載解壓後,只要直接執行其 .exe 檔,然後將任一圖檔拉入中央:

image

接下來可以直接按下右上角那個「Save Icons」的按鈕,所有相對應的 Logo 圖檔就產生了! (您也可以選擇背景顏色或加框)

瀏覽一下所產生的圖檔,可以看到有各種尺寸的 Logos 供您使用:

image

以 Windows Store Apps 為例,預設是至少需要150×150 (標誌), 30×30 (小標誌), 50×50 (市集標誌) 及 620×300 (啟動顯示畫面) 等4種 Logos,而其預設檔名如以下:

image 

所以您可以在更改這些尺寸的檔名之後,一次拉入至 Assets 之中,所有的 Logos 就改動完畢了!

image

選擇全部套用:

image

搞定! 以下即是開始畫面中的樣貌:

image

[完全初學] 第一個 Windows Store App- 使用格線 (Grid) 應用程式

為了方便開發者能快速進入 Windows Store App 的開發,Visual Studio 2012 內建了二種模版 (templates): 格線(Grid)及分割(Split)應用程式。本篇文章將一步一步教導初學者能由此開發出一個簡單的 Windows Store App。

 

首先在 Visual Studio 2012 中「新增專案」並選擇「格線應用程式 (XAML)」:

image 

 

在還未作任何更動前,各位可以直接按 F5,或是選擇以「模擬器」方式嘗試執行:

image

 

執行結果如下,各位在畫面上會發現,這個模版含有一些 Group(s),而每個 Group 又包含了一些 Item(s):

image

 

點進 Group Title 的話可看到這個 Group 的說明:

image

 

再點入 Item:

image

 

接下來我們要作的事,就是將這些灰灰黑黑的圖片,以及如亂碼般的文字替換成我們想提供的資訊。所以我們到 Visual Studio 中的「方案總管」,打開 DataModel 下的 SampleDataSource.cs 檔案,基本上只要修改這個 SampleDataSource.cs 檔,即可改變所有的 Group 及 Item 內的所有文字及圖片。

image

 

找到 SampleDataSource(),各位可看到所有預設文字及圖片即來自此處:

image

 

我們以最簡單直覺的方式來改動它,先更改 group1 及其第一個 item 來看看成果:

image

 

在此我是以介紹阿里山景點為例,資料來源為阿里山國家風景區官網:

image 

在更動過程中有 3 點請注意:

1. 各個 Item(s) 的描述,預設是一個字串變數 ITEM_CONTENT,請逐一把它替換成您想要呈現的字串即可。如我以上的例子是把 ITEM_CONTENT 替換成:

@”大凍山脈嶺延伸緊臨於奮起湖聚落東方….”

image

 

2. 圖片的部份,可以直接使用圖片的網址連結。當然,您也可以另存為圖檔後,加入至 Assets 目錄下,然後再指定相對應的路徑及檔名 (ex: Assets/圖檔名-1.jpg)。

image

3. 我在各個字串的前方加上了‘@’,以處理逸出字元 (Escape character) 等。

 

執行看看吧! 首頁、第二層及第三層的畫面分別為:

image

image

image

依以上步驟,您就可以一步一步來填入所有 Group(s) 及 Item(s) 的資訊了。

 

Visual Studio 2012 預設的這個格線應用程式模版用了6 個 Groups,每個 Groups 有3~6個數量不等的 Items,各位如果有用不到的 Group(s) 或 Item(s),只要在前面加上註解符號 (//) 即可。

image 

如果要新增一個 Item 的話,以上面為例,只要把整個 group1.Items.Add 及至分號(;) 的整個 statement 複製至下方,然後記得把”Group-1-Item-5” 改為 “Group-1-Item-6” 即可。

 

實作至此,各位已將一個 App 的主要呈現內容完成了。當然,要成為一個完整且能上傳至 Windows Store 的 App,我們還得完成以下:

 

1. 更改 App 名稱,如改為「阿里山國家公園主題之旅賞析」: 打開 Package.appxmanifest 檔並更改「顯示名稱」及「描述」:

image

image

 

2. 更改 Page Title: 打開 GroupedItemsPage.xaml.cs 並於 GroupedItemsPage() 加上一行:

this.pageTitle.Text = "阿里山國家公園主題之旅賞析";
image

3. 更改背景 (非必須): 開啟某個 .xaml 檔 (如 GroupedItemsPage.xaml),在下方的 XAML 視窗中點選至 <GridView 的位置,然後在右側的「屬性」->「筆刷」-> Background ->在「單色筆刷」中透過調色盤選擇顏色。

image

 

4. 您應注意到我在以上是直接使用圖片的網址來顯示圖片,也就是此 App 需要用到網際網路 (Internet),故要上架 Windows Store 的話需提供隱私權宣告,詳細說明可見隱私權聲明-最常見的退件原因。在這您可直接實作如以下:

在 App.xaml.cs 檔中的 OnLaunched() 最後加上:

SettingsPane.GetForCurrentView().CommandsRequested += OnCommandsRequested;

然後加入以下兩個新方法即可:

private void OnCommandsRequested(SettingsPane sender, 

SettingsPaneCommandsRequestedEventArgs args)
{
    UICommandInvokedHandler handler =
             new UICommandInvokedHandler(onSettingsCommand);

    SettingsCommand privacy1Command =
             new SettingsCommand("privacystatementPage", "隱私權原則", handler);

    args.Request.ApplicationCommands.Add(privacy1Command);
}
async void onSettingsCommand(IUICommand command)
{
    SettingsCommand settingsCommand = (SettingsCommand)command;
    if (settingsCommand.Id.ToString().Equals("privacystatementPage"))
    {
        var success =
             await Windows.System.Launcher.LaunchUriAsync(
                    new Uri(@http://www.您的隱私權宣告網址.com));
    }
}

5. 加入 Share contract 的支援 (非必須)。比如您想在 Item 的頁面可以分享描述文字,則可在 ItemDetailPage.xaml.cs 檔中的 LoadState() 方法的最後加上:

try
{
    // Register for DataRequested events
    DataTransferManager.GetForCurrentView().DataRequested 

        += OnDataRequested;
 }
 catch (Exception) { }

然後加入以下這個新方法:

// 實作 OnDataRequested()
void OnDataRequested(DataTransferManager sender, DataRequestedEventArgs args)
{
    try
    {
       var dataPackage = args.Request.Data;
       dataPackage.Properties.Title = 
          ((SampleDataItem)this.flipView.SelectedItem).Title;
       dataPackage.Properties.Description = 
          ((SampleDataItem)this.flipView.SelectedItem).Subtitle;
       dataPackage.SetText(
          ((SampleDataItem)this.flipView.SelectedItem).Content.ToString()
          );
    }
    catch (Exception)
    { }
}

6. 最後,當然要製作專屬於此 App 的各種 Logo 圖檔了,各位可以參考Logo 製造機- 適用於Windows Store App 及 Windows Phone 8 App 以快速製作出 Logos.

 

完成了! 這樣的一個 App 就能在 https://appdev.microsoft.com/storeportals/zh-tw 中上傳了。

 

完整程式碼下載

Windows Store Dashboard 儀表板一覽

您的 Windows Store App 成功上架之後,就可以從「儀表板」(dashboard) 中查看 App 的各種狀態,如下載次數、使用方式、crash report、已賺了多少錢等等。

 

以下就以我的儀表板為例讓大家了解有哪些功能。

登入https://appdev.microsoft.com/storeportals/zh-tw/之後,首先看到的畫面會是所有進行中或已上架的應用程式:

image

 

已上架的應用程式:

image

 

點選已上架應用程式的「報告」,就會看到「應用程式摘要」;此頁面中可以看到這個 App 的下載、In-App Purchase、使用方式、評分、品質、財務的所有細節:

image

 

點選右上角「詳細資料」後都可以就各別項目展開,展開後還能選擇不同的時間週期(1個月、3個月、6個月、1年),以及市場、年齡或性別作套用。

「下載」可以看到每一天的下載次數:

image

image

 

透過「使用方式」了解使用者平均每一天花在你的 App 上多少分鐘:

image

 

「評分」可以了解使用者的評論,作為 App 改進的參考:

image

image

 

「品質」則可以看到 App 在被執行時,發生例外或損毀的狀況:

image

image

 

「財務」能看到此 App 收益及詳細交易記錄:

image

 

官方說明文件及進一步說明可參考: 分析您在 Windows 市集中的應用程式

Logos 的製作經驗 – 使用 Metro Studio

Windows 市集應用程式若是沒有使用自己定義的 Logos,是肯定會被退件的。在此分享一下使用 Syncfusion 公司的 Metro Studio 來製作簡單 Logos 的經驗。

 

首先最重要的,這個軟體目前是免費的! 可至 http://www.syncfusion.com/downloads/metrostudio 下載安裝。

 

執行 Metro Studio 之後,其提供很好的搜尋功能,例如我想找一個 shopping cart 的圖片:

image

找到後把喜歡的圖片直接拖到左下方的紅色部份,建立一個project。

image

然後選擇”Edit”後,就可以直接作各種顏色、旋轉、背景、樣式等的修改:

image

製作好之後就要匯出了!

Windows Store App 需要如150×150, 30×30, 50×50等各個大小的 Logos,我們只要在右上角的 size 處填入數字(如:30)。

image

然後再按右下角的 ”Export”,就製作出來一個30×30的 Logo 了!

image

FAQ – Windows Store 市集相關問答集

1.        Windows 市集開發人員帳戶如何註冊?

a.     官方網站: https://appdev.microsoft.com/StorePortals/zh-tw/Account/Signup/Start

b.     說明文件: http://msdn.microsoft.com/zh-tw/library/windows/apps/hh868184.aspx 

 

2.        為何我註冊Windows 市集開發人員,帳戶被刷了多筆資訊?

a.    Windows 市集開發人員帳戶費用外,我們會向您的付款方式收取一筆小額費用 (介於 $0.01 $5 美元之間或等值金額)。這筆金額會在幾天內退還給您。這筆金額為驗證識別身分用。

b.    台灣信用卡的驗證步驟: http://blogs.msdn.com/b/mengtsai/archive/2012/12/28/10381067.aspx    

 

3.        如何打包app?

請參考建立應用程式套件

 

4.        Windows 市集上架相關問題:

a.   Windows 市集認證檢驗項目為何?

                          請參考認證需求列表http://msdn.microsoft.com/library/windows/apps/hh694083

 

b.   Windows 市集認證測試工具 – Windows 應用程式認證套件測試應用程式 (WACK) 為何?

    為了讓您的應用程式能順利通過認證,請在送審前,先在您的電腦上進行自我驗證和測試。WACK即為微軟提供的自我檢測工具,已內建在 Visual Studio 2012 開發工具之中。或可自行下載WACK,測試步驟請參考網站

 

WACK檢測項目包含:               

測試名稱

可能的測試結果

測試的認證需求

應用程式資訊清單原則測試

通過

失敗

套件驗證

套件詳細資料

應用程式資訊清單資源測試

通過

失敗

語言驗證

當機和停滯情形測試

通過

失敗

應用程式可靠性

偵錯設定測試

通過

失敗

應用程式成品

檔案編碼測試

通過

失敗

套件驗證

效能測試

通過

失敗

警告

應用程式效能

支援的 Windows 市集 API 測試

通過

失敗

應用程式程式碼驗證

應用程式終止

Windows 安全性功能測試

通過

失敗

應用程式安全性

Direct3D 功能層級測試

通過

失敗

Direct3D 認證需求

 

 

c.        送審APPWindows市集支援的瀏覽器版本?

                                 請用IE10上傳app

 

d.        為何我的App送審後一直停在第一個步驟?

                            i.       請確認送審畫面是否出現警告的訊息? 若有,則請您先排除警告訊息才能開始審核。

狀況一 :

clip_image002[4]

狀況二:

 

clip_image004[4]

 

排除方法,請參考W-8 稅金設定檔”、”信用卡驗證”。

 

e.        如何填寫稅金表單(W-8BEN )?

請參考W-8 稅金設定檔”、”

 

f.         發票需要統一編號,怎麼處理?

完成購買,並收到發票後,請寄回台灣微軟帳務中心(FMP 住址:  台北市萬華區長沙街266),註明欲加註統編即可。

請參考: http://support.microsoft.com/gp/Invoice/zh-tw

 

g.        APP已經上架後,如何修改名稱?

請參考網站說明

 

    5.         我的 Windows 8 App 被退件了?

            請先確認被退件原因編號,每個編號的原因請參考認證需求

            常見退件原因:

1.2 當客戶從 Windows 市集取得您的應用程式時,請務必提供完整功能。

Windows 市集只提供功能完整的應用程式,如此才能為客戶帶來最佳的經驗。只要測試人員發現您的應用程式尚未完成,應用程式認證就會失敗。

您可以在送出應用程式之前先進行全面測試,或者是提供我們全面測試您應用程式所需的資訊,這對我們很有幫助。例如,如果您的應用程式需要登入認證,請提供示範帳戶。如果您的應用程式需要存取伺服器,請告訴我們需要執行哪些動作才能確認應用程式正常運作。

3.8 您的應用程式必須符合低功率電腦的基本效能準則
  • 應用程式必須在 5 秒或更短的時間內啟動
  • 應用程式必須在 2 秒或更短的時間內暫停

如需低功率電腦的資訊,請參閱如何使用 Windows 應用程式認證套件測試應用程式

4.1 您的應用程式必須符合下列隱私權相關需求:
4.1.1 如果您的應用程式具備網路通訊功能,則必須包含隱私權聲明

如果您的應用程式具備可傳輸資料的技術能力,您就必須維持一份隱私權原則。您還必須在應用程式的「描述」頁面以及 Windows 設定快速鍵顯示的應用程式設定中,提供您的隱私權原則存取方法。

(解決方法見請見文章”最常見的退件原因- 隱私權聲明”)

6.2 應用程式必須有 Windows 年齡分級,而且如果您有應用程式的第三方分級,請一併送出

您必須指派一個最準確符合您應用程式的 Windows 市集年齡分級。 [年齡分級] 頁面針對適用於每個 Windows 市集年齡分級的內容,提供更詳細的描述。

(若您開發遊戲App,請另參考文章開發Windows 8 遊戲App? 教您如何符合台灣遊戲軟體分級規定”)

6.5 您必須將應用程式當地語系化為可支援的所有語言

您的應用程式可以只支援 Windows 市集允許的語言,而其中至少一個語言必須是認證語言。應用程式必須在支援的所有語言中提供類似的使用經驗。

您必須以應用程式套件中宣告的每種 語言,提供詳細的應用程式介紹供客戶參考。 應用程式介紹的其他元素 (例如螢幕擷取畫面、文字以及宣傳影像) 必須當地語系化。如果您的應用程式已當地語系化,但部分功能無法以當地語系化版本提供,您必須在應用程式介紹中清楚陳述或說明當地語系化的限制。

[本 FAQ 將不定期持續更新]

 

 

 

 

 

 

程式碼下載- 將 Blogs 轉為 Windows 8 App

在”將部落格轉成 Windows Store App – 並加入「搜尋」功能”的文章中,你應該已經發現,只要有部落格的 Blog RSS/Atom feeds,就可以很快的完成一個 Windows Store App,您可在此下載程式碼 (Source code downoad)。

 

我透過此方法將個人目前的三個 Blogs 集結起來,也已成功上架: http://apps.microsoft.com/windows/zh-TW/app/raymond-tsais/646c20eb-601c-4479-8b2d-d64e9c7f5456:

image

 

若各位有興趣依此程式作實作的話,請注意以下幾點:

1. 如前文步驟一的說明,請在 FeedData.cs 的 GetFeedsAsync() 方法中,將您要訂閱的RSS/Atom 連結加入:

image

 

2. 請記得要修改 App Name 及 Display Name,尤其在 .appxmanefest 之中:

image

3. 由於這個 App 需要用到網際網路連線,若要成功上架到 Windows Store 上的話,就要加上隱私權聲明的連結,但在此範例檔中各位只要修改 App.xaml.cs 這個檔案,將以下連結改成您的連結即可:

image

若要了解更多隱私權聲明細節,可參考: 隱私權聲明-最常見的退件原因從無到有- 程式碼小於 50 行的 Windows Store App 開發及上架之旅 (程式供下載)

 

4. 最後請在其他功能,及排版、底色、Logos 等方面發揮你的創意喔!