{"id":423,"date":"2013-08-30T02:46:00","date_gmt":"2013-08-29T23:46:00","guid":{"rendered":"http:\/\/metehantoksoy.com\/?p=423"},"modified":"2013-08-30T02:46:00","modified_gmt":"2013-08-29T23:46:00","slug":"windows-store-ilk-uygulama","status":"publish","type":"post","link":"https:\/\/metehantoksoy.com\/?p=423","title":{"rendered":"Windows Store &#8211; \u0130lk Uygulama"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter\" alt=\"\" src=\"http:\/\/upload.wikimedia.org\/wikipedia\/commons\/5\/5e\/Windows_Store_logo_and_wordmark_(green).png\" width=\"376\" height=\"120\" \/><\/p>\n<p>Basit de olsa bug\u00fcn ilk uygulamam yay\u0131nland\u0131. S\u00fcre\u00e7 biraz sanc\u0131l\u0131 oldu, tecr\u00fcbe edinene kadar. \u00a0\u0130lk uygulamam oldu\u011fu i\u00e7in neyi nas\u0131l \u00a0yapaca\u011f\u0131m\u0131 bilmiyordum.<\/p>\n<p>Yazd\u0131\u011f\u0131n\u0131z uygulamay\u0131 g\u00f6ndermek i\u00e7in;\u00a0&#8220;<a href=\"http:\/\/dev.windows.com\/\" target=\"_blank\">dev.windows.com<\/a>&#8221; adresine girin. DashBoard&#8217;a t\u0131klay\u0131n.\u00a0\u00a0Microsoft hesab\u0131n\u0131zla giri\u015f yap\u0131n.\u00a0\u00a0&#8220;Submit an App&#8221;e t\u0131klay\u0131n. Gerekli bilgileri doldurup &#8220;Submit For Certification&#8221;a t\u0131klay\u0131n.<\/p>\n<p>Bu yaz\u0131mda Windows Stora&#8217;a uygulama nas\u0131l g\u00f6nderilirken \u00e7ok, ilk uygulama yazma s\u0131ras\u0131nda nelere dikkat edilmeli, uygulama sertifikasyon s\u0131ras\u0131nda kar\u015f\u0131la\u015f\u0131labilecek hatalardan , kar\u015f\u0131la\u015f\u0131lan hatalar\u0131 \u00e7\u00f6zme yollar\u0131ndan ve kar\u015f\u0131la\u015ft\u0131\u011f\u0131m baz\u0131\u00a0problemlerden bahsedece\u011fim.<\/p>\n<p><!--more--><\/p>\n<p>Uygulama reddedildi\u011finde kullanabilece\u011finiz bir ka\u00e7 k\u0131lavuzunuz vard\u0131r. Birincisi, uygulamam her reddedildi\u011finde bir mail ald\u0131m. Ald\u0131\u011f\u0131m mailde uygulamada ne hatas\u0131 oldu\u011funu veya neyin eksik oldu\u011funu belirtiyorlard\u0131. \u0130kincisi, uygulama her reddedildi\u011finde bir de DashBoard&#8217;\u0131n\u0131zda bir bildirim g\u00f6r\u00fcn\u00fcr. &#8220;View certification report&#8221;a t\u0131klarsan\u0131z uygulaman\u0131z\u0131n neden reddedildi\u011fi ile ilgili bir bilgi ve &#8220;1.2&#8221; gibi madde ba\u015fl\u0131klar\u0131 g\u00f6r\u00fcrs\u00fcn\u00fcz. O ba\u015fl\u0131klar\u0131n hepsinin detayl\u0131 a\u00e7\u0131klamas\u0131 &#8220;<a href=\"http:\/\/msdn.microsoft.com\/tr-TR\/library\/windows\/apps\/hh694083.aspx\">http:\/\/msdn.microsoft.com\/tr-TR\/library\/windows\/apps\/hh694083.aspx<\/a>&#8221; bu adreste mevcut. \u00dc\u00e7\u00fcnc\u00fc de sizsiniz. Uygulamay\u0131 g\u00f6ndermeden \u00f6nce nerelerde hata olabilece\u011fini kontrol etmeniz gerekir.Bir di\u011fer k\u0131lavuz da &#8220;Windows App Certification Kit&#8221;. Uygulamay\u0131 Market i\u00e7in submit etmek istedi\u011finizde, paket olu\u015fturduktan sonra sizin izninizle uygulamay\u0131 bir ka\u00e7 teknik testten ge\u00e7iren bu kit, bir nevi Market i\u00e7in sertifikasyon s\u00fcrecini sim\u00fcle ediyor. Fakat uygulaman\u0131z bu testten ge\u00e7erse kesinlikle yay\u0131nlanacak diye bir \u015fey s\u00f6z konusu de\u011fil ve e\u011fer uygulaman\u0131z bu testten ge\u00e7mediyse, uygulaman\u0131z\u0131 Market&#8217;e yollamadan \u00f6nce g\u00f6zden ge\u00e7irmenizde fayda var.<\/p>\n<p>\u00d6ncelikle uygulaman\u0131z reddedilince pes etmeyin. Benim uygulamam be\u015f defa reddedildi. S\u00f6ylenenleri her defas\u0131nda eksik bir bi\u00e7imde d\u00fczeltti\u011fim i\u00e7in bu kadar fazla reddedildi. Size s\u00f6ylenen hatalar\u0131 &#8220;eksiksiz&#8221; giderirseniz kabul edilme ihtimali daha da y\u00fckselecektir.<\/p>\n<p>Birinci reddedili\u015f nedeni g\u00fcvenlik ve uygulama i\u00e7in Market&#8217;te se\u00e7ti\u011fim yanl\u0131\u015f kategoriydi. Uygulama izinlerinde internet eri\u015fimi gerekli olmad\u0131\u011f\u0131 halde talep edilir konumdayd\u0131. Bundan dolay\u0131 oldu\u011funu d\u00fc\u015f\u00fcn\u00fcp internet eri\u015fimini kapatt\u0131m. Uygulamam bir sonraki testte g\u00fcvenlikten ge\u00e7ti. Sadece uygulaman\u0131n ihtiyac\u0131 olan izinleri istemek \u00f6nemli. Mesela, bir el feneri uygulamas\u0131na rehber eri\u015fim izinini vermeyi kimse istemez. Uygulamay\u0131 Submit ederken, uygulamaya daha uygun bir kategori se\u00e7erek, ikinci kere sertifikasyona\u00a0yollad\u0131m.<\/p>\n<p>\u0130kinci reddedili\u015f de uygulaman\u0131n cazibeli olmamas\u0131, hatalar vermesi ve markete yollama s\u0131ras\u0131nda uygulamaya se\u00e7ti\u011fim ya\u015f aral\u0131\u011f\u0131. \u00d6nceli\u011fim uygulaman\u0131n hatas\u0131yd\u0131. Uygulama kullan\u0131c\u0131dan bir say\u0131 bekliyor, textbox&#8217;dan ald\u0131\u011f\u0131 say\u0131y\u0131 double t\u00fcr\u00fcne parse ediyordu. Peki kullan\u0131c\u0131 harf girerse? Burada yap\u0131lmas\u0131 gereken bir \u015fey var. Uygulama textbox&#8217;\u0131 parse etmemeli. Parse etmeyi denemeli hata al\u0131rsa kullan\u0131c\u0131ya bilgi vermeli. Bunun do\u011frulanmas\u0131 i\u00e7in &#8220;<span style=\"color:#3366ff;\">double<\/span>.TryParse&#8221; metodu kullan\u0131labilirdi. Uygulaman\u0131n tasar\u0131m\u0131 \u00fczerinde bir ka\u00e7 kere oynayarak ve market se\u00e7eneklerinden ya\u015f bilgisini uygulamaya uygun ayarlayarak \u00fc\u00e7\u00fcnc\u00fc sertifikasyonuna\u00a0u\u011furlad\u0131m.<\/p>\n<p>\u00dc\u00e7\u00fcnc\u00fc reddedili\u015fim se\u00e7ti\u011fim \u00fclkelerdendi. Baz\u0131 \u00fclkeler +18 uygulamalar\u0131 kabul etmezken baz\u0131lar\u0131 sertifikalarla kabul eder. E\u011fer sertifikaya sahip olmad\u0131\u011f\u0131n\u0131z halde o \u00fclkeleri i\u015faretlerseniz 5.1 hatas\u0131n\u0131 al\u0131rs\u0131n\u0131z. Bunu ayarlay\u0131p d\u00f6rd\u00fcnc\u00fc kere \u015fans\u0131m\u0131 denemeye ge\u00e7tim ki tek bir hata al\u0131nca kesin onaylanacak g\u00f6z\u00fcyle bakt\u0131m. Fakat i\u015fler pek de tahmin etti\u011fim gibi ilerlemedi a\u00e7\u0131k\u00e7as\u0131.<\/p>\n<p>D\u00f6rd\u00fcnc\u00fc\u00a0reddedili\u015fin nedeni de uygulaman\u0131n hata vermesi, tasar\u0131m\u0131 ve uygulama i\u00e7in se\u00e7ti\u011fim \u00fclkelerdi. Uygulaman\u0131n bu seferki hatas\u0131, uygulama kullan\u0131c\u0131dan bir say\u0131 bekliyor ama kullan\u0131c\u0131n\u0131n bo\u015f b\u0131rakmas\u0131yd\u0131. Kullan\u0131c\u0131n\u0131n harf girme olas\u0131l\u0131\u011f\u0131 elemi\u015ftim ama \u00a0bo\u015f b\u0131rakma ihtimalini d\u00fc\u015f\u00fcnmemi\u015ftim. Bo\u015f b\u0131rakmas\u0131yla ilgili de bir kontrol yaz\u0131p, se\u00e7ti\u011fim \u00fclkeleri tekrar d\u00fczenleyip uygulamay\u0131 tekrar sertifikasyona g\u00f6nderdim.<\/p>\n<p>Be\u015finci ve son reddedili\u015fim de uygulama hakk\u0131nda uygulama i\u00e7erisinde kullan\u0131c\u0131ya bilgilendirme yap\u0131lmamas\u0131yd\u0131. Bu eksiklik at\u0131lan mailde de belirtildi. Mesela kullan\u0131c\u0131 zaman giriyorsa birimi ne olacak? Nerede, hangi birimleri, hangi cins t\u00fcr\u00fcnden girecekti? Bunlar hakk\u0131nda kullan\u0131c\u0131ya bilgi vermem gerekirdi. Bu sorunu da uygulaman\u0131n her gridinin sol \u00fcst\u00fcne bir soru i\u015fareti koyarak \u00e7\u00f6zd\u00fcm. O soru i\u015faretine bas\u0131l\u0131 tuttuk\u00e7a aktif oldu\u011fu sayfa hakk\u0131nda bilgilere eri\u015fecekti. Bunu da grid ile yapt\u0131m. Bir de soru i\u015faretine &#8220;PointerPressed&#8221; ve &#8220;PointerReleased&#8221; eventleri koydum ki sadece kullan\u0131c\u0131 istedi\u011fi zaman bilgilendirilsin.<\/p>\n<p>Bu son d\u00fczenlemeden sonra uygulamam &#8220;Alcohol Meter&#8221; ad\u0131yla markette yerini ald\u0131. Bu <a href=\"http:\/\/apps.microsoft.com\/windows\/app\/alcohol-meter\/6d59b184-1e47-46b5-8c49-df58f6e13dae\" target=\"_blank\">linkten <\/a>Alcohol Meter uygulamama ula\u015fabilirsiniz.<\/p>\n<p>Windows Store&#8217;a \u00f6zellikle ilk uygulamada olsa da genel olarak kar\u015f\u0131la\u015f\u0131labilecek hatalardan kar\u015f\u0131la\u015ft\u0131klar\u0131m\u0131 ve nas\u0131l \u00fcstesinden geldi\u011fimi sizlerle payla\u015ft\u0131m. Umar\u0131m yarar\u0131 olmu\u015ftur. Uygulama yazan ve yazacak herkese iyi kodlamalar dilerim.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Basit de olsa bug\u00fcn ilk uygulamam yay\u0131nland\u0131. S\u00fcre\u00e7 biraz sanc\u0131l\u0131 oldu, tecr\u00fcbe edinene kadar. \u00a0\u0130lk uygulamam oldu\u011fu i\u00e7in neyi nas\u0131l \u00a0yapaca\u011f\u0131m\u0131 bilmiyordum. Yazd\u0131\u011f\u0131n\u0131z uygulamay\u0131 g\u00f6ndermek i\u00e7in;\u00a0&#8220;dev.windows.com&#8221; adresine girin. DashBoard&#8217;a t\u0131klay\u0131n.\u00a0\u00a0Microsoft hesab\u0131n\u0131zla giri\u015f yap\u0131n.\u00a0\u00a0&#8220;Submit an App&#8221;e t\u0131klay\u0131n. Gerekli bilgileri doldurup &#8220;Submit For Certification&#8221;a t\u0131klay\u0131n. Bu yaz\u0131mda Windows Stora&#8217;a uygulama nas\u0131l g\u00f6nderilirken \u00e7ok, ilk uygulama yazma s\u0131ras\u0131nda &hellip; <a href=\"https:\/\/metehantoksoy.com\/?p=423\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Windows Store &#8211; \u0130lk Uygulama&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[5,10],"tags":[31,65,89,142,163,170,193,200,201,239,244,257,261,266,267],"class_list":["post-423","post","type-post","status-publish","format-standard","hentry","category-microsoft-student-partner","category-windows","tag-alcohol","tag-certification","tag-developer","tag-izin","tag-market","tag-meter","tag-parse","tag-pointerpressed","tag-pointerreleased","tag-store","tag-tryparse","tag-windows","tag-windows-app-certification-kit","tag-windows-store","tag-windows-store-hata"],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=\/wp\/v2\/posts\/423","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=423"}],"version-history":[{"count":0,"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=\/wp\/v2\/posts\/423\/revisions"}],"wp:attachment":[{"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=423"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=423"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/metehantoksoy.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=423"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}