Commit d1ec12a4 by Yu-Tung

判斷檔案上傳路徑&

parent 0fd37e62
...@@ -15,18 +15,20 @@ ...@@ -15,18 +15,20 @@
<application <application
android:allowBackup="true" android:allowBackup="true"
android:icon="@mipmap/ic_launcher" android:icon="@mipmap/audiovisualrecord"
android:label="@string/app_name" android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round" android:roundIcon="@mipmap/audiovisualrecord"
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/Theme.AppCompat.Light.NoActionBar"> android:theme="@style/Theme.AppCompat.Light.NoActionBar">
<activity android:name=".ui.login.LoginActivity" > <activity android:name=".ui.login.LoginActivity"
android:screenOrientation="portrait">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter> </intent-filter>
</activity> </activity>
<activity android:name=".ui.main.MainActivity" /> <activity android:name=".ui.main.MainActivity"
android:screenOrientation="portrait"/>
<provider <provider
android:name="androidx.core.content.FileProvider" android:name="androidx.core.content.FileProvider"
......
...@@ -57,6 +57,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -57,6 +57,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
.create() .create()
.show(); .show();
} }
@Override @Override
public void showProgressDialog(String text) { public void showProgressDialog(String text) {
dismissProgressDialog(); dismissProgressDialog();
...@@ -155,6 +156,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -155,6 +156,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
public void showToast(String text) { public void showToast(String text) {
ToastCreator.makeText(this, text, Toast.LENGTH_SHORT); ToastCreator.makeText(this, text, Toast.LENGTH_SHORT);
} }
@RequiresApi(api = Build.VERSION_CODES.KITKAT) @RequiresApi(api = Build.VERSION_CODES.KITKAT)
@Override @Override
public String getPath(Uri uri) { public String getPath(Uri uri) {
...@@ -163,24 +165,20 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -163,24 +165,20 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
final boolean isKitKat = Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT; final boolean isKitKat = Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT;
// DocumentProvider // DocumentProvider
if (isKitKat && DocumentsContract.isDocumentUri(this, uri)) if (isKitKat && DocumentsContract.isDocumentUri(this, uri)) {
{
// ExternalStorageProvider // ExternalStorageProvider
if (isExternalStorageDocument(uri)) if (isExternalStorageDocument(uri)) {
{
final String docId = DocumentsContract.getDocumentId(uri); final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":"); final String[] split = docId.split(":");
final String type = split[0]; final String type = split[0];
if ("primary".equalsIgnoreCase(type)) if ("primary".equalsIgnoreCase(type)) {
{
return Environment.getExternalStorageDirectory() + "/" return Environment.getExternalStorageDirectory() + "/"
+ split[1]; + split[1];
} }
} }
// DownloadsProvider // DownloadsProvider
else if (isDownloadsDocument(uri)) else if (isDownloadsDocument(uri)) {
{
final String id = DocumentsContract.getDocumentId(uri); final String id = DocumentsContract.getDocumentId(uri);
final Uri contentUri = ContentUris.withAppendedId( final Uri contentUri = ContentUris.withAppendedId(
...@@ -190,37 +188,30 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -190,37 +188,30 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
return getDataColumn(this, contentUri, null, null); return getDataColumn(this, contentUri, null, null);
} }
// MediaProvider // MediaProvider
else if (isMediaDocument(uri)) else if (isMediaDocument(uri)) {
{
final String docId = DocumentsContract.getDocumentId(uri); final String docId = DocumentsContract.getDocumentId(uri);
final String[] split = docId.split(":"); final String[] split = docId.split(":");
final String type = split[0]; final String type = split[0];
Uri contentUri = null; Uri contentUri = null;
if ("image".equals(type)) if ("image".equals(type)) {
{
contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI; contentUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
} } else if ("video".equals(type)) {
else if ("video".equals(type))
{
contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI; contentUri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
} } else if ("audio".equals(type)) {
else if ("audio".equals(type))
{
contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI; contentUri = MediaStore.Audio.Media.EXTERNAL_CONTENT_URI;
} }
final String selection = "_id=?"; final String selection = "_id=?";
final String[] selectionArgs = new String[] { split[1] }; final String[] selectionArgs = new String[]{split[1]};
return getDataColumn(this, contentUri, selection, return getDataColumn(this, contentUri, selection,
selectionArgs); selectionArgs);
} }
} }
// MediaStore (and general) // MediaStore (and general)
else if ("content".equalsIgnoreCase(uri.getScheme())) else if ("content".equalsIgnoreCase(uri.getScheme())) {
{
// Return the remote address // Return the remote address
if (isGooglePhotosUri(uri)) if (isGooglePhotosUri(uri))
return uri.getLastPathSegment(); return uri.getLastPathSegment();
...@@ -228,8 +219,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -228,8 +219,7 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
return getDataColumn(this, uri, null, null); return getDataColumn(this, uri, null, null);
} }
// File // File
else if ("file".equalsIgnoreCase(uri.getScheme())) else if ("file".equalsIgnoreCase(uri.getScheme())) {
{
return uri.getPath(); return uri.getPath();
} }
...@@ -240,32 +230,27 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -240,32 +230,27 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
* Get the value of the data column for this Uri. This is useful for * Get the value of the data column for this Uri. This is useful for
* MediaStore Uris, and other file-based ContentProviders. * MediaStore Uris, and other file-based ContentProviders.
* *
* @param context - The context. * @param context - The context.
* @param uri - The Uri to query. * @param uri - The Uri to query.
* @param selection - (Optional) Filter used in the query. * @param selection - (Optional) Filter used in the query.
* @param selectionArgs - (Optional) Selection arguments used in the query. * @param selectionArgs - (Optional) Selection arguments used in the query.
* @return - The value of the _data column, which is typically a file path. * @return - The value of the _data column, which is typically a file path.
*/ */
private static String getDataColumn(Context context, Uri uri, private static String getDataColumn(Context context, Uri uri,
String selection, String[] selectionArgs) String selection, String[] selectionArgs) {
{
Cursor cursor = null; Cursor cursor = null;
final String column = "_data"; final String column = "_data";
final String[] projection = { column }; final String[] projection = {column};
try try {
{
cursor = context.getContentResolver().query(uri, projection, cursor = context.getContentResolver().query(uri, projection,
selection, selectionArgs, null); selection, selectionArgs, null);
if (cursor != null && cursor.moveToFirst()) if (cursor != null && cursor.moveToFirst()) {
{
final int index = cursor.getColumnIndexOrThrow(column); final int index = cursor.getColumnIndexOrThrow(column);
return cursor.getString(index); return cursor.getString(index);
} }
} } finally {
finally
{
if (cursor != null) if (cursor != null)
cursor.close(); cursor.close();
} }
...@@ -274,38 +259,34 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView ...@@ -274,38 +259,34 @@ public abstract class BaseActivity extends AppCompatActivity implements BaseView
} }
/** /**
* @param uri - The Uri to check. * @param uri - The Uri to check.
* @return - Whether the Uri authority is ExternalStorageProvider. * @return - Whether the Uri authority is ExternalStorageProvider.
*/ */
private static boolean isExternalStorageDocument(Uri uri) private static boolean isExternalStorageDocument(Uri uri) {
{
return "com.android.externalstorage.documents".equals(uri.getAuthority()); return "com.android.externalstorage.documents".equals(uri.getAuthority());
} }
/** /**
* @param uri - The Uri to check. * @param uri - The Uri to check.
* @return - Whether the Uri authority is DownloadsProvider. * @return - Whether the Uri authority is DownloadsProvider.
*/ */
private static boolean isDownloadsDocument(Uri uri) private static boolean isDownloadsDocument(Uri uri) {
{
return "com.android.providers.downloads.documents".equals(uri.getAuthority()); return "com.android.providers.downloads.documents".equals(uri.getAuthority());
} }
/** /**
* @param uri - The Uri to check. * @param uri - The Uri to check.
* @return - Whether the Uri authority is MediaProvider. * @return - Whether the Uri authority is MediaProvider.
*/ */
private static boolean isMediaDocument(Uri uri) private static boolean isMediaDocument(Uri uri) {
{
return "com.android.providers.media.documents".equals(uri.getAuthority()); return "com.android.providers.media.documents".equals(uri.getAuthority());
} }
/** /**
* @param uri - The Uri to check. * @param uri - The Uri to check.
* @return - Whether the Uri authority is Google Photos. * @return - Whether the Uri authority is Google Photos.
*/ */
private static boolean isGooglePhotosUri(Uri uri) private static boolean isGooglePhotosUri(Uri uri) {
{
return "com.google.android.apps.photos.content".equals(uri.getAuthority()); return "com.google.android.apps.photos.content".equals(uri.getAuthority());
} }
} }
...@@ -44,6 +44,12 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V ...@@ -44,6 +44,12 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
} }
@Override @Override
protected void onPause() {
super.onPause();
btnLogin.setEnabled(true);
}
@Override
public void init() { public void init() {
editAccount = findViewById(R.id.edit_account); editAccount = findViewById(R.id.edit_account);
editPassword = findViewById(R.id.edit_password); editPassword = findViewById(R.id.edit_password);
...@@ -57,6 +63,7 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V ...@@ -57,6 +63,7 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
public void onClick(View v) { public void onClick(View v) {
switch (v.getId()) { switch (v.getId()) {
case R.id.btn_login: case R.id.btn_login:
btnLogin.setEnabled(false);
// showProgressDialog("登入中"); // showProgressDialog("登入中");
// new Thread(){ // new Thread(){
// public void run(){ // public void run(){
...@@ -74,6 +81,7 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V ...@@ -74,6 +81,7 @@ public class LoginActivity extends BaseActivity implements LoginContract.View, V
// } // }
// }.start(); // }.start();
presenter.onLogin("", ""); presenter.onLogin("", "");
break; break;
} }
} }
......
...@@ -45,7 +45,9 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra ...@@ -45,7 +45,9 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
if ("True".equals(loginResponse.getmResult())) { if ("True".equals(loginResponse.getmResult())) {
// loginPreferences.setToken(loginResponse.getmToken()); // loginPreferences.setToken(loginResponse.getmToken());
view.onCompleteLogin(loginResponse.getmMsg()); view.onCompleteLogin(loginResponse.getmMsg());
} else { } else {
view.showDialogCaveatMessage("登入失敗"); view.showDialogCaveatMessage("登入失敗");
} }
} }
...@@ -53,7 +55,10 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra ...@@ -53,7 +55,10 @@ public class LoginPresenter<V extends LoginContract.View> implements LoginContra
@Override @Override
public void onError(Throwable e) { public void onError(Throwable e) {
Log.e("err", e.getMessage()); Log.e("err", e.getMessage());
if(e.getMessage().contains("No address associated with hostname"))
{
view.showDialogCaveatMessage("請檢查網路狀態");
}
view.showDialogCaveatMessage("登入失敗"); view.showDialogCaveatMessage("登入失敗");
} }
......
...@@ -61,6 +61,14 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -61,6 +61,14 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
private Button btnCapturePicture, btnRecordVideo, btnGetImageFromGallery, btnGetVideoFromGallery, btnDeviceEdit, btnCentralCloud, btnChoseDevice, btnBasicInformation; private Button btnCapturePicture, btnRecordVideo, btnGetImageFromGallery, btnGetVideoFromGallery, btnDeviceEdit, btnCentralCloud, btnChoseDevice, btnBasicInformation;
private File photoFile; private File photoFile;
private String pathCompany = "";
private String pathFactoryArea= "";
private String pathFactoryClass= "";
private String pathClass= "";
private String pathShootType = "";
private String uploadPath = "/";
// Bundle bag; // Bundle bag;
String token, imageFilePath; String token, imageFilePath;
int countFile = 0; int countFile = 0;
...@@ -248,7 +256,10 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -248,7 +256,10 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
filename.add(FileUtil.fileName(getPath(data.getClipData().getItemAt(i).getUri()))); filename.add(FileUtil.fileName(getPath(data.getClipData().getItemAt(i).getUri())));
Log.e("gggg", "" + uriList.get(i)); Log.e("gggg", "" + uriList.get(i));
Log.e("dddd", "" + filename.get(i)); Log.e("dddd", "" + filename.get(i));
mPresenter.segVideo(uriList.get(i), filename.get(i)); mPresenter.segVideo(uriList.get(i), filename.get(i));
} }
Log.e("aaa", count + ""); Log.e("aaa", count + "");
...@@ -256,13 +267,18 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -256,13 +267,18 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
uriList.clear(); uriList.clear();
String path = FileUtil.getFileAbsolutePath(this, data.getData()); String path = FileUtil.getFileAbsolutePath(this, data.getData());
String name = FileUtil.fileName(path); String name = FileUtil.fileName(path);
mPresenter.segVideo(path, name); mPresenter.segVideo(path, name);
Log.e("path", path); Log.e("path", path);
// TODO here==================== // TODO here====================
// onUploadFile(compressList, getResourceString(R.string.on_upload_vedio)); // onUploadFile(compressList, getResourceString(R.string.on_upload_vedio));
//影片的uri //影片的uri
} }
} }
if (requestCode == PICK_FILE_REQUEST_CODE && resultCode == RESULT_OK) { if (requestCode == PICK_FILE_REQUEST_CODE && resultCode == RESULT_OK) {
Uri selectedFile = data.getData(); Uri selectedFile = data.getData();
...@@ -362,6 +378,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -362,6 +378,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
//如果能改成用retrofit加rxjava最好,已經嘗試過三天的,可能有缺什麼,不過緊急所以先求功能 //如果能改成用retrofit加rxjava最好,已經嘗試過三天的,可能有缺什麼,不過緊急所以先求功能
private void onUploadFile(final ArrayList<String> uriList, String type) { private void onUploadFile(final ArrayList<String> uriList, String type) {
uploadPath = mPresenter.onJudgmentPath(pathCompany, pathFactoryArea,pathFactoryClass,pathClass,pathShootType);
// ongetsid(); // ongetsid();
showProgressDialog(type); showProgressDialog(type);
...@@ -403,8 +420,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -403,8 +420,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
String apiname = "SYNO.FileStation.Upload"; String apiname = "SYNO.FileStation.Upload";
String method = "upload"; String method = "upload";
String version = "2"; String version = "2";
String sid = "4CY9mdpmlP5eh8KGLob3h3bqm6VvygRIu8BPwMIOy3UlYGBJ3VkM7Dgtw-hLIdH3ipntHHmJDK7y72Tio9ybLk"; String path1 = uploadPath;
String path1 = "/仁武氯乙烯廠製造一課/1_SOP導讀";
Boolean a = true; Boolean a = true;
Boolean b = false; Boolean b = false;
...@@ -564,7 +580,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -564,7 +580,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
for (MNTFCTResponse mMNTFCTResponse : adapterData) { for (MNTFCTResponse mMNTFCTResponse : adapterData) {
dialogString.add(mMNTFCTResponse.getmPZNM()); dialogString.add(mMNTFCTResponse.getmPZNM());
} }
showItemDialog(dialogString, onMaintenanceDialogItemClick); showItemDialog(dialogString, onFavtoryAreaDialogItemClick);
} }
@Override @Override
...@@ -574,7 +590,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -574,7 +590,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
for (PMFCTResponse mPMFCTResponse : adapterData) { for (PMFCTResponse mPMFCTResponse : adapterData) {
dialogString.add(mPMFCTResponse.getmDPNM()); dialogString.add(mPMFCTResponse.getmDPNM());
} }
showItemDialog(dialogString, onProductionDialogItemClick); showItemDialog(dialogString, onFactoryClassDialogItemClick);
} }
@Override @Override
...@@ -584,7 +600,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -584,7 +600,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
for (EQKDResponse mEQKDResponse : adapterData) { for (EQKDResponse mEQKDResponse : adapterData) {
dialogString.add(mEQKDResponse.getmShift()); dialogString.add(mEQKDResponse.getmShift());
} }
showItemDialog(dialogString, onDeviceCategoryDialogItemClick); showItemDialog(dialogString, onClassUnitDialogItemClick);
} }
@Override @Override
...@@ -607,34 +623,41 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -607,34 +623,41 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
tvCompany.setText(mMainData.getmCODataList().get(which).getcONM()); tvCompany.setText(mMainData.getmCODataList().get(which).getcONM());
pathCompany = mMainData.getmCODataList().get(which).getcONM();
mChooseDeviceItemData.setCompany(mMainData.getmCODataList().get(which).getcONM()); mChooseDeviceItemData.setCompany(mMainData.getmCODataList().get(which).getcONM());
mChooseDeviceItemData.setCompanyId(mMainData.getmCODataList().get(which).getcO()); mChooseDeviceItemData.setCompanyId(mMainData.getmCODataList().get(which).getcO());
} }
}; };
private DialogInterface.OnClickListener onMaintenanceDialogItemClick = new DialogInterface.OnClickListener() { private DialogInterface.OnClickListener onFavtoryAreaDialogItemClick = new DialogInterface.OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
tvFactory.setText(mMainData.getmMNTFCTDataList().get(which).getmPZNM()); tvFactory.setText(mMainData.getmMNTFCTDataList().get(which).getmPZNM());
pathFactoryArea = mMainData.getmMNTFCTDataList().get(which).getmPZNM();
mChooseDeviceItemData.setFactoryAreaName(mMainData.getmMNTFCTDataList().get(which).getmPZNM()); mChooseDeviceItemData.setFactoryAreaName(mMainData.getmMNTFCTDataList().get(which).getmPZNM());
// mChooseDeviceItemData.setMaintenancePlantCompanyId(mMainData.getmMNTFCTDataList().get(which).getmPZ()); // mChooseDeviceItemData.setMaintenancePlantCompanyId(mMainData.getmMNTFCTDataList().get(which).getmPZ());
mChooseDeviceItemData.setFactoryAreaId(mMainData.getmMNTFCTDataList().get(which).getmPZ()); mChooseDeviceItemData.setFactoryAreaId(mMainData.getmMNTFCTDataList().get(which).getmPZ());
} }
}; };
private DialogInterface.OnClickListener onProductionDialogItemClick = new DialogInterface.OnClickListener() { private DialogInterface.OnClickListener onFactoryClassDialogItemClick = new DialogInterface.OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
tvUnit.setText(mMainData.getmPMFCTDataList().get(which).getmDPNM()); tvUnit.setText(mMainData.getmPMFCTDataList().get(which).getmDPNM());
pathFactoryClass = mMainData.getmPMFCTDataList().get(which).getmDPNM();
mChooseDeviceItemData.setFactoryClassCode(mMainData.getmPMFCTDataList().get(which).getmDP()); mChooseDeviceItemData.setFactoryClassCode(mMainData.getmPMFCTDataList().get(which).getmDP());
mChooseDeviceItemData.setFactoryClass(mMainData.getmPMFCTDataList().get(which).getmDPNM()); mChooseDeviceItemData.setFactoryClass(mMainData.getmPMFCTDataList().get(which).getmDPNM());
mChooseDeviceItemData.setProductionPlantId(mMainData.getmPMFCTDataList().get(which).getmPMFCT()); mChooseDeviceItemData.setProductionPlantId(mMainData.getmPMFCTDataList().get(which).getmPMFCT());
} }
}; };
private DialogInterface.OnClickListener onDeviceCategoryDialogItemClick = new DialogInterface.OnClickListener() { private DialogInterface.OnClickListener onClassUnitDialogItemClick = new DialogInterface.OnClickListener() {
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
tvClass.setText(mMainData.getmEQKDDataList().get(which).getmShift()); tvClass.setText(mMainData.getmEQKDDataList().get(which).getmShift());
pathClass = mMainData.getmEQKDDataList().get(which).getmShift();
mChooseDeviceItemData.setDeviceCategory(mMainData.getmEQKDDataList().get(which).getmShift()); mChooseDeviceItemData.setDeviceCategory(mMainData.getmEQKDDataList().get(which).getmShift());
// mChooseDeviceItemData.setDeviceCategryId(mMainData.getmEQKDDataList().get(which).getmEQKD()); // mChooseDeviceItemData.setDeviceCategryId(mMainData.getmEQKDDataList().get(which).getmEQKD());
} }
...@@ -644,6 +667,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie ...@@ -644,6 +667,7 @@ public class MainActivity extends BaseActivity implements MainContract.View, Vie
@Override @Override
public void onClick(DialogInterface dialog, int which) { public void onClick(DialogInterface dialog, int which) {
tvShootType.setText(mMainData.getmTYPEDataList().get(which).getmType()); tvShootType.setText(mMainData.getmTYPEDataList().get(which).getmType());
pathShootType = mMainData.getmTYPEDataList().get(which).getmType();
mChooseDeviceItemData.setShootType(mMainData.getmTYPEDataList().get(which).getmType()); mChooseDeviceItemData.setShootType(mMainData.getmTYPEDataList().get(which).getmType());
} }
}; };
......
...@@ -31,5 +31,7 @@ public interface MainContract { ...@@ -31,5 +31,7 @@ public interface MainContract {
void onGetTYPEData(String CO,String PMFCT); void onGetTYPEData(String CO,String PMFCT);
void onGetSid(); void onGetSid();
void onLogoutSid(String sid); void onLogoutSid(String sid);
String onJudgmentPath(String pathCompany,String pathFactoryArea,String pathFactoryClass,
String pathClass,String pathShootType);
} }
} }
package com.example.audiovisualrecord.ui.main; package com.example.audiovisualrecord.ui.main;
import android.os.Environment; import android.os.Environment;
import android.text.LoginFilter; import android.text.LoginFilter;
import android.util.Log; import android.util.Log;
...@@ -35,7 +36,7 @@ import static com.arthenica.mobileffmpeg.Config.RETURN_CODE_SUCCESS; ...@@ -35,7 +36,7 @@ import static com.arthenica.mobileffmpeg.Config.RETURN_CODE_SUCCESS;
public class MainPresenter<V extends MainContract.View> implements MainContract.Presenter<V> { public class MainPresenter<V extends MainContract.View> implements MainContract.Presenter<V> {
// private String KEY_SEARCH_CO = "6c66fcbd-6dfe-45a2-ad6b-cbcda09b25bd"; // private String KEY_SEARCH_CO = "6c66fcbd-6dfe-45a2-ad6b-cbcda09b25bd";
private String KEY_SEARCH_CO = "3b0f7c72-5479-46c1-b26d-224748e64d7a"; private String KEY_SEARCH_CO = "3b0f7c72-5479-46c1-b26d-224748e64d7a";
private String KEY_SEARCH_PZ = "78bc27f8-6c1b-4172-ba61-05798001671b"; private String KEY_SEARCH_PZ = "78bc27f8-6c1b-4172-ba61-05798001671b";
private String KEY_SEARCH_DP = "1c76477f-1fb0-49fb-a5bd-e75311bbe691"; private String KEY_SEARCH_DP = "1c76477f-1fb0-49fb-a5bd-e75311bbe691";
...@@ -43,13 +44,20 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -43,13 +44,20 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
private String KEY_SEARCH_TYPE = "145ce81d-7bae-4848-a38a-e0e738385681"; private String KEY_SEARCH_TYPE = "145ce81d-7bae-4848-a38a-e0e738385681";
private String USER_ID = "N000158385"; private String USER_ID = "N000158385";
private String pathCompany = "";
private String pathFactoryArea = "";
private String pathFactoryClass = "";
private String pathClass = "";
private String pathShootType = "";
private V view; private V view;
private String LOGIN_AUTHORIZED_ID = "acd9be92-46bf-4185-8721-5b60c67f0742"; private String LOGIN_AUTHORIZED_ID = "acd9be92-46bf-4185-8721-5b60c67f0742";
private ApiService api; private ApiService api;
SchedulerProviderImp schedulerProviderImp = new SchedulerProviderImp(); SchedulerProviderImp schedulerProviderImp = new SchedulerProviderImp();
private CompositeDisposable compositeDisposable; private CompositeDisposable compositeDisposable;
public MainPresenter(V view){ public MainPresenter(V view) {
this.view = view; this.view = view;
api = HttpMethods.getInstance().getApi(); api = HttpMethods.getInstance().getApi();
compositeDisposable = new CompositeDisposable(); compositeDisposable = new CompositeDisposable();
...@@ -71,7 +79,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -71,7 +79,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override @Override
public void onError(Throwable e) { public void onError(Throwable e) {
view.showDialogCaveatMessage(view.getResourceString(R.string.add_device_error)); view.showDialogCaveatMessage(view.getResourceString(R.string.add_device_error));
} }
...@@ -124,7 +132,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -124,7 +132,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
public void onNext(PMFCTResultList mPMFCTResultList) { public void onNext(PMFCTResultList mPMFCTResultList) {
if (mPMFCTResultList.getmPMFCTResponseList().size() < 1) { if (mPMFCTResultList.getmPMFCTResponseList().size() < 1) {
view.showDialogCaveatMessage(view.getResourceString(R.string.get_pmfct_error_no_data)); view.showDialogCaveatMessage(view.getResourceString(R.string.get_pmfct_error_no_data));
}else{ } else {
view.setDPNMData(mPMFCTResultList.getmPMFCTResponseList()); view.setDPNMData(mPMFCTResultList.getmPMFCTResponseList());
} }
...@@ -157,7 +165,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -157,7 +165,7 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
public void onNext(EQKDResultList mEQKDResultList) { public void onNext(EQKDResultList mEQKDResultList) {
if (mEQKDResultList.getmEQKDResponseList().size() < 1) { if (mEQKDResultList.getmEQKDResponseList().size() < 1) {
view.showDialogCaveatMessage(view.getResourceString(R.string.get_shift_error_no_data)); view.showDialogCaveatMessage(view.getResourceString(R.string.get_shift_error_no_data));
}else{ } else {
view.setEQKDData(mEQKDResultList.getmEQKDResponseList()); view.setEQKDData(mEQKDResultList.getmEQKDResponseList());
} }
} }
...@@ -178,9 +186,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -178,9 +186,9 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override @Override
public void onGetTYPEData(String CO, String PMFCT) { public void onGetTYPEData(String CO, String PMFCT) {
final TYPERequest mTypeRequest = new TYPERequest(KEY_SEARCH_TYPE,USER_ID,CO, PMFCT); final TYPERequest mTypeRequest = new TYPERequest(KEY_SEARCH_TYPE, USER_ID, CO, PMFCT);
String url = view.getResourceString(R.string.api_on_getTYPE); String url = view.getResourceString(R.string.api_on_getTYPE);
compositeDisposable.add(api.getTYPE(url,mTypeRequest) compositeDisposable.add(api.getTYPE(url, mTypeRequest)
.subscribeOn(schedulerProviderImp.io()) .subscribeOn(schedulerProviderImp.io())
.observeOn(schedulerProviderImp.ui()) .observeOn(schedulerProviderImp.ui())
.subscribeWith(new DisposableObserver<TYPEResultList>() { .subscribeWith(new DisposableObserver<TYPEResultList>() {
...@@ -188,14 +196,14 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -188,14 +196,14 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
public void onNext(TYPEResultList mTYPEResultList) { public void onNext(TYPEResultList mTYPEResultList) {
if (mTYPEResultList.getmTYPEResponseList().size() < 1) { if (mTYPEResultList.getmTYPEResponseList().size() < 1) {
view.showDialogCaveatMessage(view.getResourceString(R.string.get_type_error_no_data)); view.showDialogCaveatMessage(view.getResourceString(R.string.get_type_error_no_data));
}else{ } else {
view.setTYPEData(mTYPEResultList.getmTYPEResponseList()); view.setTYPEData(mTYPEResultList.getmTYPEResponseList());
} }
} }
@Override @Override
public void onError(Throwable e) { public void onError(Throwable e) {
view.showDialogCaveatMessage(view.getResourceString(R.string.add_device_error)); view.showDialogCaveatMessage("請重試或檢查網路狀態");
} }
@Override @Override
...@@ -217,13 +225,14 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -217,13 +225,14 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override @Override
public void onNext(SIDDataList mSIDDataList) { public void onNext(SIDDataList mSIDDataList) {
view.setSIDData(mSIDDataList.getsIdDataList().getSid()); view.setSIDData(mSIDDataList.getsIdDataList().getSid());
Log.e("sss",mSIDDataList.getSuccess()); Log.e("sss", mSIDDataList.getSuccess());
} }
@Override @Override
public void onError(Throwable e) { public void onError(Throwable e) {
// view.showDialogCaveatMessage(view.getResourceString( R.string.add_device_error)); view.showDialogCaveatMessage("請重試或檢查網路狀態");
Log.e("aaaa",e.getMessage()); Log.e("error", e.getMessage());
} }
@Override @Override
...@@ -236,19 +245,21 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -236,19 +245,21 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
@Override @Override
public void onLogoutSid(String sid) { public void onLogoutSid(String sid) {
String url = "https://webapp.fpcitc.com.tw/SOP/api/FileUpload/PostLogout?sid="+sid; String url = "https://webapp.fpcitc.com.tw/SOP/api/FileUpload/PostLogout?sid=" + sid;
compositeDisposable.add(api.onLogoutSid(url) compositeDisposable.add(api.onLogoutSid(url)
.subscribeOn(schedulerProviderImp.io()) .subscribeOn(schedulerProviderImp.io())
.observeOn(schedulerProviderImp.ui()) .observeOn(schedulerProviderImp.ui())
.subscribeWith(new DisposableObserver<LogoutSidResponse>() { .subscribeWith(new DisposableObserver<LogoutSidResponse>() {
@Override @Override
public void onNext(LogoutSidResponse mLogoutSidResponse) { public void onNext(LogoutSidResponse mLogoutSidResponse) {
Log.e("success",mLogoutSidResponse.getSuccess()); Log.e("success", mLogoutSidResponse.getSuccess());
} }
@Override @Override
public void onError(Throwable e) { public void onError(Throwable e) {
if (e.getMessage().contains("No address associated with hostname")) {
view.showDialogCaveatMessage("請檢查網路狀態");
}
} }
@Override @Override
...@@ -260,41 +271,73 @@ public class MainPresenter<V extends MainContract.View> implements MainContract. ...@@ -260,41 +271,73 @@ public class MainPresenter<V extends MainContract.View> implements MainContract.
} }
@Override @Override
public void segVideo(String path,String name) { public void segVideo(final String path, final String name) {
File video = new File(path); view.showProgressDialog("影片分割中");
int sizeLimit = 50 * 1024 * 1024;
Log.e("size", video.length() + "");
new Thread(new Runnable() {
@Override
public void run() {
File video = new File(path);
int sizeLimit = 50 * 1024 * 1024;
Log.e("size", video.length() + "");
// Log.e("path2", ); // Log.e("path2", );
int duration = (int) (FFprobe.getMediaInformation(path).getDuration() / 1000); //影片秒數 int duration = (int) (FFprobe.getMediaInformation(path).getDuration() / 1000); //影片秒數
int startTime = 0; int startTime = 0;
int segTime = 30; //分割秒數 int segTime = 30; //分割秒數
int loop = 0; int loop = 0;
if (duration % segTime != 0) { if (duration % segTime != 0) {
loop = duration / segTime + 1; loop = duration / segTime + 1;
} else { } else {
loop = duration / segTime; loop = duration / segTime;
} }
if (video.length() > sizeLimit) { if (video.length() > sizeLimit) {
for (int i = 0; i < loop; i++) { for (int i = 0; i < loop; i++) {
int rc = FFmpeg.execute("-ss " + startTime + " -i " + path + " -t " + segTime + " " + Environment.getExternalStorageDirectory().toString() + "/seg_" +i +name + ".mp4");
int rc = FFmpeg.execute("-ss " + startTime + " -i " + path + " -t " + segTime + " " + Environment.getExternalStorageDirectory().toString() + "/seg_" + i + name);
if (rc == RETURN_CODE_SUCCESS) {
Log.i(Config.TAG, "Command execution completed successfully.");
} else if (rc == RETURN_CODE_CANCEL) { if (rc == RETURN_CODE_SUCCESS) {
Log.i(Config.TAG, "Command execution cancelled by user."); Log.i(Config.TAG, "Command execution completed successfully.");
} else if (rc == RETURN_CODE_CANCEL) {
Log.i(Config.TAG, "Command execution cancelled by user.");
} else {
Log.i(Config.TAG, String.format("Command execution failed with rc=%d and the output below.", rc));
Config.printLastCommandOutput(Log.INFO);
}
startTime += segTime;
}
view.dismissProgressDialog();
} else { } else {
Log.i(Config.TAG, String.format("Command execution failed with rc=%d and the output below.", rc)); //沒超過
Config.printLastCommandOutput(Log.INFO); view.dismissProgressDialog();
} }
startTime += segTime;
} }
}).start();
} else {
//沒超過
}
}
}
@Override
public String onJudgmentPath(String pathCompany, String pathFactoryArea, String pathFactoryClass, String pathClass, String pathShootType) {
String path = "";
if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "SOP導讀".equals(pathShootType)) {
path = "/仁武氯乙烯廠製造一課/1_SOP導讀";
} else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "SOP審視會議".equals(pathShootType)) {
path = "/仁武氯乙烯廠製造一課/2_SOP審視修訂";
} else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DA".equals(pathClass)) {
path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DA";
} else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DB".equals(pathClass)) {
path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DB";
} else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DC".equals(pathClass)) {
path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DC";
} else if ("仁武氯乙烯廠製造一課".equals(pathFactoryClass) && "落實度查核".equals(pathShootType) && "DD".equals(pathClass)) {
path = "/仁武氯乙烯廠製造一課/3_SOP落實度查核/DD";
}
return path;
}
// @Override // @Override
......
#
# There is insufficient memory for the Java Runtime Environment to continue.
# Native memory allocation (malloc) failed to allocate 1048576 bytes for AllocateHeap
# Possible reasons:
# The system is out of physical RAM or swap space
# The process is running with CompressedOops enabled, and the Java Heap may be blocking the growth of the native heap
# Possible solutions:
# Reduce memory load on the system
# Increase physical memory or swap space
# Check if swap backing store is full
# Decrease Java heap size (-Xmx/-Xms)
# Decrease number of Java threads
# Decrease Java thread stack sizes (-Xss)
# Set larger code cache with -XX:ReservedCodeCacheSize=
# JVM is running with Zero Based Compressed Oops mode in which the Java heap is
# placed in the first 32GB address space. The Java Heap base address is the
# maximum limit for the native heap growth. Please use -XX:HeapBaseMinAddress
# to set the Java Heap base and to place the Java Heap above 32GB virtual address.
# This output file may be truncated or incomplete.
#
# Out of Memory Error (memory/allocation.inline.hpp:61), pid=20320, tid=0x0000000000003a8c
#
# JRE version: (8.0_202-b03) (build )
# Java VM: OpenJDK 64-Bit Server VM (25.202-b03 mixed mode windows-amd64 compressed oops)
# Failed to write core dump. Minidumps are not enabled by default on client versions of Windows
#
--------------- T H R E A D ---------------
Current thread (0x000000000312e800): JavaThread "Unknown thread" [_thread_in_vm, id=14988, stack(0x0000000003130000,0x0000000003230000)]
Stack: [0x0000000003130000,0x0000000003230000]
[error occurred during error reporting (printing stack bounds), id 0xc0000005]
Native frames: (J=compiled Java code, j=interpreted, Vv=VM code, C=native code)
--------------- P R O C E S S ---------------
Java Threads: ( => current thread )
Other Threads:
=>0x000000000312e800 (exited) JavaThread "Unknown thread" [_thread_in_vm, id=14988, stack(0x0000000003130000,0x0000000003230000)]
VM state:not at safepoint (normal execution)
VM Mutex/Monitor currently owned by a thread: None
heap address: 0x00000006c1200000, size: 4078 MB, Compressed Oops mode: Zero based, Oop shift amount: 3
Narrow klass base: 0x0000000000000000, Narrow klass shift: 3
Compressed class space size: 1073741824 Address: 0x00000007c0000000
Heap:
PSYoungGen total 76288K, used 1310K [0x000000076b100000, 0x0000000770600000, 0x00000007c0000000)
eden space 65536K, 2% used [0x000000076b100000,0x000000076b247af0,0x000000076f100000)
from space 10752K, 0% used [0x000000076fb80000,0x000000076fb80000,0x0000000770600000)
to space 10752K, 0% used [0x000000076f100000,0x000000076f100000,0x000000076fb80000)
ParOldGen total 175104K, used 0K [0x00000006c1200000, 0x00000006cbd00000, 0x000000076b100000)
object space 175104K, 0% used [0x00000006c1200000,0x00000006c1200000,0x00000006cbd00000)
Metaspace used 778K, capacity 4480K, committed 4480K, reserved 1056768K
class space used 74K, capacity 384K, committed 384K, reserved 1048576K
Card table byte_map: [0x00000000126f0000,0x0000000012ef0000] byte_map_base: 0x000000000f0e7000
Marking Bits: (ParMarkBitMap*) 0x0000000069869f30
Begin Bits: [0x0000000013c40000, 0x0000000017bf8000)
End Bits: [0x0000000017bf8000, 0x000000001bbb0000)
Polling page: 0x00000000014d0000
CodeCache: size=245760Kb used=328Kb max_used=328Kb free=245431Kb
bounds [0x0000000003330000, 0x00000000035a0000, 0x0000000012330000]
total_blobs=57 nmethods=0 adapters=38
compilation: enabled
Compilation events (0 events):
No events
GC Heap History (0 events):
No events
Deoptimization events (0 events):
No events
Classes redefined (0 events):
No events
Internal exceptions (0 events):
No events
Events (10 events):
Event: 0.021 loading class java/lang/Short
Event: 0.021 loading class java/lang/Short done
Event: 0.021 loading class java/lang/Integer
Event: 0.022 loading class java/lang/Integer done
Event: 0.022 loading class java/lang/Long
Event: 0.022 loading class java/lang/Long done
Event: 0.022 loading class java/lang/NullPointerException
Event: 0.022 loading class java/lang/NullPointerException done
Event: 0.022 loading class java/lang/ArithmeticException
Event: 0.022 loading class java/lang/ArithmeticException done
Dynamic libraries:
0x00007ff69da30000 - 0x00007ff69da61000 E:\Program Files\Android\Android Studio\jre\jre\bin\java.exe
0x00007ffb317a0000 - 0x00007ffb31990000 C:\WINDOWS\SYSTEM32\ntdll.dll
0x00007ffb2fc30000 - 0x00007ffb2fce2000 C:\WINDOWS\System32\KERNEL32.DLL
0x00007ffb2e730000 - 0x00007ffb2e9d4000 C:\WINDOWS\System32\KERNELBASE.dll
0x00007ffb316b0000 - 0x00007ffb31753000 C:\WINDOWS\System32\ADVAPI32.dll
0x00007ffb2fb90000 - 0x00007ffb2fc2e000 C:\WINDOWS\System32\msvcrt.dll
0x00007ffb30de0000 - 0x00007ffb30e77000 C:\WINDOWS\System32\sechost.dll
0x00007ffb2fe20000 - 0x00007ffb2ff40000 C:\WINDOWS\System32\RPCRT4.dll
0x00007ffb31440000 - 0x00007ffb315d4000 C:\WINDOWS\System32\USER32.dll
0x00007ffb2f160000 - 0x00007ffb2f181000 C:\WINDOWS\System32\win32u.dll
0x00007ffb30050000 - 0x00007ffb30076000 C:\WINDOWS\System32\GDI32.dll
0x00007ffb2f400000 - 0x00007ffb2f595000 C:\WINDOWS\System32\gdi32full.dll
0x00007ffb2f7b0000 - 0x00007ffb2f84e000 C:\WINDOWS\System32\msvcp_win.dll
0x00007ffb2f190000 - 0x00007ffb2f28a000 C:\WINDOWS\System32\ucrtbase.dll
0x00007ffb22d60000 - 0x00007ffb22fe4000 C:\WINDOWS\WinSxS\amd64_microsoft.windows.common-controls_6595b64144ccf1df_6.0.18362.900_none_e6beb9d913147d17\COMCTL32.dll
0x00007ffb2f850000 - 0x00007ffb2fb85000 C:\WINDOWS\System32\combase.dll
0x00007ffb2f6d0000 - 0x00007ffb2f750000 C:\WINDOWS\System32\bcryptPrimitives.dll
0x00007ffb2ffa0000 - 0x00007ffb2ffce000 C:\WINDOWS\System32\IMM32.DLL
0x0000000068d40000 - 0x0000000068e12000 E:\Program Files\Android\Android Studio\jre\jre\bin\msvcr100.dll
0x00000000690a0000 - 0x00000000698e6000 E:\Program Files\Android\Android Studio\jre\jre\bin\server\jvm.dll
0x00007ffb2ffd0000 - 0x00007ffb2ffd8000 C:\WINDOWS\System32\PSAPI.DLL
0x00007ffb2ada0000 - 0x00007ffb2adc4000 C:\WINDOWS\SYSTEM32\WINMM.dll
0x00007ffb28ca0000 - 0x00007ffb28caa000 C:\WINDOWS\SYSTEM32\VERSION.dll
0x00007ffb1a040000 - 0x00007ffb1a049000 C:\WINDOWS\SYSTEM32\WSOCK32.dll
0x00007ffb31220000 - 0x00007ffb3128f000 C:\WINDOWS\System32\WS2_32.dll
0x00007ffb2ad20000 - 0x00007ffb2ad4d000 C:\WINDOWS\SYSTEM32\WINMMBASE.dll
0x00007ffb2f5a0000 - 0x00007ffb2f5ea000 C:\WINDOWS\System32\cfgmgr32.dll
0x00007ffb00a30000 - 0x00007ffb00a3f000 E:\Program Files\Android\Android Studio\jre\jre\bin\verify.dll
0x00007ffaf7530000 - 0x00007ffaf7559000 E:\Program Files\Android\Android Studio\jre\jre\bin\java.dll
0x00007ffaf2330000 - 0x00007ffaf2346000 E:\Program Files\Android\Android Studio\jre\jre\bin\zip.dll
VM Arguments:
java_command: org.jetbrains.git4idea.http.GitAskPassApp Password for 'https://github.com':
java_class_path (initial): E:/Program Files/Android/Android Studio/plugins/git4idea/lib/git4idea-rt.jar;E:/Program Files/Android/Android Studio/lib/xmlrpc-2.0.1.jar;E:/Program Files/Android/Android Studio/lib/commons-codec-1.10.jar;E:/Program Files/Android/Android Studio/lib/util.jar
Launcher Type: SUN_STANDARD
Environment Variables:
PATH=E:/Program Files/Git/mingw64/libexec/git-core;E:/Program Files/Git/mingw64/libexec/git-core;E:\Program Files\Git\mingw64\bin;E:\Program Files\Git\usr\bin;C:\Users\PCKing\bin;C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\ProgramData\Oracle\Java\javapath;C:\Program Files (x86)\Intel\iCLS Client\;C:\Program Files\Intel\iCLS Client\;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files\Intel\Intel(R) Management Engine Components\DAL;C:\Program Files (x86)\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\Intel(R) Management Engine Components\IPT;C:\Program Files\Intel\WiFi\bin\;C:\Program Files\Common Files\Intel\WirelessCommon\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\;C:\Program Files\Java\jdk1.8.0_144\bin;D:\wamp64\bin\php\php5.6.31;C:\ProgramData\ComposerSetup\bin;C:\WINDOWS\System32\OpenSSH\;D:\Program Files\Crucial\Crucial Storage Executive;E:\Program Files\Git\cmd;C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\170\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Microsoft SQL Server\150\Tools\Binn\;C:\Program Files\Microsoft SQL Server\150\DTS\Binn\;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn\;C:\Users\PCKing\AppData\Local\Microsoft\WindowsApps;C:\Users\PCKing\AppData\Roaming\Composer\vendor\bin;C:\Users\PCKing\AppData\Local\GitHubDesktop\bin
USERNAME=PCKing
DISPLAY=:0.0
OS=Windows_NT
PROCESSOR_IDENTIFIER=Intel64 Family 6 Model 158 Stepping 9, GenuineIntel
--------------- S Y S T E M ---------------
OS: Windows 10.0 , 64 bit Build 18362 (10.0.18362.900)
CPU:total 8 (initial active 8) (4 cores per cpu, 2 threads per core) family 6 model 158 stepping 9, cmov, cx8, fxsr, mmx, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, avx, avx2, aes, clmul, erms, 3dnowpref, lzcnt, ht, tsc, tscinvbit, bmi1, bmi2, adx
Memory: 4k page, physical 16695424k(3741100k free), swap 16695424k(5892k free)
vm_info: OpenJDK 64-Bit Server VM (25.202-b03) for windows-amd64 JRE (1.8.0_202-release-1483-b03), built by "builder" with MS VC++ 10.0 (VS2010)
time: Sat Jun 20 17:35:03 2020
timezone: x_зǮɶ
elapsed time: 0 seconds (0d 0h 0m 0s)
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment