Android uygulamalarında tasarlanan ekran görünümü, ekranın yatay veya dikey konuma çevrilmesiyle görünümde sorunlara yol açabilir. Ekran dönüşümünü engellemek için screenOrientation özelliğini nosensor olarak ayarlamamız gerekir.
AndroidManifest.xml
12345678910111213141516171819202122232425262728
<?xml version="1.0" encoding="utf-8"?><manifestxmlns:android="http://schemas.android.com/apk/res/android"package="com.example.mwe"android:versionCode="1"android:versionName="1.0"><uses-sdkandroid:minSdkVersion="8"android:targetSdkVersion="17"/><applicationandroid:allowBackup="true"android:icon="@drawable/ic_launcher"android:label="@string/app_name"android:theme="@style/AppTheme"><activityandroid:name="com.example.mwe.MainActivity"android:label="@string/app_name"android:screenOrientation="nosensor"><!-- BU SATIRDAKİ KOD KULLANILIR --><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity></application></manifest>
Android’e yeni başlayanlar için önemli ve uğraştırıcı olan bir konu veritabanıdır. Android uygulamalarında veritabanı olarak Oracle, Mysql, Sqlite gibi birçok seçenek vardır. Ama kurulum ve konfigürasyon bakımından en kolayı Sqlite olduğu için genellikle Android de bu tercih edilir.
Android de oluşturduğumuz ya da var olan veritabanları /data/data/package_name/databases dizini altında bulunur. Bu dizine erişebilmek için Eclipse ‘de DDMS sekmesinden ya da açık değilse, Window-Show View-File Explorer ‘ı seçmemiz gerekiyor. Daha sonra dizin altından veritabanımıza erişebiliriz. DDMS ‘den sadece veritabanına erişimi sağlayabiliriz. Veritabanı içerisindeki tabloları,yapıları görmek için
SQLiteManager kullanabiliriz. SQLiteManager, Firefox eklentisi olarak kullanılır.
Şimdi oluşturduğumuz veritabanını önce push ederek dışarı aktaralım. Databasename.db adındaki dosyamızı push ettikten sonra Firefox’dan SQLiteManager’ı açarak veritabanımızı içeri aktaralım. Burda veritabanında yaptığımız her değişiklik .db dosyamıza kaydedilir. Yaptığımız değişiklikleri uygulamamızın içerisine aktarmak içinde tekrar DDMS sekmesinden dizinimizin altındaki veritabanımıza gelip, önceden dışarı aktardığımız ve üzerinde SQLiteManager ile çalıştığımız veritabanı dosyamızı pull ederek yaparız.
Vagrant ansible playbook paketlerinin bulunduğu bir depoyu kurmaya çalışırken $ vagrant up kısmında aşağıdaki hata ile karşılaştım.
Hatada anlatılmak istenilen vagrant-ansible geminin kurulmamış olmasıdır. Bu sorunu düzeltmek için ilk önce sistemi update ettim.
Terminal
1
$ sudo apt-get update
Sistemim kendini update ederken /etc/apt/sources.list.d dizini altındaki bazı dosyalar yüzünden birkaç hata ile karşılaşarak güncelleştirmeyi yarıda kesti.
Terminal
1234567
...
N: Ignoring file 'ferramroberto-java-oneiric.list.save' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
N: Ignoring file 'webupd8team-java-oneiric.list.save' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
N: Ignoring file 'oneiric-partner.list.save' in directory '/etc/apt/sources.list.d/' as it has an invalid filename extension
...
Bu sorunu halletmek için sources.list.d dizinimiz altındaki hata veren dosyaları silmeliyiz.
Octopress, Jekyll için hazırlanan, Github Pages’in arkasında da kullanılan bir statik blog framework’ü. En popüler engine olarak görülüyor. Octopress rails tabanlı olduğundan kullanımı diğer blog yazılımlarına göre çok farklı. Şimdi adım adım octopress kurulumu ve kullanımına geçelim. Sisteminizde Ruby kurulu olmalıdır.
İlk olarak Octopress deposunu klonlayalım.
Terminal
123456789101112131415161718
$ git clone git://github.com/imathis/octopress.git octopress
$ cd octopress
$ bundle install
...
...
Your bundle is complete!
$ rake install
## Copying classic theme into ./source and ./sassmkdir -p sourcecp -r .themes/classic/source/. sourcemkdir -p sass
cp -r .themes/classic/sass/. sass
mkdir -p source/_posts
mkdir -p public
Blogumuz oluştu. Şimdi blog içerisindeki ayarlamaları yapalım. Bunun için octopress ayarlarının bulunduğu _config.yml dosyasında düzenlemeler yapmamız gerekiyor. Bu dosyadaki kesin düzenlenmesi gereken kısım aşağıdaki gibidir.
_config.yml
123456
url: # Blog adresiniztitle: # Blog Başlığısubtitle: # Alt Başlıkauthor: # Blogger Adısimple_search: # http://google.com/searchdescription: # Blog Hakkında Bilgi
Dosyanın alt taraflarında sosyal ağ bağlantılarınızla ilgili ayarlamalarınızı yapmanız mümkündür.
Şimdi ilk blog yazımızı oluşturalım.
Terminal
123
$ rake new_post["hello-octopress"]...
Creating new post: source/_posts/2013-06-23-hello-octopress.markdown
_posts dizinimizin altında dosyamız oluştu. Şimdi dosyayı açıp blogunuzu markdown syntax uygun bir biçimde yazabilirsiniz.
Terminal
12345678910111213141516171819202122
$ rake generate
...
Building site: source -> public
Successfully generated site: source -> public
$ rake preview
Configuration from /home/betul/octopress/_config.yml
[2013-06-23 23:43:46] INFO WEBrick 1.3.1
[2013-06-23 23:43:46] INFO ruby 1.9.2 (2011-07-09)[i686-linux][2013-06-23 23:43:46] INFO WEBrick::HTTPServer#start: pid=4168 port=4000
Auto-regenerating enabled: source -> public
[2013-06-23 23:43:46] regeneration: 94 files changed
>>> Change detected at 23:43:46 to: screen.scss
identical public/stylesheets/screen.css
Dear developers making use of FSSM in your projects,
FSSM is essentially dead at this point. Further development will
be taking place in the new shared guard/listen project. Please
let us know if you need help transitioning! ^_^b
- Travis Tilley
En son kodumuz ile localhost:4000 adresinde bir server açtık. Bu adrese girdiğinizde blogunuzun güncel halini görebilirsiniz.
Blogumuzu oluşturduk şimdi deploy aşamasına geçelim. Ben github üzerinden gidicem fakat octopress sadece github değil heroku,rsync gibi hosting servisleri sağlayan sitelerede deploy edilebilir.
İlk olarak github da create new Github reposity diyerek kendi kullanıcı adımızla oluşturduğumuz yani username.github.io adında bir depo oluşturalım. Daha sonra yerelimizde bulunan octopress dizinine girip terminalde şu kodları yazalım :
Terminal
123456789101112131415
$ rake setup_github_pages
Enter the read/write url for your repository: git@github.com:username/username.github.com.git
Added remote git@github.com:username/username.github.com.git as origin
Set origin as default remote
Master branch renamed to 'source'for committing your blog source files
Initialized empty Git repository in /home/username/source/octopress/_deploy/.git/
[master (root-commit) 2a4e9e7] Octopress init
1 files changed, 1 insertions(+), 0 deletions(-)create mode 100644 index.html
---
## Now you can deploy to http://username.github.com with `rake deploy` ##
Yerelime kurulum yaparken bazı sorunlarla karşılaştım. Siz de karşılaşmış olabilirsiniz.
İlk olarak depoyu bundle ettiğimde aşağıdaki hatayı aldım.
Terminal
1234
....
An error occurred while installing rdiscount (2.0.7.3), and Bundler cannot
continue.
Make sure that `gem install rdiscount -v '2.0.7.3'` succeeds before bundling.
Bu rdiscount geminin versiyonuyla ilgili bir hatadır. Gemfile içerisinde bu gem’i bulup versiyon kısmını silip tekrar bundle ettiğimizde sorunumuz ortadan kalkar.
Diğerini ise blog yazımı oluşturduktan sonra aldım.
Terminal
12345
$ rake generate
...
Building site: source -> public
/var/lib/gems/1.9.1/gems/rdiscount-1.6.8/lib/rdiscount.rb:89:in `block in initialize': undefined method `footnotes='for#<RDiscount:0xac76988 @text="", @autolink=true> (NoMethodError)
Bu hata rdiscount yani markdown syntax’ı için kullanılan bir gem tarafından kaynaklanmaktadır. Markdown için rdiscount dışında maruku,kramdown gibi seçenekleri de kullanabiliriz. Şimdi _config.yml dosyasını açıp markdown kısmındaki rdiscount’u silmeniz gerekir ve yerine maruku yada kromdown dan birini yazın.
_config.yml
123
...
markdown: kramdown
pygments: false# default python pygments have been replaced by pygments.rb
Bugün yerelimde bir problemle karşılaştım. Yerelimi çalıştırdığımda bomboş beyaz bir sayfa(blank page) önüme geliyordu. Sistemimde WampServer kurulu.
İnternette biraz araştırma yaptıktan sonra bu sorunu da hallettim.
Beyaz sayfa hatasının temel nedeni port çakışmasıdır. Yerelden başka port 80 ‘ni kullanan bir uygulama varsa çakışma yaşanır ve localhost çalışmaz.
Bu çakışmayı anlamak için pid ‘leri kontrol etmeliyiz . Öncelikle cmd ‘yi açalım ve şu komutu yazalım.
port 80 de çalışan uygulamanın pid ‘sini bulup prosesi sonlandır diyerek işlemi bitirin.
Şimdi önemli bir noktaya geldik. Eğer 80 portu pid ‘si 4 olan bir uygulamada çalışıyorsa yani komutun çıktısı aşağıdaki gibiyse :
Terminal
1
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4
portunuz IIS (Internet Information Services) tarafından kullanılıyor demektir. Bu sorunun çözümü basit.
Internet Information Services (IIS) Yöneticisini çalıştırın.
Sunucuyu durdurun
WampServer’ tekrar çalıştırın yeşil rengini almışsa sorununuz halledilmiş demektir.
EDIT !!!
Bilgisayarınızı yeniden başlattığınızda yine aynı sorunla karşılaşıyorsanız aşağıdaki adımları uygulayarak sorunu tamamen ortadan kaldırabilirsiniz.
>
İlk olarak şunu bilmek gerekir ki IIS prosesi görev yöneticisinden kaldırılmaz. IIS yöneticisine gidip servisi durdurmak ise bize sadece geçici çözüm sunar.
Masaüstüne gelip “bilgisayar” sağa tıklayın ve “Yönet” i seçin.
Karşınıza gelen ekranda “Hizmetler ve Uygulamar” açın ve “hizmetler” kısmına çift tıklayın.
En aşağıdan “Web dağıtım aracı hizmeti” ni seçin . (Web Deployment Agent Service)
Servisi durdurun ve tekrar başlamaması için devredışı bırakın. Aşağıdaki gibi bir görüntü oluşturmanız gerekir.
>
Şimdi yerelinizi tekrar çalıştırın. Artık port 80 sadece yereline ait.
Gün geçmiyor ki Eclipse’den bir hata almayalım. Bugün Servlet ile ilgili bir hata aldım. Yeni bir proje oluşturduğunuz da yada varolan bir
projeyi import ettiğinizde Servlet’ın her
bir köşesi size hata veriyorsa aşağıdaki adımları uygulayarak bu problemi çözebilirsiniz.
>