「カメラライトを点ける方法(Xperia)」の編集履歴(バックアップ)一覧はこちら

カメラライトを点ける方法(Xperia)」(2010/07/20 (火) 16:19:43) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

[[Top]] > [[開発]] > カメラライトを点ける方法(Xperia) *カメラライトを点ける方法(Xperia) Xperiaのカメラライトをつけるプログラム 非公開APIを使う。 http://www.androidjavadoc.com/1.0_r1_src/android/os/IHardwareService.Stub.htmlを参照 1.ライトをつける IHardwareService hardwareService = IHardwareService.Stub.asInterface(ServiceManager.getService("hardware")); hardwareService.setFlashlightEnabled(true); // trueでつける,falseで消す 2.必要なクラスの実装 ・ServiceManager.java package android.os; public class ServiceManager { public static IBinder getService( String serviceName ) { return null; } } ・Binder.java package android.os; import java.io.FileDescriptor; import java.io.PrintWriter; public abstract class Binder extends Object implements IBinder { public void attachInterface(IInterface owner, String descriptor) { } public static long clearCallingIdentity() { return 0; } protected void dump(FileDescriptor filedescriptor, PrintWriter printwriter) { } protected void finalize() { } public static void flushPendingCommands() { } public static int getCallingPid() { return 0; } public static int getCallingUid() { return 0; } public int getConstantData(Parcel outData) { return 0; } public static IBinder getContextObject() { return null; }  public static long getLastGcTime() {   return 0; } public static void joinThreadPool() { } public void linkToDeath(IBinder.DeathRecipient deathrecipient, int i){ } protected boolean onTransact(int code, Parcel data, Parcel reply, int flags){ return true; } public boolean pingBinder() { return true; } public IInterface queryLocalInterface(String descriptor) { return null; } public static void restoreCallingIdentity(long l) { } public boolean transact(int code, Parcel data, Parcel reply, int flags) { return true; } public boolean unlinkToDeath(IBinder.DeathRecipient recipient, int flags) { return true; } } ・IHardwareService.java package android.os; import java.io.FileDescriptor; public interface IHardwareService extends IInterface{ public void cancelVibrate(); public void enableCameraFlash(int i); public boolean getFlashlightEnabled(); public void setFlashlightEnabled(boolean flag); public void vibrate(long l); public void vibratePattern(long[] al, int i, IBinder ibinder); public static class Stub extends Binder { public IBinder asBinder() { return null; } public static IHardwareService asInterface(IBinder obj) { return null; } public boolean onTransact(int code, Parcel data, Parcel reply, int flags) { return true; } @Override public void dump(FileDescriptor fd, String[] args) throws RemoteException { // TODO 自動生成されたメソッド・スタブ } @Override public String getInterfaceDescriptor() throws RemoteException { // TODO 自動生成されたメソッド・スタブ return null; } @Override public boolean isBinderAlive() { // TODO 自動生成されたメソッド・スタブ return false; } } } [[Top]] > [[開発]] > カメラライトを点ける方法(Xperia) **広告

表示オプション

横に並べて表示:
変化行の前後のみ表示: