调试方法:一直以为需要重启,其实每个系统APP 都是可以用下面的这样的方式去调试的。但是framework的有的还需要重启。
D:\>adb push Z:\p80\P80_MG\out\target\product\msm8953_64\system\priv-app\SnapdragonCamera\SnapdragonCamera.apk system/priv-app/SnapdragonCamera/ && adb shell am force-stop org.codeaurora.snapcam
相机 各种按钮布局UI主要是
packages/apps/SnapdragonCamera/res/layout/camera_controls.xml
packages/apps/SnapdragonCamera/src/com/android/camera/PhotoModule.java
packages/apps/SnapdragonCamera/src/com/android/camera/VideoModule.java
packages/apps/SnapdragonCamera/src/com/android/camera/ui/ModuleSwitcher.java
packages/apps/SnapdragonCamera/src/com/android/camera/ui/RotatableLayout.java
具体修改,左右两边的按钮布局交换位置
diff --git a/packages/apps/SnapdragonCamera/res/layout/camera_controls.xml b/packages/apps/SnapdragonCamera/res/layout/camera_controls.xml
index e3f6829..5e33709 100755
--- a/packages/apps/SnapdragonCamera/res/layout/camera_controls.xml
+++ b/packages/apps/SnapdragonCamera/res/layout/camera_controls.xml
@@ -89,7 +89,6 @@
android:layout_height="@dimen/capture_size"
android:layout_gravity="top|right"
android:background="@android:color/transparent"
- android:rotation="90"
android:contentDescription="@string/switch_photo_filmstrip"
android:scaleType="fitCenter" />
diff --git a/packages/apps/SnapdragonCamera/src/com/android/camera/PhotoModule.java b/packages/apps/SnapdragonCamera/src/com/android/camera/PhotoModule.java
index c7c6857..5c8c236 100755
--- a/packages/apps/SnapdragonCamera/src/com/android/camera/PhotoModule.java
+++ b/packages/apps/SnapdragonCamera/src/com/android/camera/PhotoModule.java
@@ -2313,6 +2313,7 @@ public class PhotoModule
// We keep the last known orientation. So if the user first orient
// the camera then point the camera to floor or sky, we still have
// the correct orientation.
+
if (orientation == OrientationEventListener.ORIENTATION_UNKNOWN) return;
int oldOrientation = mOrientation;
mOrientation = CameraUtil.roundOrientation(orientation, mOrientation);
@@ -2325,11 +2326,12 @@ public class PhotoModule
}
}
mUI.tryToCloseSubList();
- mUI.setOrientation(mOrientation, true);
+ mUI.setOrientation(mOrientation-90, true);
if (mGraphView != null) {
mGraphView.setRotation(-mOrientation);
}
}
+ // android.util.Log.d("ssssssp3", "photo onOrientationChanged: orientation ="+orientation +" mOrientation = "+mOrientation + " oldOrientation ="+ oldOrientation);
// Show the toast after getting the first orientation changed.
if (mHandler.hasMessages(SHOW_TAP_TO_FOCUS_TOAST)) {
diff --git a/packages/apps/SnapdragonCamera/src/com/android/camera/VideoModule.java b/packages/apps/SnapdragonCamera/src/com/android/camera/VideoModule.java
index 183815b..3fcba4b 100755
--- a/packages/apps/SnapdragonCamera/src/com/android/camera/VideoModule.java
+++ b/packages/apps/SnapdragonCamera/src/com/android/camera/VideoModule.java
@@ -685,7 +685,7 @@ public class VideoModule implements CameraModule,
mCameraDevice.setParameters(mParameters);
}
mUI.tryToCloseSubList();
- mUI.setOrientation(newOrientation, true);
+ mUI.setOrientation(newOrientation-90, true);
}
// Show the toast after getting the first orientation changed.
diff --git a/packages/apps/SnapdragonCamera/src/com/android/camera/ui/ModuleSwitcher.java b/packages/apps/SnapdragonCamera/src/com/android/camera/ui/ModuleSwitcher.java
old mode 100644
new mode 100755
index d96775d..2465237
--- a/packages/apps/SnapdragonCamera/src/com/android/camera/ui/ModuleSwitcher.java
+++ b/packages/apps/SnapdragonCamera/src/com/android/camera/ui/ModuleSwitcher.java
@@ -358,7 +358,8 @@ public class ModuleSwitcher extends RotateImageView
} else {
mTranslationX = -w / 3;
mTranslationY = h - getHeight();
- mPopup.layout(getLeft(), getBottom() - h, getLeft() + w, getBottom());
+ mPopup.layout(getLeft()-250, getBottom() - h, getLeft() -250+ w, getBottom());
+ // android.util.Log.d("sssssss lay", "layoutPopup: getLeft() =" +getLeft() +" h =" + h +"getBottom = "+getBottom() );
}
}
diff --git a/packages/apps/SnapdragonCamera/src/com/android/camera/ui/RotatableLayout.java b/packages/apps/SnapdragonCamera/src/com/android/camera/ui/RotatableLayout.java
old mode 100644
new mode 100755
index 6867e6a..9d7ac17
--- a/packages/apps/SnapdragonCamera/src/com/android/camera/ui/RotatableLayout.java
+++ b/packages/apps/SnapdragonCamera/src/com/android/camera/ui/RotatableLayout.java
@@ -115,7 +115,7 @@ public class RotatableLayout extends FrameLayout {
if (!mIsDefaultToPortrait) {
return (rotation + 90) % 360;
}
- return rotation;
+ return rotation-180;
}
public void checkLayoutFlip() {