トップへ戻るニュースフォーラムFLASH-ML 過去ログBak@Flaダウンロードよくある質問と答
ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
メインメニュー
メイン
   どこでもFlash【携帯向けFlash関連】
     未対応機種振り分け
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
saikirasu
Åê¹ÆNo.33086
投稿日時: 2007-4-21 11:25
新米
居住地:
投稿: 2
使用環境:
WinXP,Flash8
未対応機種振り分け
最近携帯用ページを作りはじめた携帯初心者です。
HPが出来上がり、CGIにてキャリア別(i-mode/foma/j-pone/Vodafone/softbank/KDDI/browser/other)の振り分けはしたのですがau/softbankのFLASH未対応機種をはじく方法がわかりません。
一つ一つユーザーエージェントを記載するのも困難かと思い、みなさんどうされているのか教えていただけますでしょうか?
kurekure
Åê¹ÆNo.33113
投稿日時: 2007-4-23 21:59
新米
居住地:
投稿: 9
使用環境:
WinXP,Flash Professional 8, FlashLite1.1
Re: 未対応機種振り分け
ダウンロードして使用を前提としないのであれば、
ブラウザではじいたらいかがですか?

さんざん通信料をかけてフラッシュをダウンロードしてから「やっぱり使えませんでした」なんて非情なことをさせてはいけないと思うのです。
saikirasu
Åê¹ÆNo.33161
投稿日時: 2007-4-25 12:43
新米
居住地:
投稿: 2
使用環境:
WinXP,Flash8
Re: 未対応機種振り分け
FLASHをインタラクティブに使用し、index.swfにしています。
この方法でプラウザではじく事が可能なんでしょうか?
ご教授お願いいたします。
ぷれ☆
Åê¹ÆNo.33162
投稿日時: 2007-4-25 14:20
新米
居住地:
投稿: 9
使用環境:
WinVista
MacOS 10.4/9.2

CS3

-- Flash Lite --
DOCOMO SO905iCS, SO903i
AU W61S, W43S
SBM 810P
iRiver E10, Clix
Mylo COM:2
----------------
Re: 未対応機種振り分け
うちのサイトでは、DBに各端末の情報を保持し、コンテンツの対応情報(FlashLiteバージョン, ファイルサイズ, 搭載メモリ)と照らし合わせて、ファイル(または、非対応ページ)を振り分けています。
欠点としては、新機種が出たときに入力しなければいけない事ですね。

---------------------------------------------------

AUの端末対応の一部(サンヨー, ソニー)を調べてみたところ、新機種は古い機種より低いバージョンを搭載することがないようです。
SANYO WIN端末
  ■FlashLite 1.1
   SA** (**:31?37)
  ■FlashLite 2.0
    ST** (**:31)
    SA** (**:38?39)
SANYO 非WIN端末
  ■FlashLite 1.1
    ST** (**:27?2A)
  ■FlashLite 2.0
    ST** (**:2C?2D)

SONY ERICSSON WIN端末
  ■FlashLite 1.1
    SN** (**:31?36)
  ■FlashLite 2.0
    SN** (**:37?39)


というわけで、
正規表現を使用すれば簡易的なFlash対応の振り分けができそうです。速成で動作非保証ですが、参考になればどーぞ(PHPスクリプト)

<?php
	// ユーザーエージェントを取得
	$userAgent = $_SERVER['HTTP_USER_AGENT'];
	
	// 端末メーカーと種別を取得
	preg_match('/\AKDDI-([A-Za-z]+)([0-9A-Fa-f]+) UP\.Browser\/[0-9.]+ \(GUI\) [A-Za-z0-9.]+\/[A-Za-z0-9.]+\Z/', $userAgent , $matches);
	
	// 端末メーカーごとに振り分け
	switch($matches[1]) {
		case "SA":
			if( hexdec($matches[2]) >= hexdec("38") ) {
				$flash_lite_version = 2.0;
			} elseif( hexdec($matches[2]) >= hexdec("31") ) {
				$flash_lite_version = 1.1;
			}
			break;
			
		case "ST":
			if( hexdec($matches[2]) >= hexdec("2C") ) {
				$flash_lite_version = 2.0;
			} elseif( hexdec($matches[2]) >= hexdec("27") ) {
				$flash_lite_version = 1.1;
			}
			break;
			
		case "SN":
			if( hexdec($matches[2]) >= hexdec("37") ) {
				$flash_lite_version = 2.0;
			} elseif( hexdec($matches[2]) >= hexdec("31") ) {
				$flash_lite_version = 1.1;
			}
			break;
	}
	
?>

<html>
<body>
<?php echo "Flashバージョン = " . sprintf("%.1f", $flash_lite_version); ?>
</body>
</html>
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 
Copyright (C) 2003 FLASH-japan. All rights reserved.
Powered by Xoops