Commit 80a713887bc686499ce6cd45daba99731ef1858a

Authored by Thiago Filipe Soares da Rocha
1 parent 82f815e8

Finish Share Function Bux Fix

Assets/Plugins/Android/AndroidManifest.xml
@@ -8,6 +8,7 @@ @@ -8,6 +8,7 @@
8 <uses-permission android:name="android.permission.INTERNET" /> 8 <uses-permission android:name="android.permission.INTERNET" />
9 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 9 <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
10 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 10 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
  11 + <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
11 12
12 <application 13 <application
13 android:icon="@drawable/app_icon" 14 android:icon="@drawable/app_icon"
@@ -22,6 +23,7 @@ @@ -22,6 +23,7 @@
22 <action android:name="android.intent.action.MAIN" /> 23 <action android:name="android.intent.action.MAIN" />
23 <category android:name="android.intent.category.LAUNCHER" /> 24 <category android:name="android.intent.category.LAUNCHER" />
24 </intent-filter> 25 </intent-filter>
  26 + <meta-data android:name="unityplayer.UnityActivity" android:value="true" />
25 </activity> 27 </activity>
26 </application> 28 </application>
27 </manifest> 29 </manifest>
28 \ No newline at end of file 30 \ No newline at end of file
Assets/Scenes/Main.unity
@@ -515,7 +515,7 @@ GameObject: @@ -515,7 +515,7 @@ GameObject:
515 m_Icon: {fileID: 0} 515 m_Icon: {fileID: 0}
516 m_NavMeshLayer: 0 516 m_NavMeshLayer: 0
517 m_StaticEditorFlags: 0 517 m_StaticEditorFlags: 0
518 - m_IsActive: 1 518 + m_IsActive: 0
519 --- !u!224 &126648712 519 --- !u!224 &126648712
520 RectTransform: 520 RectTransform:
521 m_ObjectHideFlags: 0 521 m_ObjectHideFlags: 0
@@ -573,7 +573,18 @@ MonoBehaviour: @@ -573,7 +573,18 @@ MonoBehaviour:
573 m_TargetGraphic: {fileID: 126648714} 573 m_TargetGraphic: {fileID: 126648714}
574 m_OnClick: 574 m_OnClick:
575 m_PersistentCalls: 575 m_PersistentCalls:
576 - m_Calls: [] 576 + m_Calls:
  577 + - m_Target: {fileID: 0}
  578 + m_MethodName:
  579 + m_Mode: 1
  580 + m_Arguments:
  581 + m_ObjectArgument: {fileID: 0}
  582 + m_ObjectArgumentAssemblyTypeName:
  583 + m_IntArgument: 0
  584 + m_FloatArgument: 0
  585 + m_StringArgument:
  586 + m_BoolArgument: 0
  587 + m_CallState: 2
577 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, 588 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
578 Culture=neutral, PublicKeyToken=null 589 Culture=neutral, PublicKeyToken=null
579 --- !u!114 &126648714 590 --- !u!114 &126648714
@@ -1482,48 +1493,6 @@ CanvasRenderer: @@ -1482,48 +1493,6 @@ CanvasRenderer:
1482 type: 2} 1493 type: 2}
1483 m_PrefabInternal: {fileID: 0} 1494 m_PrefabInternal: {fileID: 0}
1484 m_GameObject: {fileID: 228512393} 1495 m_GameObject: {fileID: 228512393}
1485 ---- !u!1 &239812357  
1486 -GameObject:  
1487 - m_ObjectHideFlags: 0  
1488 - m_PrefabParentObject: {fileID: 133590, guid: 5ccb0ba277304a14b9bb8d4e34161675, type: 2}  
1489 - m_PrefabInternal: {fileID: 0}  
1490 - serializedVersion: 4  
1491 - m_Component:  
1492 - - 224: {fileID: 239812358}  
1493 - - 222: {fileID: 239812359}  
1494 - m_Layer: 5  
1495 - m_Name: container  
1496 - m_TagString: progress  
1497 - m_Icon: {fileID: 0}  
1498 - m_NavMeshLayer: 0  
1499 - m_StaticEditorFlags: 0  
1500 - m_IsActive: 1  
1501 ---- !u!224 &239812358  
1502 -RectTransform:  
1503 - m_ObjectHideFlags: 0  
1504 - m_PrefabParentObject: {fileID: 22474260, guid: 5ccb0ba277304a14b9bb8d4e34161675,  
1505 - type: 2}  
1506 - m_PrefabInternal: {fileID: 0}  
1507 - m_GameObject: {fileID: 239812357}  
1508 - m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}  
1509 - m_LocalPosition: {x: 0, y: 0, z: -0.0000000121053745}  
1510 - m_LocalScale: {x: 0.9999999, y: 1, z: 0}  
1511 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}  
1512 - m_Children: []  
1513 - m_Father: {fileID: 1530408465}  
1514 - m_RootOrder: 4  
1515 - m_AnchorMin: {x: 0, y: 1.7}  
1516 - m_AnchorMax: {x: 0.97, y: 2.2}  
1517 - m_AnchoredPosition: {x: 0, y: 0}  
1518 - m_SizeDelta: {x: -237.39001, y: 0}  
1519 - m_Pivot: {x: 1, y: 0}  
1520 ---- !u!222 &239812359  
1521 -CanvasRenderer:  
1522 - m_ObjectHideFlags: 0  
1523 - m_PrefabParentObject: {fileID: 22202710, guid: 5ccb0ba277304a14b9bb8d4e34161675,  
1524 - type: 2}  
1525 - m_PrefabInternal: {fileID: 0}  
1526 - m_GameObject: {fileID: 239812357}  
1527 --- !u!1 &253021235 1496 --- !u!1 &253021235
1528 GameObject: 1497 GameObject:
1529 m_ObjectHideFlags: 0 1498 m_ObjectHideFlags: 0
@@ -1883,11 +1852,11 @@ RectTransform: @@ -1883,11 +1852,11 @@ RectTransform:
1883 - {fileID: 837040462} 1852 - {fileID: 837040462}
1884 - {fileID: 126648712} 1853 - {fileID: 126648712}
1885 m_Father: {fileID: 1530408465} 1854 m_Father: {fileID: 1530408465}
1886 - m_RootOrder: 5 1855 + m_RootOrder: 3
1887 m_AnchorMin: {x: 0, y: 1.7} 1856 m_AnchorMin: {x: 0, y: 1.7}
1888 m_AnchorMax: {x: 0.97, y: 2.2} 1857 m_AnchorMax: {x: 0.97, y: 2.2}
1889 m_AnchoredPosition: {x: 0, y: 0} 1858 m_AnchoredPosition: {x: 0, y: 0}
1890 - m_SizeDelta: {x: -368.90573, y: 0} 1859 + m_SizeDelta: {x: -239.87144, y: 0}
1891 m_Pivot: {x: 1, y: 0} 1860 m_Pivot: {x: 1, y: 0}
1892 --- !u!222 &291722905 1861 --- !u!222 &291722905
1893 CanvasRenderer: 1862 CanvasRenderer:
@@ -3989,7 +3958,7 @@ RectTransform: @@ -3989,7 +3958,7 @@ RectTransform:
3989 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} 3958 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
3990 m_Children: [] 3959 m_Children: []
3991 m_Father: {fileID: 1530408465} 3960 m_Father: {fileID: 1530408465}
3992 - m_RootOrder: 3 3961 + m_RootOrder: 2
3993 m_AnchorMin: {x: 0, y: 1.7} 3962 m_AnchorMin: {x: 0, y: 1.7}
3994 m_AnchorMax: {x: 0.97, y: 2.2} 3963 m_AnchorMax: {x: 0.97, y: 2.2}
3995 m_AnchoredPosition: {x: 0, y: 0} 3964 m_AnchoredPosition: {x: 0, y: 0}
@@ -4033,7 +4002,18 @@ MonoBehaviour: @@ -4033,7 +4002,18 @@ MonoBehaviour:
4033 m_TargetGraphic: {fileID: 581668679} 4002 m_TargetGraphic: {fileID: 581668679}
4034 m_OnClick: 4003 m_OnClick:
4035 m_PersistentCalls: 4004 m_PersistentCalls:
4036 - m_Calls: [] 4005 + m_Calls:
  4006 + - m_Target: {fileID: 210788816}
  4007 + m_MethodName: OnShareVideo
  4008 + m_Mode: 1
  4009 + m_Arguments:
  4010 + m_ObjectArgument: {fileID: 0}
  4011 + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
  4012 + m_IntArgument: 0
  4013 + m_FloatArgument: 0
  4014 + m_StringArgument:
  4015 + m_BoolArgument: 0
  4016 + m_CallState: 2
4037 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, 4017 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
4038 Culture=neutral, PublicKeyToken=null 4018 Culture=neutral, PublicKeyToken=null
4039 --- !u!114 &581668679 4019 --- !u!114 &581668679
@@ -6175,119 +6155,6 @@ CanvasRenderer: @@ -6175,119 +6155,6 @@ CanvasRenderer:
6175 type: 2} 6155 type: 2}
6176 m_PrefabInternal: {fileID: 0} 6156 m_PrefabInternal: {fileID: 0}
6177 m_GameObject: {fileID: 930426942} 6157 m_GameObject: {fileID: 930426942}
6178 ---- !u!1 &935965592  
6179 -GameObject:  
6180 - m_ObjectHideFlags: 0  
6181 - m_PrefabParentObject: {fileID: 133590, guid: 5ccb0ba277304a14b9bb8d4e34161675, type: 2}  
6182 - m_PrefabInternal: {fileID: 0}  
6183 - serializedVersion: 4  
6184 - m_Component:  
6185 - - 224: {fileID: 935965593}  
6186 - - 222: {fileID: 935965596}  
6187 - - 114: {fileID: 935965595}  
6188 - - 114: {fileID: 935965594}  
6189 - m_Layer: 5  
6190 - m_Name: b_close  
6191 - m_TagString: progress  
6192 - m_Icon: {fileID: 0}  
6193 - m_NavMeshLayer: 0  
6194 - m_StaticEditorFlags: 0  
6195 - m_IsActive: 0  
6196 ---- !u!224 &935965593  
6197 -RectTransform:  
6198 - m_ObjectHideFlags: 0  
6199 - m_PrefabParentObject: {fileID: 22474260, guid: 5ccb0ba277304a14b9bb8d4e34161675,  
6200 - type: 2}  
6201 - m_PrefabInternal: {fileID: 0}  
6202 - m_GameObject: {fileID: 935965592}  
6203 - m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}  
6204 - m_LocalPosition: {x: 0, y: 0, z: 0}  
6205 - m_LocalScale: {x: 1, y: 1, z: 0}  
6206 - m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}  
6207 - m_Children: []  
6208 - m_Father: {fileID: 1530408465}  
6209 - m_RootOrder: 2  
6210 - m_AnchorMin: {x: 0, y: 1.8}  
6211 - m_AnchorMax: {x: 0.97, y: 2.1}  
6212 - m_AnchoredPosition: {x: 0, y: -13}  
6213 - m_SizeDelta: {x: 0, y: 26}  
6214 - m_Pivot: {x: 1, y: 0}  
6215 ---- !u!114 &935965594  
6216 -MonoBehaviour:  
6217 - m_ObjectHideFlags: 0  
6218 - m_PrefabParentObject: {fileID: 0}  
6219 - m_PrefabInternal: {fileID: 0}  
6220 - m_GameObject: {fileID: 935965592}  
6221 - m_Enabled: 1  
6222 - m_EditorHideFlags: 0  
6223 - m_Script: {fileID: 1392445389, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}  
6224 - m_Name:  
6225 - m_EditorClassIdentifier:  
6226 - m_Navigation:  
6227 - m_Mode: 3  
6228 - m_SelectOnUp: {fileID: 0}  
6229 - m_SelectOnDown: {fileID: 0}  
6230 - m_SelectOnLeft: {fileID: 0}  
6231 - m_SelectOnRight: {fileID: 0}  
6232 - m_Transition: 1  
6233 - m_Colors:  
6234 - m_NormalColor: {r: 1, g: 1, b: 1, a: 1}  
6235 - m_HighlightedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}  
6236 - m_PressedColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 1}  
6237 - m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}  
6238 - m_ColorMultiplier: 1  
6239 - m_FadeDuration: 0.1  
6240 - m_SpriteState:  
6241 - m_HighlightedSprite: {fileID: 0}  
6242 - m_PressedSprite: {fileID: 0}  
6243 - m_DisabledSprite: {fileID: 0}  
6244 - m_AnimationTriggers:  
6245 - m_NormalTrigger: Normal  
6246 - m_HighlightedTrigger: Highlighted  
6247 - m_PressedTrigger: Pressed  
6248 - m_DisabledTrigger: Disabled  
6249 - m_Interactable: 1  
6250 - m_TargetGraphic: {fileID: 935965595}  
6251 - m_OnClick:  
6252 - m_PersistentCalls:  
6253 - m_Calls: []  
6254 - m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,  
6255 - Culture=neutral, PublicKeyToken=null  
6256 ---- !u!114 &935965595  
6257 -MonoBehaviour:  
6258 - m_ObjectHideFlags: 0  
6259 - m_PrefabParentObject: {fileID: 11451830, guid: 5ccb0ba277304a14b9bb8d4e34161675,  
6260 - type: 2}  
6261 - m_PrefabInternal: {fileID: 0}  
6262 - m_GameObject: {fileID: 935965592}  
6263 - m_Enabled: 1  
6264 - m_EditorHideFlags: 0  
6265 - m_Script: {fileID: -765806418, guid: f5f67c52d1564df4a8936ccd202a3bd8, type: 3}  
6266 - m_Name:  
6267 - m_EditorClassIdentifier:  
6268 - m_Material: {fileID: 0}  
6269 - m_Color: {r: 1, g: 1, b: 1, a: 1}  
6270 - m_RaycastTarget: 1  
6271 - m_OnCullStateChanged:  
6272 - m_PersistentCalls:  
6273 - m_Calls: []  
6274 - m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI,  
6275 - Version=1.0.0.0, Culture=neutral, PublicKeyToken=null  
6276 - m_Sprite: {fileID: 21300000, guid: 6495de8ff9a26c94e9d42fada0a56630, type: 3}  
6277 - m_Type: 0  
6278 - m_PreserveAspect: 1  
6279 - m_FillCenter: 1  
6280 - m_FillMethod: 4  
6281 - m_FillAmount: 1  
6282 - m_FillClockwise: 1  
6283 - m_FillOrigin: 0  
6284 ---- !u!222 &935965596  
6285 -CanvasRenderer:  
6286 - m_ObjectHideFlags: 0  
6287 - m_PrefabParentObject: {fileID: 22202710, guid: 5ccb0ba277304a14b9bb8d4e34161675,  
6288 - type: 2}  
6289 - m_PrefabInternal: {fileID: 0}  
6290 - m_GameObject: {fileID: 935965592}  
6291 --- !u!1 &948041467 6158 --- !u!1 &948041467
6292 GameObject: 6159 GameObject:
6293 m_ObjectHideFlags: 0 6160 m_ObjectHideFlags: 0
@@ -8562,7 +8429,18 @@ MonoBehaviour: @@ -8562,7 +8429,18 @@ MonoBehaviour:
8562 m_TargetGraphic: {fileID: 1182541897} 8429 m_TargetGraphic: {fileID: 1182541897}
8563 m_OnClick: 8430 m_OnClick:
8564 m_PersistentCalls: 8431 m_PersistentCalls:
8565 - m_Calls: [] 8432 + m_Calls:
  8433 + - m_Target: {fileID: 210788816}
  8434 + m_MethodName: OnDownloadCancel
  8435 + m_Mode: 1
  8436 + m_Arguments:
  8437 + m_ObjectArgument: {fileID: 0}
  8438 + m_ObjectArgumentAssemblyTypeName: UnityEngine.Object, UnityEngine
  8439 + m_IntArgument: 0
  8440 + m_FloatArgument: 0
  8441 + m_StringArgument:
  8442 + m_BoolArgument: 0
  8443 + m_CallState: 2
