2012年07月16日

Androidとgesture event

Androidはgesture eventに対応していないようなので以下のコードが発火しなかった。(ちなみにAndorid2.3で検証)

$("selector").on("gesturestart",function(){
//do something
}).on("gesturechange",function(){
//do something
}).on("gestureend",function(){
//do something
});
タグ:android gesture
posted by ねこまんま at 19:26 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2012年01月13日

Android SDKを再インストール後のEclipsのエラーに対応

Android SDKを再インストールしたところEcripsが「Could not find SDK folder '/Applications/android-sdk-mac_x86'」とエラーを出すようになりました。

Helpの「Check for Updates」からEclipsをアップデート、メニューの「Eclips」→「環境設定」→「Android」の「SDK Location」を変更することでエラーがでなくなりました。
タグ:Ecrips android
posted by ねこまんま at 17:48 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2011年05月23日

AndroidやiPhoneにYou Tube動画を埋め込む

AndroidやiPhoneにYou Tube動画を埋め込もうとして迷走したのでメモ。

まず普通の共有コードを貼り付けたところ、iPhoneのみちゃんと再生できた。iPhone Flash対応してないのにすごい!
Android2.1はダメっ子再生できず、Googleと親戚のくせに!

脳内でiPhoneとAndroid2.2はiFlameで表示してその他はリンクでYou Tube飛ばそうと妄想する。

その前にためしに古い共有コードを使ってみる。

AndroidもiPhoneもちゃんと再生される!完璧。

ただYou TubeのUIがデバイスごとに違うのでデバイスの独自実装の予感はするけど結果OK


結論;スマートフォンにYou Tubeを埋め込む場合は古い埋め込みコードで!
posted by ねこまんま at 17:12 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2011年05月12日

スマートフォンで読み込むCSSを変更する

iPhoneやAndroidのスマートフォンごとに読み込むスタイルシートを変更する方法。メディアクエリーだとAndroid端末によっては対応できないのでJavaScriptでやるのが正攻法

<head>
・・・
<script>
(function(){
var _UA = navigator.userAgent;
if (_UA.indexOf('iPhone') > -1 || _UA.indexOf('iPod') > -1) {
document.write('<link rel="stylesheet" href="/css/iphone.css">');
}else if(_UA.indexOf('Android') > -1){
document.write('<link rel="stylesheet" href="/css/android.css">');
}else{
document.write('<link rel="stylesheet" href="/css/pc.css">');
}
})();
</script>
</head>


DOMだと時間がかかるのでdocument.writeでやるのがスムーズ。
タグ:android iPhone
posted by ねこまんま at 21:13 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2011年05月06日

Androidにおけるtext-shadowとfont-weight

Androidにfont-weight:boldが効かない。擬似的にtext-shadowで対応しようとしたらこっちの実装もヘボイ。

text-shadow:0 2px 0 #FFFFFF;


広がりに0pxを指定するとtext-shadowが反映されない。

text-shadow:0 2px 1px #FFFFFF;


text-shadowの広がりには1px以上の数値指定が必要。0.1 pxとかも駄目。
posted by ねこまんま at 16:51 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

HTC Ariaにviewportのinitial-scale指定が効かない

HTC Ariaにviewportのinitial-scale指定が効かない

<meta name="viewport" content="width=device-width,minimum-scale=0.5,maximum-scale=0.5,initial-scale=0.5">


なんてのが利用できない。

<meta name="viewport" content="width=device-width,minimum-scale=1,maximum-scale=1,initial-scale=1">


素直にこうするべき。

HTC Ariaは結構ブラウザにカスタマイズを入れているらしくコンテンツフィットだけでなく要素フィット的な機能も実装されている。。。。
posted by ねこまんま at 06:52 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2011年04月24日

Androidで位置情報を取得できない場合に対応

Android端末のGPS機能はくそ。取得できないことが往々にしてある。
Android用のgeolocation APIの記述を次のように変更しておくとエラー処理を追加できる

var geo = navigator.geolocation || google.gears.factory.create('beta.geolocation');
var flag=false;
if(geo){
geo.getCurrentPosition(
function (pos) {
flag=true;
console.log(pos.coords.latitude,pos.coords.longitude);
},
function (e) {
alert("位置情報の取得に失敗しました");
},
{
enableHighAccuracy: true
}
);
}
setTimeout(function(){
if(!flag){
alert("位置情報の取得に失敗しました");
}
},60000);


60秒まって位置情報が取得できてない場合はアラートでエラーを返すようにしている
タグ:android
posted by ねこまんま at 18:37 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

HTML5のgeolocation APIをAndroidでも利用する

HTML5のgeolocation APIでは次のように記述するとiPhoneやブラウザで位置情報が取得できる。

navigator.geolocation.getCurrentPosition(
function (pos) {
console.log(pos.coords.latitude,pos.coords.longitude);
},
function (e) {
alert("位置情報の取得に失敗しました");
}
);


Androidで利用する場合はGoogle Gearsを利用しなくてはいけない。

あらかじめgears_init.jsを読み込んでおき、次のように記述するでAndroidを含むgeolocationに対応したブラウザで位置情報が取得できるようになる。

var geo = navigator.geolocation || google.gears.factory.create('beta.geolocation');
if(geo){
geo.getCurrentPosition(
function (pos) {
console.log(pos.coords.latitude,pos.coords.longitude);
},
function (e) {
alert("位置情報の取得に失敗しました");
},
{
enableHighAccuracy: true
}
);
}
posted by ねこまんま at 18:30 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2011年04月16日

Android 2.1でAjaxでXMLを取得

Android 2.1でAjaxでXMLを取得しようとした所、うまく取得できない。

$.ajax({
url: "samole.xml",
dataType : "xml" ,
success: function(data){
//ng
}
});


正確には取得できてるのだけど、オブジェクト構造が壊れており、取得した物をパースできない。dataTypeをtextに変換すれば取得したtextをjQueryでパースできるようになる。

$.ajax({
url: "samole.xml",
dataType : "text" ,
success: function(data){
//ok
}
});
タグ:android xml AJAX
posted by ねこまんま at 03:52 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする

2011年03月18日

Androidのapkファイルを端末に直接インストール

開発用のapkファイルが送られてきたので検証端末のXperiaにインストール。

まずは、Androidマーケットから「Apk Manager」をダウンロードしてきてインストール。

端末とPCをケーブルにつないで、SSDの適当なフォルダにapkファイルを設置、端末を再起動します。

「Apk Manager」起動後、Installタブをタップするとアプリが表示されるのでそこからインストールが可能です。
タグ:android
posted by ねこまんま at 04:08 | Comment(0) | TrackBack(0) | Android | 更新情報をチェックする