{"id":146,"date":"2023-05-29T10:04:38","date_gmt":"2023-05-29T10:04:38","guid":{"rendered":"http:\/\/cagatayoney.com\/?p=146"},"modified":"2023-05-31T09:51:24","modified_gmt":"2023-05-31T09:51:24","slug":"adim-adim-flutterda-galeriden-fotograf-secme-nasil-yapilir","status":"publish","type":"post","link":"https:\/\/cagatayoney.com\/?p=146","title":{"rendered":"Ad\u0131m Ad\u0131m Flutter&#8217;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r?"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Merhabalar. Bug\u00fcnk\u00fc yaz\u0131mda sizlere Flutter uygulaman\u0131za galeriden bir foto\u011fraf\u0131 nas\u0131l se\u00e7ebilece\u011fimizi anlataca\u011f\u0131m.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Galeriden bir foto\u011fraf se\u00e7ip bunu ekran\u0131m\u0131zda g\u00f6rmek i\u00e7in iki pakete ihtiyac\u0131m\u0131z var. \u00d6ncelikle kullan\u0131c\u0131dan izin almal\u0131y\u0131z. Daha sonra foto\u011fraf\u0131 se\u00e7meliyiz. Kullan\u0131c\u0131dan nas\u0131l izin alaca\u011f\u0131m\u0131zla alakal\u0131 yazd\u0131\u011f\u0131m yaz\u0131ya <strong><a href=\"https:\/\/cagatayoney.com\/?p=148\">buradan<\/a><\/strong> ula\u015fabilirsiniz.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">KURULUM<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Paketimizi <a href=\"https:\/\/pub.dev\/packages\/image_picker\/install\">buradan<\/a> indiriyoruz ve pubspec.yaml dosyas\u0131na ekliyoruz. pubspec.yaml dosyas\u0131na ekleme yapt\u0131ktan hemen sonra <strong>flutter clean<\/strong> daha sonra <strong>flutter pub get<\/strong> yapmay\u0131 unutmay\u0131n\u0131z.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">IOS cihazlar \u00fczerinde \u00e7al\u0131\u015f\u0131yorsak info.plist dosyas\u0131na <strong><code>NSPhotoLibraryUsageDescription<\/code><\/strong> eklemek zorunday\u0131z. &lt;key&gt; olarak bunu ekliyoruz ve &lt;string&gt; olarak da bir a\u00e7\u0131klama yap\u0131yoruz. Bunu yapmam\u0131z\u0131n nedeni kullan\u0131c\u0131ya neden bu izni istedi\u011fimizle alakal\u0131 bir a\u00e7\u0131klama yapmakt\u0131r. Bunu yapmad\u0131\u011f\u0131m\u0131z takdirde ios cihazlarda galeriye eri\u015fim sa\u011flayamay\u0131z.<\/p>\n\n\n\n<h2 class=\"wp-block-heading has-text-align-center\">BA\u015eLAYALIM<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Uygulamam\u0131za gelecek olursak, ekranda bir tane buton bir tane de foto\u011fraf\u0131 yerle\u015ftirece\u011fimiz alan yapaca\u011f\u0131m. Alttaki kod par\u00e7as\u0131 ekran\u0131m\u0131 \u00e7izen ana Widget&#8217;\u0131m.<\/p>\n\n\n\n<script src=\"https:\/\/gist.github.com\/Cagatay0\/73bc9070fc7b592d4ad8a6565c0142c5.js\"><\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">imagePicker paketini kullanmak i\u00e7in class i\u00e7erisinde ImagePicker class&#8217;\u0131ndan bir de\u011fi\u015fken olu\u015fturaca\u011f\u0131m. Galeriden bir foto\u011fraf se\u00e7ti\u011fimiz zaman bunun bir path de\u011feri olacak. Bu path de\u011ferinin de class taraf\u0131ndan bilinmesi i\u00e7in \u015fimdilik bo\u015f bir string de\u011feri olu\u015fturuyorum.<\/p>\n\n\n\n<script src=\"https:\/\/gist.github.com\/Cagatay0\/a3db894e2f529f9c854d258f0a510fb7.js\"><\/script>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">showImageWidget() diye tan\u0131mlad\u0131\u011f\u0131m Widget&#8217;\u0131 \u00e7izmeye ba\u015flayal\u0131m. <\/p>\n\n\n\n<script src=\"https:\/\/gist.github.com\/Cagatay0\/9b9830b01b6c5f475669e5a502c99031.js\"><\/script>\n\n\n\n<p class=\"wp-block-paragraph\">Burada dikkat etti\u011fim nokta selectedImagePath de\u011ferim bo\u015f ise yani bir foto\u011fraf se\u00e7ilmemi\u015fse ekran bo\u015f kalmas\u0131n diye bir Icon yerle\u015ftirdim. E\u011fer ki kullan\u0131c\u0131 foto\u011fraf se\u00e7erse selectedImagePath de\u011ferim art\u0131k bo\u015f olmayacak ve Image.file Widget&#8217;\u0131n\u0131 \u00e7izecektir. Image.file, Image.network gibi birka\u00e7 tane Image Widget&#8217;\u0131 oldu\u011funu kodlarken g\u00f6r\u00fcyoruz. Image.file kullanmam\u0131z\u0131n sebebi telefonun kendi dosyalar\u0131 i\u00e7erisinden bir Image \u00e7izece\u011fimizden kaynaklanmaktad\u0131r. \u015eimdi selectImageButtonWidget() olarak tan\u0131mlad\u0131\u011f\u0131m\u0131z butonumuzu kodlayal\u0131m.<\/p>\n\n\n\n<script src=\"https:\/\/gist.github.com\/Cagatay0\/aa37804c679683353c4725927a0df094.js\"><\/script>\n\n\n\n<script src=\"https:\/\/gist.github.com\/Cagatay0\/1413f0bead81ee346adb9b6fc7511f15.js\"><\/script>\n\n\n\n<p class=\"wp-block-paragraph\">Butondaki onTap kodunu kodlarken kullan\u0131c\u0131dan gerekli izinlerin al\u0131nm\u0131\u015f oldu\u011funu kabul ediyorum. E\u011fer ki izinleri hen\u00fcz kullan\u0131c\u0131dan istemediyseniz kod \u00e7al\u0131\u015fmayacakt\u0131r. \u00d6nce izin istemeniz gerekir. \u0130zinlerin nas\u0131l istendi\u011fiyle alakal\u0131 yaz\u0131ya <a href=\"https:\/\/cagatayoney.com\/?p=148\">buradan<\/a> ula\u015fabilirsiniz.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Yazm\u0131\u015f oldu\u011fumuz kodda en ba\u015fta ImagePicker class&#8217;\u0131ndan tan\u0131mlam\u0131\u015f oldu\u011fumuz picker de\u011fi\u015fkenini kullanmam\u0131z gerekiyor. picker.pickImage ile kullan\u0131c\u0131n\u0131n storage&#8217;\u0131na eri\u015fiyoruz, await ile kullan\u0131c\u0131 bir i\u015flem yapmadan alt blo\u011fa ge\u00e7mesini engellemi\u015f oluyoruz. Kullan\u0131c\u0131n\u0131n iki ihtimali bulunuyor. Ya hi\u00e7bir \u015fey se\u00e7meyecek ya da herhangi bir \u015feyler se\u00e7ecek. Se\u00e7medi\u011fi durumda image de\u011fi\u015fkenimiz null geliyor. Bu durumda herhangi bir \u015fey yapm\u0131yoruz. E\u011fer ki bir foto\u011fraf se\u00e7ilmi\u015fse se\u00e7ilen foto\u011fraf\u0131n de\u011ferleri image de\u011fi\u015fkenine atan\u0131yor. image.path ile biz bu foto\u011fraf\u0131n yolunu alm\u0131\u015f bulunuyoruz. Bu yolu da ilk ba\u015fta tan\u0131mlam\u0131\u015f oldu\u011fumuz String de\u011fi\u015fkenine at\u0131yoruz ve setState ile ekran\u0131 yeniden \u00e7iziyoruz. Bu sayede showImageWidget art\u0131k Image.file Widget&#8217;\u0131n\u0131 \u00e7iziyor.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Flutter&#8217;da galeriden bir foto\u011fraf se\u00e7me i\u015flemini a\u00e7\u0131klamaya ve anlatmaya \u00e7al\u0131\u015ft\u0131m. <a href=\"https:\/\/github.com\/Cagatay0\/Flutter\/tree\/main\/select_image\">Uygulaman\u0131n kaynak kodlar\u0131na buradan ula\u015fabilirsiniz<\/a>. \u0130yi \u00e7al\u0131\u015fmalar dilerim.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Merhabalar. Bug\u00fcnk\u00fc yaz\u0131mda sizlere Flutter uygulaman\u0131za galeriden bir foto\u011fraf\u0131 nas\u0131l se\u00e7ebilece\u011fimizi anlataca\u011f\u0131m. Galeriden bir foto\u011fraf se\u00e7ip bunu ekran\u0131m\u0131zda g\u00f6rmek i\u00e7in iki pakete ihtiyac\u0131m\u0131z var. \u00d6ncelikle kullan\u0131c\u0131dan izin almal\u0131y\u0131z. Daha sonra foto\u011fraf\u0131 se\u00e7meliyiz. Kullan\u0131c\u0131dan nas\u0131l izin alaca\u011f\u0131m\u0131zla alakal\u0131 yazd\u0131\u011f\u0131m yaz\u0131ya buradan ula\u015fabilirsiniz. KURULUM Paketimizi buradan indiriyoruz ve pubspec.yaml dosyas\u0131na ekliyoruz. pubspec.yaml [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":217,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[22,7,18,23,16,25,24,19,17],"class_list":["post-146","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-flutter","tag-crossplatformdevelopment","tag-flutter","tag-flutterdevelopment","tag-fluttertips","tag-fluttertutorial","tag-fotografsecimi","tag-galerientegrasyonu","tag-mobileappdevelopment","tag-mobiluygulamagelistirmerehberi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v22.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ad\u0131m Ad\u0131m Flutter&#039;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r? - \u00c7a\u011fatay \u00d6ney<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/cagatayoney.com\/?p=146\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ad\u0131m Ad\u0131m Flutter&#039;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r? - \u00c7a\u011fatay \u00d6ney\" \/>\n<meta property=\"og:description\" content=\"Merhabalar. Bug\u00fcnk\u00fc yaz\u0131mda sizlere Flutter uygulaman\u0131za galeriden bir foto\u011fraf\u0131 nas\u0131l se\u00e7ebilece\u011fimizi anlataca\u011f\u0131m. Galeriden bir foto\u011fraf se\u00e7ip bunu ekran\u0131m\u0131zda g\u00f6rmek i\u00e7in iki pakete ihtiyac\u0131m\u0131z var. \u00d6ncelikle kullan\u0131c\u0131dan izin almal\u0131y\u0131z. Daha sonra foto\u011fraf\u0131 se\u00e7meliyiz. Kullan\u0131c\u0131dan nas\u0131l izin alaca\u011f\u0131m\u0131zla alakal\u0131 yazd\u0131\u011f\u0131m yaz\u0131ya buradan ula\u015fabilirsiniz. KURULUM Paketimizi buradan indiriyoruz ve pubspec.yaml dosyas\u0131na ekliyoruz. pubspec.yaml [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/cagatayoney.com\/?p=146\" \/>\n<meta property=\"og:site_name\" content=\"\u00c7a\u011fatay \u00d6ney\" \/>\n<meta property=\"article:published_time\" content=\"2023-05-29T10:04:38+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-05-31T09:51:24+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"2560\" \/>\n\t<meta property=\"og:image:height\" content=\"1707\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"\u00c7a\u011fatay \u00d6ney\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u00c7a\u011fatay \u00d6ney\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/cagatayoney.com\/?p=146#article\",\"isPartOf\":{\"@id\":\"https:\/\/cagatayoney.com\/?p=146\"},\"author\":{\"name\":\"\u00c7a\u011fatay \u00d6ney\",\"@id\":\"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3\"},\"headline\":\"Ad\u0131m Ad\u0131m Flutter&#8217;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r?\",\"datePublished\":\"2023-05-29T10:04:38+00:00\",\"dateModified\":\"2023-05-31T09:51:24+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/cagatayoney.com\/?p=146\"},\"wordCount\":580,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3\"},\"image\":{\"@id\":\"https:\/\/cagatayoney.com\/?p=146#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg\",\"keywords\":[\"CrossPlatformDevelopment\",\"Flutter\",\"FlutterDevelopment\",\"FlutterTips\",\"FlutterTutorial\",\"Foto\u011frafSe\u00e7imi\",\"GaleriEntegrasyonu\",\"MobileAppDevelopment\",\"MobilUygulamaGeli\u015ftirmeRehberi\"],\"articleSection\":[\"Flutter\"],\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/cagatayoney.com\/?p=146#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/cagatayoney.com\/?p=146\",\"url\":\"https:\/\/cagatayoney.com\/?p=146\",\"name\":\"Ad\u0131m Ad\u0131m Flutter'da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r? - \u00c7a\u011fatay \u00d6ney\",\"isPartOf\":{\"@id\":\"https:\/\/cagatayoney.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/cagatayoney.com\/?p=146#primaryimage\"},\"image\":{\"@id\":\"https:\/\/cagatayoney.com\/?p=146#primaryimage\"},\"thumbnailUrl\":\"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg\",\"datePublished\":\"2023-05-29T10:04:38+00:00\",\"dateModified\":\"2023-05-31T09:51:24+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/cagatayoney.com\/?p=146#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/cagatayoney.com\/?p=146\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/cagatayoney.com\/?p=146#primaryimage\",\"url\":\"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg\",\"contentUrl\":\"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg\",\"width\":2560,\"height\":1707},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/cagatayoney.com\/?p=146#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/cagatayoney.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ad\u0131m Ad\u0131m Flutter&#8217;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/cagatayoney.com\/#website\",\"url\":\"https:\/\/cagatayoney.com\/\",\"name\":\"\u00c7a\u011fatay \u00d6ney\",\"description\":\"Mobile Application Developer\",\"publisher\":{\"@id\":\"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/cagatayoney.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3\",\"name\":\"\u00c7a\u011fatay \u00d6ney\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/cagatayoney.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/666af91777a6180e269af38e58349c1bd120a784de3b982afddb34547376e57e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/666af91777a6180e269af38e58349c1bd120a784de3b982afddb34547376e57e?s=96&d=mm&r=g\",\"caption\":\"\u00c7a\u011fatay \u00d6ney\"},\"logo\":{\"@id\":\"https:\/\/cagatayoney.com\/#\/schema\/person\/image\/\"},\"sameAs\":[\"http:\/\/cagatayoney.com\"],\"url\":\"https:\/\/cagatayoney.com\/?author=1\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Ad\u0131m Ad\u0131m Flutter'da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r? - \u00c7a\u011fatay \u00d6ney","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/cagatayoney.com\/?p=146","og_locale":"tr_TR","og_type":"article","og_title":"Ad\u0131m Ad\u0131m Flutter'da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r? - \u00c7a\u011fatay \u00d6ney","og_description":"Merhabalar. Bug\u00fcnk\u00fc yaz\u0131mda sizlere Flutter uygulaman\u0131za galeriden bir foto\u011fraf\u0131 nas\u0131l se\u00e7ebilece\u011fimizi anlataca\u011f\u0131m. Galeriden bir foto\u011fraf se\u00e7ip bunu ekran\u0131m\u0131zda g\u00f6rmek i\u00e7in iki pakete ihtiyac\u0131m\u0131z var. \u00d6ncelikle kullan\u0131c\u0131dan izin almal\u0131y\u0131z. Daha sonra foto\u011fraf\u0131 se\u00e7meliyiz. Kullan\u0131c\u0131dan nas\u0131l izin alaca\u011f\u0131m\u0131zla alakal\u0131 yazd\u0131\u011f\u0131m yaz\u0131ya buradan ula\u015fabilirsiniz. KURULUM Paketimizi buradan indiriyoruz ve pubspec.yaml dosyas\u0131na ekliyoruz. pubspec.yaml [&hellip;]","og_url":"https:\/\/cagatayoney.com\/?p=146","og_site_name":"\u00c7a\u011fatay \u00d6ney","article_published_time":"2023-05-29T10:04:38+00:00","article_modified_time":"2023-05-31T09:51:24+00:00","og_image":[{"width":2560,"height":1707,"url":"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg","type":"image\/jpeg"}],"author":"\u00c7a\u011fatay \u00d6ney","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"\u00c7a\u011fatay \u00d6ney","Tahmini okuma s\u00fcresi":"3 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/cagatayoney.com\/?p=146#article","isPartOf":{"@id":"https:\/\/cagatayoney.com\/?p=146"},"author":{"name":"\u00c7a\u011fatay \u00d6ney","@id":"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3"},"headline":"Ad\u0131m Ad\u0131m Flutter&#8217;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r?","datePublished":"2023-05-29T10:04:38+00:00","dateModified":"2023-05-31T09:51:24+00:00","mainEntityOfPage":{"@id":"https:\/\/cagatayoney.com\/?p=146"},"wordCount":580,"commentCount":2,"publisher":{"@id":"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3"},"image":{"@id":"https:\/\/cagatayoney.com\/?p=146#primaryimage"},"thumbnailUrl":"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg","keywords":["CrossPlatformDevelopment","Flutter","FlutterDevelopment","FlutterTips","FlutterTutorial","Foto\u011frafSe\u00e7imi","GaleriEntegrasyonu","MobileAppDevelopment","MobilUygulamaGeli\u015ftirmeRehberi"],"articleSection":["Flutter"],"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/cagatayoney.com\/?p=146#respond"]}]},{"@type":"WebPage","@id":"https:\/\/cagatayoney.com\/?p=146","url":"https:\/\/cagatayoney.com\/?p=146","name":"Ad\u0131m Ad\u0131m Flutter'da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r? - \u00c7a\u011fatay \u00d6ney","isPartOf":{"@id":"https:\/\/cagatayoney.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/cagatayoney.com\/?p=146#primaryimage"},"image":{"@id":"https:\/\/cagatayoney.com\/?p=146#primaryimage"},"thumbnailUrl":"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg","datePublished":"2023-05-29T10:04:38+00:00","dateModified":"2023-05-31T09:51:24+00:00","breadcrumb":{"@id":"https:\/\/cagatayoney.com\/?p=146#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/cagatayoney.com\/?p=146"]}]},{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/cagatayoney.com\/?p=146#primaryimage","url":"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg","contentUrl":"https:\/\/cagatayoney.com\/wp-content\/uploads\/2023\/05\/artur-shamsutdinov-Gll-v69L8iA-unsplash-scaled.jpg","width":2560,"height":1707},{"@type":"BreadcrumbList","@id":"https:\/\/cagatayoney.com\/?p=146#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/cagatayoney.com\/"},{"@type":"ListItem","position":2,"name":"Ad\u0131m Ad\u0131m Flutter&#8217;da Galeriden Foto\u011fraf Se\u00e7me Nas\u0131l Yap\u0131l\u0131r?"}]},{"@type":"WebSite","@id":"https:\/\/cagatayoney.com\/#website","url":"https:\/\/cagatayoney.com\/","name":"\u00c7a\u011fatay \u00d6ney","description":"Mobile Application Developer","publisher":{"@id":"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/cagatayoney.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/cagatayoney.com\/#\/schema\/person\/cc1feeedb5532cdba38ff10ec28b2bd3","name":"\u00c7a\u011fatay \u00d6ney","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/cagatayoney.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/666af91777a6180e269af38e58349c1bd120a784de3b982afddb34547376e57e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/666af91777a6180e269af38e58349c1bd120a784de3b982afddb34547376e57e?s=96&d=mm&r=g","caption":"\u00c7a\u011fatay \u00d6ney"},"logo":{"@id":"https:\/\/cagatayoney.com\/#\/schema\/person\/image\/"},"sameAs":["http:\/\/cagatayoney.com"],"url":"https:\/\/cagatayoney.com\/?author=1"}]}},"_links":{"self":[{"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/posts\/146","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=146"}],"version-history":[{"count":11,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/posts\/146\/revisions"}],"predecessor-version":[{"id":228,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/posts\/146\/revisions\/228"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=\/wp\/v2\/media\/217"}],"wp:attachment":[{"href":"https:\/\/cagatayoney.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=146"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=146"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cagatayoney.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=146"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}