| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191 | 
							- # Add project specific ProGuard rules here.
 
- # By default, the flags in this file are appended to flags specified
 
- # in /Users/saki/android-sdks/tools/proguard/proguard-android.txt
 
- # You can edit the include path and order by changing the proguardFiles
 
- # directive in build.gradle.
 
- #
 
- # For more details, see
 
- #   http://developer.android.com/guide/developing/tools/proguard.html
 
- # Add any project specific keep options here:
 
- # If your project uses WebView with JS, uncomment the following
 
- # and specify the fully qualified class name to the JavaScript interface
 
- # class:
 
- #-keepclassmembers class fqcn.of.javascript.interface.for.webview {
 
- #   public *;
 
- #}
 
- -keepclasseswithmembernames class * {
 
-     native <methods>;
 
- 	*** mNativePtr;
 
- 	*** mNativeValue;
 
- 	*** mContext;
 
- }
 
- -keep class * implements android.os.Parcelable {
 
-   public static final android.os.Parcelable$Creator *;
 
- }
 
- -keep public class com.serenegiant.usb.uac.UACClient {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.media.Encoder {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.media.VideoEncoder {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.media.VideoMuxer {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.Utils {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public interface com.serenegiant.camera.ICamera { *; }
 
- -keep public interface com.serenegiant.camera.ICameraControl { *; }
 
- -keep public interface com.serenegiant.camera.IFrameCallback { *; }
 
- -keep public interface com.serenegiant.usb.uvc.IButtonCallback { *; }
 
- -keep public interface com.serenegiant.usb.uvc.IStatusCallback { *; }
 
- -keep public interface com.serenegiant.usb.uvc.IUVCCamera { *; }
 
- -keep public class com.serenegiant.usb.uvc.IPipeline {*;}
 
- -dontnote com.serenegiant.usb.uvc.IPipeline
 
- -keep public class com.serenegiant.usb.uvc.ConvertPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.DistributePipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.FrameCallbackPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.FrameSavePipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.NativeCallbackPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.PreviewPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.SimpleBufferedPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.UVCPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.PipelineSource {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.usb.uvc.PtsCalcPipeline {
 
-     native <methods>;
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- -keep public class com.serenegiant.camera.FuncMaxMinDef {
 
- 	public *;
 
- 	protected *;
 
- 	private *;
 
- }
 
- ##---------------Begin: proguard configuration for Gson  ----------
 
- # Gson uses generic type information stored in a class file when working with fields. Proguard
 
- # removes such information by default, so configure it to keep all of it.
 
- -keepattributes Signature
 
- # For using GSON @Expose annotation
 
- -keepattributes *Annotation*
 
- # Gson specific classes
 
- -keep class sun.misc.Unsafe
 
- -keep class sun.misc.Unsafe.**
 
- -dontnote sun.misc.Unsafe
 
- #-keep class com.google.gson.stream.** { *; }
 
- -keep class com.serenegiant.camera.Size
 
- -keep class com.serenegiant.camera.Size { *; }
 
- -keep public class com.serenegiant.aandusb.R
 
- -keep public class com.serenegiant.aandusb.R.**
 
- -keep public class com.serenegiant.aandusb.R.*$*
 
- -keep public class com.serenegiant.aandusb.R.$**
 
- -keep public class com.serenegiant.usb.R
 
- -keep public class com.serenegiant.usb.R.**
 
- -keep public class com.serenegiant.usb.R.*$*
 
- -keep public class com.serenegiant.usb.R.$**
 
- -keep public class com.serenegiant.uvcplugin.DeviceDetector {
 
-     native <methods>;
 
- 	public *;
 
- }
 
- -keep public class com.serenegiant.uvcplugin.UVCHolder {
 
-     native <methods>;
 
- 	public *;
 
- }
 
- -keep public class com.serenegiant.androidutils.AndroidUtils {
 
-     native <methods>;
 
- 	public *;
 
- }
 
 
  |