1

私はモバイルデバイス用のj2meでアプリケーションを開発しています。私のアプリケーションでは、デバイスのプラットフォームを取得する必要があり、それに基づいてキーコードを取得する必要があります。

次のリンクから参照しました:http ://www.iteye.com/topic/179073 (以下のプラットフォーム検出コードのスニペットを参照)。

今私の問題は、Micromaxとlava mobilesのプラットフォームを使用する必要があることですが、そのリンクでは利用できません。ネットでも検索しましたが、正しいリンクが見つかりません。

/** 
 * Returns mobile phone platform 
 * 
 * @return name mobile phone platform 
 */  
private String getPlatform() {  
    // detecting NOKIA or SonyEricsson  
    try {  
        final String currentPlatform = System.getProperty("microedition.platform");  
        if (currentPlatform.indexOf("Nokia") != -1) {  
            return PLATFORM_NOKIA;  
        } else if (currentPlatform.indexOf("SonyEricsson") != -1) {  
            return PLATFORM_SONY_ERICSSON;  
        }  
    } catch (Throwable ex) {  
    }  
    // detecting SAMSUNG  
    try {  
        Class.forName("com.samsung.util.Vibration");  
        return PLATFORM_SAMSUNG;  
    } catch (Throwable ex) {  
    }  
    // detecting MOTOROLA  
    try {  
        Class.forName("com.motorola.multimedia.Vibrator");  
        return PLATFORM_MOTOROLA;  
    } catch (Throwable ex) {  
        try {  
            Class.forName("com.motorola.graphics.j3d.Effect3D");  
            return PLATFORM_MOTOROLA;  
        } catch (Throwable ex2) {  
            try {  
                Class.forName("com.motorola.multimedia.Lighting");  
                return PLATFORM_MOTOROLA;  
            } catch (Throwable ex3) {  
                try {  
                    Class.forName("com.motorola.multimedia.FunLight");  
                    return PLATFORM_MOTOROLA;  
                } catch (Throwable ex4) {  
                }  
            }  
        }  
    }  
    try {  
        if (adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA).toUpperCase().indexOf(SOFT_WORD) > -1) {  
            return PLATFORM_MOTOROLA;  
        }  
    } catch (Throwable e) {  
        try {  
            if (adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA1).toUpperCase().indexOf(SOFT_WORD) > -1) {  
                return PLATFORM_MOTOROLA;  
            }  
        } catch (Throwable e1) {  
            try {  
                if (adaptorCanvas.getKeyName(SOFT_KEY_LEFT_MOTOROLA2).toUpperCase().indexOf(SOFT_WORD) > -1) {  
                    return PLATFORM_MOTOROLA;  
                }  
            } catch (Throwable e2) {  
            }  
        }  
    }  
    // detecting SIEMENS  
    try {  
        Class.forName("com.siemens.mp.io.File");  
        return PLATFORM_SIEMENS;  
    } catch (Throwable ex) {  
    }  
    // detecting LG  
    try {  
        Class.forName("mmpp.media.MediaPlayer");  
        return PLATFORM_LG;  
    } catch (Throwable ex) {  
        try {  
            Class.forName("mmpp.phone.Phone");  
            return PLATFORM_LG;  
        } catch (Throwable ex1) {  
            try {  
                Class.forName("mmpp.lang.MathFP");  
                return PLATFORM_LG;  
            } catch (Throwable ex2) {  
                try {  
                    Class.forName("mmpp.media.BackLight");  
                    return PLATFORM_LG;  
                } catch (Throwable ex3) {  
                }  
            }  
        }  
    }  
    return PLATFORM_NOT_DEFINED;  
}  
4

0 に答える 0