8566 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0, 8444 m_TypeName: UnityEngine.UI.Button+ButtonClickedEvent, UnityEngine.UI, Version=1.0.0.0,
8567 Culture=neutral, PublicKeyToken=null 8445 Culture=neutral, PublicKeyToken=null
8568 --- !u!114 &1182541897 8446 --- !u!114 &1182541897
@@ -11439,9 +11317,7 @@ RectTransform: @@ -11439,9 +11317,7 @@ RectTransform:
11439 m_Children: 11317 m_Children:
11440 - {fileID: 1059619783} 11318 - {fileID: 1059619783}
11441 - {fileID: 160532052} 11319 - {fileID: 160532052}
11442 - - {fileID: 935965593}  
11443 - {fileID: 581668677} 11320 - {fileID: 581668677}
11444 - - {fileID: 239812358}  
11445 - {fileID: 291722902} 11321 - {fileID: 291722902}
11446 - {fileID: 1910480222} 11322 - {fileID: 1910480222}
11447 m_Father: {fileID: 1620867682} 11323 m_Father: {fileID: 1620867682}
@@ -13459,7 +13335,7 @@ GameObject: @@ -13459,7 +13335,7 @@ GameObject:
13459 m_Icon: {fileID: 0} 13335 m_Icon: {fileID: 0}
13460 m_NavMeshLayer: 0 13336 m_NavMeshLayer: 0
13461 m_StaticEditorFlags: 0 13337 m_StaticEditorFlags: 0
13462 - m_IsActive: 1 13338 + m_IsActive: 0
13463 --- !u!224 &1910480222 13339 --- !u!224 &1910480222
13464 RectTransform: 13340 RectTransform:
13465 m_ObjectHideFlags: 0 13341 m_ObjectHideFlags: 0
@@ -13474,11 +13350,11 @@ RectTransform: @@ -13474,11 +13350,11 @@ RectTransform:
13474 m_Children: 13350 m_Children:
13475 - {fileID: 1182541895} 13351 - {fileID: 1182541895}
13476 m_Father: {fileID: 1530408465} 13352 m_Father: {fileID: 1530408465}
13477 - m_RootOrder: 6 13353 + m_RootOrder: 4
13478 m_AnchorMin: {x: 0, y: 1.7} 13354 m_AnchorMin: {x: 0, y: 1.7}
13479 m_AnchorMax: {x: 0.97, y: 2.2} 13355 m_AnchorMax: {x: 0.97, y: 2.2}
13480 m_AnchoredPosition: {x: 0, y: 0} 13356 m_AnchoredPosition: {x: 0, y: 0}
13481 - m_SizeDelta: {x: 0, y: 0} 13357 + m_SizeDelta: {x: -239.87144, y: 0}
13482 m_Pivot: {x: 1, y: 0} 13358 m_Pivot: {x: 1, y: 0}
13483 --- !u!114 &1910480223 13359 --- !u!114 &1910480223
13484 MonoBehaviour: 13360 MonoBehaviour:
@@ -13505,7 +13381,7 @@ MonoBehaviour: @@ -13505,7 +13381,7 @@ MonoBehaviour:
13505 m_PreserveAspect: 1 13381 m_PreserveAspect: 1
13506 m_FillCenter: 1 13382 m_FillCenter: 1
13507 m_FillMethod: 4 13383 m_FillMethod: 4
13508 - m_FillAmount: 1 13384 + m_FillAmount: 0
13509 m_FillClockwise: 1 13385 m_FillClockwise: 1
13510 m_FillOrigin: 0 13386 m_FillOrigin: 0
13511 --- !u!222 &1910480224 13387 --- !u!222 &1910480224
@@ -16059,7 +15935,6 @@ MonoBehaviour: @@ -16059,7 +15935,6 @@ MonoBehaviour:
16059 progressLayer: {fileID: 291722901} 15935 progressLayer: {fileID: 291722901}
16060 downloadLayer: {fileID: 160532051} 15936 downloadLayer: {fileID: 160532051}
16061 downloadProgressLayer: {fileID: 1910480221} 15937 downloadProgressLayer: {fileID: 1910480221}
16062 - closeLayer: {fileID: 935965592}  
16063 textButton: {fileID: 930426942} 15938 textButton: {fileID: 930426942}
16064 pauseButton: {fileID: 440527253} 15939 pauseButton: {fileID: 440527253}
16065 avatarCollider: {fileID: 535548073} 15940 avatarCollider: {fileID: 535548073}
Assets/Scripts/Export Video/AndroidJavaUti.cs 0 → 100644
@@ -0,0 +1,52 @@ @@ -0,0 +1,52 @@
  1 +using UnityEngine;
  2 +using System.Collections;
  3 +using System;
  4 +
  5 +public class AndroidJavaUti{
  6 +
  7 +
  8 + private static string m_pkgName;
  9 + private static string m_sdCardPath;
  10 + public static AndroidJavaObject Activity
  11 + {
  12 + get
  13 + {
  14 + AndroidJavaClass jcPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
  15 + return jcPlayer.GetStatic<AndroidJavaObject>("currentActivity");
  16 + }
  17 + }
  18 +
  19 +
  20 + public static string CurrentPkgName
  21 + {
  22 + get
  23 + {
  24 + if (m_pkgName == null)
  25 + m_pkgName = Activity.Call<string>("getPackageName");
  26 + return m_pkgName;
  27 + }
  28 + }
  29 +
  30 +
  31 + public static string CurrentSDCardPath
  32 + {
  33 + get
  34 + {
  35 + if (m_sdCardPath == null)
  36 + {
  37 + AndroidJavaClass jc = new AndroidJavaClass("android.os.Environment");
  38 + IntPtr getExternalStorageDirectoryMethod = AndroidJNI.GetStaticMethodID(jc.GetRawClass(), "getExternalStorageDirectory", "()Ljava/io/File;");
  39 + IntPtr file = AndroidJNI.CallStaticObjectMethod(jc.GetRawClass(), getExternalStorageDirectoryMethod, new jvalue[] { });
  40 + IntPtr getPathMethod = AndroidJNI.GetMethodID(AndroidJNI.GetObjectClass(file), "getPath", "()Ljava/lang/String;");
  41 + IntPtr path = AndroidJNI.CallObjectMethod(file, getPathMethod, new jvalue[] { });
  42 + m_sdCardPath = AndroidJNI.GetStringUTFChars(path);
  43 + AndroidJNI.DeleteLocalRef(file);
  44 + AndroidJNI.DeleteLocalRef(path);
  45 + Debug.Log("m_sdCardPath = " + m_sdCardPath);
  46 + }
  47 + return m_sdCardPath;
  48 + }
  49 +
  50 + }
  51 +}
  52 +
