2014-06-23 3 views
0

저는 Titanium Developer를 처음 사용합니다. 최신 iOS 룩앤필로 UI를 변경하기 위해 Titanium 프로젝트를 할당했습니다. App을 실행할 때 Ti.Android와 같은 throwh 예외는 항상 정의되지 않습니다.Titanium Ti.Android Unios에서 정의되지 않음

는 SDK의 이전 버전은 3.0.2입니다하지만 난 이제 티타늄에 대한 정의로 오류를 보여 안드로이드에서 오류없이 최신 버전 3.2.3GA

현재 응용 프로그램 실행을 구성하고있다. Ios에만있는 Android.

내 반죽 Ti.Android가 안드로이드 플랫폼 전용인지, 아니면 iOS 및 Android 용인지 여부는 최신 버전의 iOS에서는 지원되지 않습니다.

도와주세요. 안드로이드 (티> 1.5, 오른쪽에 로고 참조) http://docs.appcelerator.com/titanium/latest/#!/api/Titanium.Android 그러나 당신은 단지 Ti.Android에 액세스하려고하면 작동해야하며 TiAndroid 속성이 없기 때문에 undefined을 반환만을위한 문서 Ti.Android에서 언급 한 바와 같이

+0

. 'if (Titanium.Platform.name == 'android') {Ti.Android .......}' – Swanand

+0

과 같은 조건으로 작성하십시오. 그러나 이전 소스에서는 아마도 이전 버전 3.0에서 같은 소스가 빌드되었습니다. 2. 앱 스토어에서도 사용할 수 있습니다. 내 생각에 Titanium.Android가 최신 버전에서 폐기되었는지 여부가 궁금합니다. – CoolMonster

답변

1

사용할 수 있습니다. 어떤 오류도 보지 말아야하지만, 분명히 작동하지 않는 Ti.Android.XXX과 같은 다른 속성에 액세스하려고합니다.

1

플랫폼 특정 모듈/기능을 사용하기 전에 먼저 플랫폼을 확인해야합니다. commonjs에 함수를 추가하여 점검 할 수 있습니다. 컨트롤러에

var osname = Ti.Platform.osname;  

function isAndroid() { 
    return osname === 'android'; 
} 

function isIOS() { 
    return osname === 'iphone' || osname === 'ipad'; 
} 

function isMobileWeb() { 
    return osname === "mobileweb"; 
} 

, 당신은 다음과 같은 일을 할 : 당신이 아이폰 OS에서 안드로이드 OS를 찾을 수있는 방법

var fn = require('commonjs'); 

if (fn.isAndroid()) { 
    //the things you do for android only 
} else if (fn.isIOS() { 

} else if (fn.isMobileWeb()) { 

}