2013年5月31日金曜日

Windows7 ユーザ名の変更

Windowsインストール時に指定したユーザ名が適切じゃなかった。
コントロールパネルからユーザアカウントの変更をしても、
変わるのはログイン時に表示される名前だけ。

Microsoftのフォーラム記事を読み、

「コンピューターの管理」→ [ローカルユーザーとグループ]→[ユーザー]をクリックし、
目的のユーザーで右クリックし、[名前の変更]で名前を変更し、
ログインし直したが、
C:\ユーザの下のフォルダ名は変わっていなかった。

新しくアカウントを作成して、移行するしかないようだ.....orz

参考サイト
http://answers.microsoft.com/ja-jp/windows/forum/windows_7-security/windows7%E3%81%AE%E3%82%A4%E3%83%B3%E3%82%B9/782ee029-0f74-4fdc-8d40-6ceb6596d372


2013年5月1日水曜日

Androidアプリ開発 GPS機能ON/OFF

スマホを紛失したとき、
 ・マナーモードをオフ
 ・GPSオフ
 ・データ通信オフ
にしてたので、電話をかけても聞こえず(当然^^;;
docomoのケータイお探しサービスも役に立たなかったので、
 ・マナーモードをオンにして音量最大に
 ・GPSをオン
 ・データ通信オン
にするアプリを作ろう!と調査開始。

通常のアプリではパーミッション(WRITE_SECURE_SETTINGS)の設定が許されてなく、
GPSオンのAPIは標準で提供されていない。
(データ通信オン・オフも非標準ですが....)

IntentをBroadCastして実現する方法を見つけた。

(抜粋)
private void turnGPSOn(){
    String provider = Settings.Secure.getString(getContentResolver(), Settings.Secure.LOCATION_PROVIDERS_ALLOWED);

    if(!provider.contains("gps")){ //if gps is disabled
        final Intent poke = new Intent();
        poke.setClassName("com.android.settings", "com.android.settings.widget.SettingsAppWidgetProvider");
        poke.addCategory(Intent.CATEGORY_ALTERNATIVE);
        poke.setData(Uri.parse("3"));
        sendBroadcast(poke);
    }
}

しかし、この方法は、Android2.3以降より使えなくなったらしい。
N03-E(Android 4.0.4)ではまったく無反応(T T)
しか~し、Nexus7ではGPSがONになった。
Android 4.2.2から復活したのだ!?
よ~わからん。