Assets/Scripts/Export Video/AndroidJavaUti.cs.meta 0 → 100644
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
  1 +fileFormatVersion: 2
  2 +guid: 437223d76094ce840a68de8b6ea60fe8
  3 +timeCreated: 1486222942
  4 +licenseType: Free
  5 +MonoImporter:
  6 + serializedVersion: 2
  7 + defaultReferences: []
  8 + executionOrder: 0
  9 + icon: {instanceID: 0}
  10 + userData:
  11 + assetBundleName:
  12 + assetBundleVariant:
Assets/Scripts/Export Video/AndroidToast.cs 0 → 100644
@@ -0,0 +1,25 @@ @@ -0,0 +1,25 @@
  1 +using UnityEngine;
  2 +using System.Collections;
  3 +
  4 +public class AndroidToast : MonoBehaviour
  5 +{
  6 + AndroidJavaObject currentActivity;
  7 + AndroidJavaClass UnityPlayer;
  8 + AndroidJavaObject context;
  9 +
  10 +
  11 + public void showToast(string toastString){
  12 + if (Application.platform == RuntimePlatform.Android)
  13 + {
  14 + UnityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
  15 + currentActivity = UnityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
  16 + context = currentActivity.Call<AndroidJavaObject>("getApplicationContext");
  17 +
  18 + AndroidJavaClass Toast = new AndroidJavaClass("android.widget.Toast");
  19 + AndroidJavaObject javaString = new AndroidJavaObject("java.lang.String", toastString);
  20 + AndroidJavaObject toast = Toast.CallStatic<AndroidJavaObject>("makeText", context, javaString, Toast.GetStatic<int>("LENGTH_SHORT"));
  21 + toast.Call("show");
  22 + }
  23 + }
  24 +
  25 +}
Assets/Scripts/Export Video/AndroidToast.cs.meta 0 → 100644
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
  1 +fileFormatVersion: 2
  2 +guid: f4af3594fb207274dbd1d303e7079acb
  3 +timeCreated: 1486225591
  4 +licenseType: Free
  5 +MonoImporter:
  6 + serializedVersion: 2
  7 + defaultReferences: []
  8 + executionOrder: 0
  9 + icon: {instanceID: 0}
  10 + userData:
  11 + assetBundleName:
  12 + assetBundleVariant:
Assets/Scripts/Export Video/ExportLayers.cs
@@ -10,6 +10,7 @@ public class ExportLayers{ @@ -10,6 +10,7 @@ public class ExportLayers{
10 Progress_Layer, 10 Progress_Layer,
11 Share_Layer, 11 Share_Layer,
12 Progress_Download_Layer, 12 Progress_Download_Layer,
  13 + OnLockExport,
13 All 14 All
14 } 15 }
15 } 16 }
Assets/Scripts/Export Video/ExportVideo.cs
@@ -32,14 +32,19 @@ public class ExportVideo : MonoBehaviour { @@ -32,14 +32,19 @@ public class ExportVideo : MonoBehaviour {
32 public ScreenManager screenManager; 32 public ScreenManager screenManager;
33 private MobileNativeDialog nativeDialog; 33 private MobileNativeDialog nativeDialog;
34 34
35 - public static string gloss = "";  
36 - private const string SERVER_URL = "http://traducao.vlibras.gov.br/translate?text="; 35 + public static string gloss = "Gloss";
  36 + private string currentGloss = "CurrentGloss";
  37 + private string currentTime = "";
  38 + private const string SERVER_URL = "http://150.165.205.38/video/";
37 39
38 private string title = "Download"; 40 private string title = "Download";
39 - private string message = "Para compartilhar é preciso realizar o download do vídeo. Informação 1: N mb."; 41 + private string message = "Para compartilhar é preciso realizar o download do vídeo. Tamanho do Download: ";
40 private string yesOp = "DOWNLOAD"; 42 private string yesOp = "DOWNLOAD";
41 private string noOp = "CANCELAR"; 43 private string noOp = "CANCELAR";
42 - private string videoSize = ""; 44 + private float videoSize = 0;
  45 + private string videoId = "";
  46 + private bool CancelDownload = false;
  47 + private byte[] videoContent = null;
43 48
44 49
45 50
@@ -53,10 +58,7 @@ public class ExportVideo : MonoBehaviour { @@ -53,10 +58,7 @@ public class ExportVideo : MonoBehaviour {
53 Debug.Log("onClickShare pressed"); 58 Debug.Log("onClickShare pressed");
54 screenManager.changeExportStates(ExportLayers.ExportLayer.Export_Layer,false); 59 screenManager.changeExportStates(ExportLayers.ExportLayer.Export_Layer,false);
55 screenManager.changeExportStates(ExportLayers.ExportLayer.Progress_Layer, true); 60 screenManager.changeExportStates(ExportLayers.ExportLayer.Progress_Layer, true);
56 - MediaShareAndroid mediaShare = new MediaShareAndroid();  
57 - mediaShare.ShareActivity("Download", "Baixe", "Exemplo");  
58 -  
59 - 61 + StartCoroutine("requestVideoInfo");
60 Debug.Log("Hiding export button and showing progress loading"); 62 Debug.Log("Hiding export button and showing progress loading");
61 63
62 } 64 }
@@ -80,11 +82,8 @@ public class ExportVideo : MonoBehaviour { @@ -80,11 +82,8 @@ public class ExportVideo : MonoBehaviour {
80 { 82 {
81 83
82 Debug.Log("Asking for permition to download"); 84 Debug.Log("Asking for permition to download");
83 - nativeDialog = new MobileNativeDialog(title, message, yesOp, noOp); 85 + nativeDialog = new MobileNativeDialog(title, message + ((videoSize/1024f)/1024f).ToString("0.00") + " MB.", yesOp, noOp);
84 nativeDialog.OnComplete = OnComplete; 86 nativeDialog.OnComplete = OnComplete;
85 -  
86 -  
87 -  
88 87
89 } 88 }
90 89
@@ -97,11 +96,14 @@ public class ExportVideo : MonoBehaviour { @@ -97,11 +96,14 @@ public class ExportVideo : MonoBehaviour {
97 if(result == MNDialogResult.YES) 96 if(result == MNDialogResult.YES)
98 { 97 {
99 Debug.Log("User pressed yes"); 98 Debug.Log("User pressed yes");
  99 + StartCoroutine("videoDownload");
  100 + screenManager.changeExportStates(ExportLayers.ExportLayer.Download_Layer, false);
  101 + screenManager.changeExportStates(ExportLayers.ExportLayer.Progress_Download_Layer, true);
100 }else if(result == MNDialogResult.NO) 102 }else if(result == MNDialogResult.NO)
101 { 103 {
102 Debug.Log("User pressed no"); 104 Debug.Log("User pressed no");
103 - screenManager.changeExportStates(ExportLayers.ExportLayer.All, false);  
104 - screenManager.changeExportStates(ExportLayers.ExportLayer.Export_Layer, true); 105 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  106 +
105 } 107 }
106 } 108 }
107 109
@@ -117,65 +119,131 @@ public class ExportVideo : MonoBehaviour { @@ -117,65 +119,131 @@ public class ExportVideo : MonoBehaviour {
117 public void OnDownloadCancel() 119 public void OnDownloadCancel()
118 { 120 {
119 Debug.Log("User canceled the download, resetting states to default"); 121 Debug.Log("User canceled the download, resetting states to default");
120 - screenManager.changeExportStates(ExportLayers.ExportLayer.All, false);  
121 - screenManager.changeExportStates(ExportLayers.ExportLayer.Share_Layer, true); 122 + CancelDownload = true;
  123 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  124 + videoContent = null;
  125 +
  126 +
122 } 127 }
123 128
  129 + public void OnShareVideo()
  130 + {
  131 + Debug.Log("Sharing video content");
  132 + if(gloss == currentGloss)
  133 + {
  134 + if (videoContent != null)
  135 + new MediaShareAndroid().ShareActivity(videoContent,currentTime);
  136 + else
  137 + {
  138 + new AndroidToast().showToast("Erro ao compartilhar vídeo");
  139 + }
  140 +
  141 + }else
  142 + {
  143 + currentGloss = gloss;
  144 + currentTime = System.DateTime.Now.ToString("yyyy-MM-dd_HH:mm:ss");
124 145
125 - private IEnumerator requestVideoInfo(string gloss)  
126 - { 146 + if (videoContent != null)
  147 + new MediaShareAndroid().ShareActivity(videoContent, currentTime);
  148 + else
  149 + {
  150 + new AndroidToast().showToast("Erro ao compartilhar vídeo");
  151 + }
  152 +
  153 + }
127 154
  155 + }
  156 +
  157 +
  158 + private IEnumerator videoDownload()
  159 + {
  160 + WWW DownloadVideo = new WWW(SERVER_URL + videoId);
  161 + while (!CancelDownload && !DownloadVideo.isDone)
  162 + {
  163 + screenManager.updateProgressDownloadSprite(DownloadVideo.progress);
  164 + yield return null;
  165 + }
  166 +
  167 + if (!CancelDownload)
  168 + {
  169 + if (DownloadVideo.bytesDownloaded > 0 && DownloadVideo.bytesDownloaded <= videoSize)
  170 + {
  171 + videoContent = DownloadVideo.bytes;
  172 +
  173 + OnDownloadFinished();
  174 + }else
  175 + {
  176 + new AndroidToast().showToast("Erro ao efetuar download. Tente novamente");
  177 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  178 + }
  179 + }else
  180 + {
  181 + CancelDownload = false;
  182 + yield break;
  183 + }
  184 + }
  185 +
  186 + private IEnumerator requestVideoInfo()
  187 + {
  188 +
  189 + WWWForm JsonRequest = new WWWForm();
  190 + JsonRequest.AddField("gloss", gloss);
  191 + WWW videoInfoRequest = new WWW(SERVER_URL,JsonRequest);
128 192
129 - WWW videoInfoRequest = new WWW(SERVER_URL + WWW.EscapeURL(gloss));  
130 193
131 194
132 - PlayerLogger.Log("PM", "t", "Gloss: " + gloss);  
133 - PlayerLogger.Log("PM", "t", "Request: " + SERVER_URL + WWW.EscapeURL(gloss)); 195 +
  196 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "Request for: " + SERVER_URL);
  197 +
  198 + yield return WaitForResponse(videoInfoRequest);
134 199
135 - yield return WaitForResponse(videoInfoRequest); 200 +
136 201
137 try 202 try
138 { 203 {
139 if (!videoInfoRequest.isDone) 204 if (!videoInfoRequest.isDone)
140 { 205 {
141 - this.screenManager.showConnectionErrorDialog(  
142 - PlayerManager.ERROR_STATUS_MESSAGE.CONNECTION_TIMEOUT_FAILURE);  
143 206
144 - PlayerLogger.Log("PM", "t", "Timeout."); 207 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  208 + new AndroidToast().showToast("Erro de conexão, tenta novamente.");
  209 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "TimeOut");
145 } 210 }
146 else if (videoInfoRequest.error != null) 211 else if (videoInfoRequest.error != null)
147 { 212 {
148 - this.screenManager.showConnectionErrorDialog(  
149 - PlayerManager.ERROR_STATUS_MESSAGE.INTERNET_CONNECTION_FAILURE);  
150 -  
151 - PlayerLogger.Log("PM", "t", "(WWW) Error: " + videoInfoRequest.error); 213 +
  214 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  215 + new AndroidToast().showToast("Erro de conexão, tenta novamente.");
  216 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "(WWW) Error: " + videoInfoRequest.error);
152 } 217 }
153 else if (videoInfoRequest.responseHeaders.Count == 0) 218 else if (videoInfoRequest.responseHeaders.Count == 0)
154 { 219 {
155 - PlayerLogger.Log("PM", "t", "Unsuccessful answer (0).");  
156 -  
157 - this.screenManager.showConnectionErrorDialog(  
158 - PlayerManager.ERROR_STATUS_MESSAGE.TRANSLATOR_CONNECTION_FAILURE); 220 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "(WWW) Unsucessful Answer");
  221 + new AndroidToast().showToast("Erro de conexão, tenta novamente.");
  222 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  223 +
159 } 224 }
160 else if (!videoInfoRequest.responseHeaders["STATUS"].Contains("200")) 225 else if (!videoInfoRequest.responseHeaders["STATUS"].Contains("200"))
161 { 226 {
162 - PlayerLogger.Log("PM", "t", "Unsuccessful answer (" + videoInfoRequest.responseHeaders["STATUS"] + ").");  
163 -  
164 - this.screenManager.showConnectionErrorDialog(  
165 - PlayerManager.ERROR_STATUS_MESSAGE.TRANSLATOR_CONNECTION_FAILURE); 227 + new AndroidToast().showToast("Erro de conexão, tenta novamente.");
  228 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "Unsuccessful answer (" + videoInfoRequest.responseHeaders["STATUS"] + ").");
  229 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  230 +
166 } 231 }
167 else if (String.IsNullOrEmpty(videoInfoRequest.text)) 232 else if (String.IsNullOrEmpty(videoInfoRequest.text))
168 { 233 {
169 - PlayerLogger.Log("PM", "t", "Empty answer."); 234 + new AndroidToast().showToast("Erro de conexão, tenta novamente.");
  235 + screenManager.changeExportStates(ExportLayers.ExportLayer.All, true);
  236 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "Empty answer.");
170 } 237 }
171 else 238 else
172 { 239 {
173 - PlayerLogger.Log("PM", "t", "Answer: " + videoInfoRequest.text);  
174 -  
175 - gloss = videoInfoRequest.text;  
176 -  
177 - 240 + PlayerLogger.Log("ExportVideo", "requestVideoInfo", "Answer: " + videoInfoRequest.text);
178 241
  242 + FileContent fileContent = new FileContent();
  243 + fileContent = FileContent.CreateFromJSON(videoInfoRequest.text);
  244 + videoId = fileContent.file;
  245 + videoSize = float.Parse(fileContent.size);
  246 + OnFinishGetVideoInfo();
179 247
180 yield break; 248 yield break;
181 } 249 }
@@ -192,7 +260,7 @@ public class ExportVideo : MonoBehaviour { @@ -192,7 +260,7 @@ public class ExportVideo : MonoBehaviour {
192 260
193 public IEnumerator WaitForResponse(WWW www, Events.RequestSuccess success, Events.RequestError error) 261 public IEnumerator WaitForResponse(WWW www, Events.RequestSuccess success, Events.RequestError error)
194 { 262 {
195 - yield return Methods.WaitForResponse(www, 20f, success, error); 263 + yield return Methods.WaitForResponse(www, 60f, success, error);
196 264
197 } 265 }
198 266
Assets/Scripts/Export Video/FileContent.cs 0 → 100644
@@ -0,0 +1,14 @@ @@ -0,0 +1,14 @@
  1 +using UnityEngine;
  2 +using System.Collections;
  3 +
  4 +public class FileContent {
  5 +
  6 + public string file;
  7 + public string size;
  8 +
  9 +
  10 + public static FileContent CreateFromJSON(string jsonString)
  11 + {
  12 + return JsonUtility.FromJson<FileContent>(jsonString);
  13 + }
  14 +}
Assets/Scripts/Export Video/FileContent.cs.meta 0 → 100644
@@ -0,0 +1,12 @@ @@ -0,0 +1,12 @@
  1 +fileFormatVersion: 2
  2 +guid: 8b48ac84824290f47a90effd57b97d84
  3 +timeCreated: 1486224084
  4 +licenseType: Free
  5 +MonoImporter:
  6 + serializedVersion: 2
  7 + defaultReferences: []
  8 + executionOrder: 0
  9 + icon: {instanceID: 0}
  10 + userData:
  11 + assetBundleName:
  12 + assetBundleVariant:
Assets/Scripts/Export Video/MediaShareAndroid.cs
@@ -23,18 +23,38 @@ using System.IO; @@ -23,18 +23,38 @@ using System.IO;
23 public class MediaShareAndroid : MonoBehaviour 23 public class MediaShareAndroid : MonoBehaviour
24 { 24 {
25 25
26 - private string MediaType = "text/plain"; 26 + private string MediaType = "video/*";
27 private string TitleMessage = "Compartilhar Vídeo"; 27 private string TitleMessage = "Compartilhar Vídeo";
28 private string SubtitleMessage = "VLibras"; 28 private string SubtitleMessage = "VLibras";
29 - private string Media = "Compartilhar";  
30 - private string path = Application.persistentDataPath + "/expl.jpg";  
31 29
  30 + private string AndroidPath = AndroidJavaUti.CurrentSDCardPath;
  31 + private string Vlibras = "/VLibras";
  32 + private string FileName = "/VLibrasVideo_";
32 33
33 34
34 - public void ShareActivity(string title, string subject, string body) 35 + private void WriteOnAndroid(byte[] videoContent)
  36 + {
  37 + if(!Directory.Exists(AndroidPath + Vlibras))
  38 + {
  39 + Directory.CreateDirectory(AndroidPath + Vlibras);
  40 +
  41 +
  42 + }
  43 + if (!Directory.Exists(AndroidPath + Vlibras + FileName))
  44 + File.WriteAllBytes(AndroidPath + Vlibras + FileName, videoContent);
  45 +
  46 +
  47 +
  48 + }
  49 +
  50 +
  51 +
  52 + public void ShareActivity(byte[] videoContent, string CurrentTime)
35 { 53 {
36 54
37 #if UNITY_ANDROID 55 #if UNITY_ANDROID
  56 + FileName += CurrentTime + ".mp4";
  57 + WriteOnAndroid(videoContent);
38 // Create Refernece of AndroidJavaClass class for intent 58 // Create Refernece of AndroidJavaClass class for intent
39 AndroidJavaClass intentClass = new AndroidJavaClass("android.content.Intent"); 59 AndroidJavaClass intentClass = new AndroidJavaClass("android.content.Intent");
40 // Create Refernece of AndroidJavaObject class intent 60 // Create Refernece of AndroidJavaObject class intent
@@ -47,18 +67,18 @@ public class MediaShareAndroid : MonoBehaviour @@ -47,18 +67,18 @@ public class MediaShareAndroid : MonoBehaviour
47 //Set title of action or intent 67 //Set title of action or intent
48 intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TITLE"), TitleMessage); 68 intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TITLE"), TitleMessage);
49 69
50 - 70 + /*
51 // Set actual data which you want to share 71 // Set actual data which you want to share
52 intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TEXT"), Media); 72 intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TEXT"), Media);
53 AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); 73 AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
54 AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject>("currentActivity"); 74 AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject>("currentActivity");
55 // Invoke android activity for passing intent to share data 75 // Invoke android activity for passing intent to share data
56 currentActivity.Call("startActivity", intentObject); 76 currentActivity.Call("startActivity", intentObject);
57 - 77 + */
58 78
59 - /* AndroidJavaClass uriClass = new AndroidJavaClass("android.net.Uri");  
60 - AndroidJavaClass fileClass = new AndroidJavaClass("java.io.File");  
61 - AndroidJavaObject fileObject = new AndroidJavaObject("java.io.File", path);// Set Image Path Here 79 + AndroidJavaClass uriClass = new AndroidJavaClass("android.net.Uri");
  80 +
  81 + AndroidJavaObject fileObject = new AndroidJavaObject("java.io.File", AndroidPath + Vlibras + FileName);// Set Image Path Here
62 AndroidJavaObject uriObject = uriClass.CallStatic<AndroidJavaObject>("fromFile", fileObject); 82 AndroidJavaObject uriObject = uriClass.CallStatic<AndroidJavaObject>("fromFile", fileObject);
63 // string uriPath = uriObject.Call("getPath"); 83 // string uriPath = uriObject.Call("getPath");
64 bool fileExist = fileObject.Call<bool>("exists"); 84 bool fileExist = fileObject.Call<bool>("exists");
@@ -69,7 +89,8 @@ public class MediaShareAndroid : MonoBehaviour @@ -69,7 +89,8 @@ public class MediaShareAndroid : MonoBehaviour
69 AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer"); 89 AndroidJavaClass unity = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
70 AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject>("currentActivity"); 90 AndroidJavaObject currentActivity = unity.GetStatic<AndroidJavaObject>("currentActivity");
71 currentActivity.Call("startActivity", intentObject); 91 currentActivity.Call("startActivity", intentObject);
72 - */ 92 + new AndroidToast().showToast("Vídeo salvo em /Vlibras");
  93 +
73 #endif 94 #endif
74 } 95 }
75 } 96 }
Assets/Scripts/PlayerManager.cs
@@ -91,10 +91,12 @@ public class PlayerManager : GenericPlayerManager { @@ -91,10 +91,12 @@ public class PlayerManager : GenericPlayerManager {
91 91
92 this.dictWord = word; 92 this.dictWord = word;
93 base.gloss = word; 93 base.gloss = word;
  94 +
94 base.playNow(word); 95 base.playNow(word);
95 ExportVideo.gloss = word; 96 ExportVideo.gloss = word;
  97 + this.screenManager.changeExportStates(ExportLayers.ExportLayer.OnLockExport, false);
96 98
97 - this.screenManager.hideScreen(); 99 + this.screenManager.hideScreen();
98 this.screenManager.setPauseMenuState(false); 100 this.screenManager.setPauseMenuState(false);
99 } 101 }
100 102
@@ -105,8 +107,9 @@ public class PlayerManager : GenericPlayerManager { @@ -105,8 +107,9 @@ public class PlayerManager : GenericPlayerManager {
105 107
106 string text = translateScreenText.text; 108 string text = translateScreenText.text;
107 translateScreenText.text = ""; 109 translateScreenText.text = "";
  110 + this.screenManager.changeExportStates(ExportLayers.ExportLayer.OnLockExport, false);
108 111
109 - StartCoroutine("translate", text); 112 + StartCoroutine("translate", text);
110 113
111 this.screenManager.setPauseMenuState(false); 114 this.screenManager.setPauseMenuState(false);
112 } 115 }
@@ -277,6 +280,7 @@ public class PlayerManager : GenericPlayerManager { @@ -277,6 +280,7 @@ public class PlayerManager : GenericPlayerManager {
277 280
278 base.gloss = gloss; 281 base.gloss = gloss;
279 ExportVideo.gloss = gloss; 282 ExportVideo.gloss = gloss;
  283 +
280 base.playNow(base.gloss); 284 base.playNow(base.gloss);
281 285
282 286
Assets/Scripts/UI/ScreenManager.cs
@@ -31,7 +31,7 @@ public class ScreenManager : MonoBehaviour { @@ -31,7 +31,7 @@ public class ScreenManager : MonoBehaviour {
31 public GameObject progressLayer; 31 public GameObject progressLayer;
32 public GameObject downloadLayer; 32 public GameObject downloadLayer;
33 public GameObject downloadProgressLayer; 33 public GameObject downloadProgressLayer;
34 - public GameObject closeLayer; 34 +
35 private bool onLockExport = false; 35 private bool onLockExport = false;
36 36
37 37
@@ -307,7 +307,7 @@ public class ScreenManager : MonoBehaviour { @@ -307,7 +307,7 @@ public class ScreenManager : MonoBehaviour {
307 public void setDownloadProgressLayerState(bool active) 307 public void setDownloadProgressLayerState(bool active)
308 { 308 {
309 this.downloadProgressLayer.SetActive(active); 309 this.downloadProgressLayer.SetActive(active);
310 - this.closeLayer.SetActive(active); 310 +
311 } 311 }
312 312
313 public void setShareLayerState(bool active) 313 public void setShareLayerState(bool active)
@@ -322,6 +322,11 @@ public class ScreenManager : MonoBehaviour { @@ -322,6 +322,11 @@ public class ScreenManager : MonoBehaviour {
322 this.pauseButton.SetActive( ! active); 322 this.pauseButton.SetActive( ! active);
323 } 323 }
324 324
  325 + public void updateProgressDownloadSprite(float progress)
  326 + {
  327 + downloadProgressLayer.GetComponent<Image>().fillAmount = progress;
  328 + }
  329 +
325 330
326 public void changeStates(bool playing, bool paused, bool repeatable) 331 public void changeStates(bool playing, bool paused, bool repeatable)
327 { 332 {
@@ -329,7 +334,7 @@ public class ScreenManager : MonoBehaviour { @@ -329,7 +334,7 @@ public class ScreenManager : MonoBehaviour {
329 setPauseMenuState(playing && paused); 334 setPauseMenuState(playing && paused);
330 setRepeatLayerState( ! playing && repeatable); 335 setRepeatLayerState( ! playing && repeatable);
331 if(!onLockExport) 336 if(!onLockExport)
332 - changeExportStates(ExportLayers.ExportLayer.Export_Layer, !playing && repeatable); 337 + changeExportStates(ExportLayers.ExportLayer.All, !playing && repeatable);
333 338
334 339
335 this.pauseButtonImage.switchAttribute(playing && paused); 340 this.pauseButtonImage.switchAttribute(playing && paused);
@@ -365,12 +370,16 @@ public class ScreenManager : MonoBehaviour { @@ -365,12 +370,16 @@ public class ScreenManager : MonoBehaviour {
365 setExportContainerState(show_Layer); 370 setExportContainerState(show_Layer);
366 setShareLayerState(show_Layer); 371 setShareLayerState(show_Layer);
367 break; 372 break;
  373 + case ExportLayers.ExportLayer.OnLockExport:
  374 + onLockExport = show_Layer;
  375 + break;
368 default: 376 default:
369 onLockExport = false; 377 onLockExport = false;
370 - setExportContainerState(false);  
371 - setExportLayerState(false); 378 + setExportContainerState(show_Layer);
  379 + setExportLayerState(show_Layer);
372 setProgressLayerState(false); 380 setProgressLayerState(false);
373 setDownloadLayerState(false); 381 setDownloadLayerState(false);
  382 + setDownloadProgressLayerState(false);
374 setShareLayerState(false); 383 setShareLayerState(false);
375 break; 384 break;
376 385