diff --git a/app/build.gradle b/app/build.gradle index 247614b..4a5efcf 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -16,8 +16,8 @@ android { applicationId "com.shunzhi.parent" minSdkVersion 16 targetSdkVersion 26 - versionCode 1 - versionName "1.0" + versionCode 102 + versionName "1.0.2" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" javaCompileOptions { annotationProcessorOptions { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 9ee7b74..d50dfc0 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -117,6 +117,17 @@ android:name="com.amap.api.v2.apikey" android:value="1d130afb822d8a1019e6592cbaf10bcc" /> + + <provider + android:authorities="com.shunzhi.parent.fileprovider" + android:name="android.support.v4.content.FileProvider" + android:grantUriPermissions="true" + android:exported="false"> + <meta-data + android:name="android.support.FILE_PROVIDER_PATHS" + android:resource="@xml/filepaths"/> + </provider> + <activity android:name=".ui.activity.StartActivity" android:launchMode="singleInstance" diff --git a/app/src/main/java/com/shunzhi/parent/AppConfig.java b/app/src/main/java/com/shunzhi/parent/AppConfig.java index 653ef8c..5c519c8 100644 --- a/app/src/main/java/com/shunzhi/parent/AppConfig.java +++ b/app/src/main/java/com/shunzhi/parent/AppConfig.java @@ -38,15 +38,15 @@ public class AppConfig { public static String APP_IS_START = "app_is_start"; //http://campus.myjxt.com/ - public static String BASE_URL="http://60.190.202.57:1000/"; - public static String BASE_URL_ORDER="http://60.190.202.57:8101/"; - public static String BASE_URL_FILE="http://60.190.202.57:8196"; +// public static String BASE_URL="http://60.190.202.57:1000/"; +// public static String BASE_URL_ORDER="http://60.190.202.57:8101/"; +// public static String BASE_URL_FILE="http://60.190.202.57:8196"; //正式 -// public static String BASE_URL="http://campus.myjxt.com/"; -// public static String BASE_URL_ORDER="http://parent.myjxt.com/"; -// public static String BASE_URL_FILE="http://manage.myjxt.com"; + public static String BASE_URL="http://campus.myjxt.com/"; + public static String BASE_URL_ORDER="http://parent.myjxt.com/"; + public static String BASE_URL_FILE="http://manage.myjxt.com"; // public static final String url_version = BASE_URL + "api/Common/AppVersion?appType=3"; diff --git a/app/src/main/java/com/shunzhi/parent/manager/UpdateManager.java b/app/src/main/java/com/shunzhi/parent/manager/UpdateManager.java index ea715b1..6838708 100644 --- a/app/src/main/java/com/shunzhi/parent/manager/UpdateManager.java +++ b/app/src/main/java/com/shunzhi/parent/manager/UpdateManager.java @@ -148,7 +148,7 @@ public class UpdateManager { Timber.d("66666%s","currentVersion="+currentVersion+"serviceCode="+serviceCode+"versionCode="+versionCode); if ((serviceCode > versionCode) && ischeckingForUpdate && !isChechingInterrupted) { showNoticeDialog(currentVersion, version.content, isChechingInterrupted); - } else if (!(serviceCode > versionCode) && shouldInterruptDialogShow && !isChechingInterrupted) { + } else if (!(serviceCode > versionCode) && !isChechingInterrupted) { Toast.makeText(mContext, "已经是最新版本啦!", Toast.LENGTH_SHORT).show(); mContext = null; } diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java index f97756f..264d4dc 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/ConsultFragment.java @@ -41,6 +41,7 @@ import java.util.List; import cn.jzvd.JZVideoPlayerStandard; import me.leefeng.citypicker.CityPicker; import me.leefeng.citypicker.CityPickerListener; +import timber.log.Timber; public class ConsultFragment extends BaseMVPCompatFragment<ConsultContract.ConsultPresenter, ConsultContract.IConsultModel> implements View.OnClickListener , ConsultContract.IConsultView, CityPickerListener { @@ -54,6 +55,7 @@ public class ConsultFragment extends BaseMVPCompatFragment<ConsultContract.Consu MyConsultAdapter contextAdapter; List<String> imgesUrl = new ArrayList<>(); + List<String> imgWebUrl=new ArrayList<>();//跳转的连接 List<String> describeList = new ArrayList<>(); List<GuangGaoBean> guanggaoList = new ArrayList<>(); List<ChannelContextBean> contextList = new ArrayList<>(); @@ -148,7 +150,7 @@ public class ConsultFragment extends BaseMVPCompatFragment<ConsultContract.Consu xBanner.setOnItemClickListener(new XBanner.OnItemClickListener() { @Override public void onItemClick(XBanner banner, int position) { - WebViewActivity.getInstance(getContext(), imgesUrl.get(position), -1); + WebViewActivity.getInstance(getContext(), imgWebUrl.get(position), -1); } }); } @@ -234,6 +236,7 @@ public class ConsultFragment extends BaseMVPCompatFragment<ConsultContract.Consu for (int i = 0; i < guangGaoBeanList.size(); i++) { imgesUrl.add(AppConfig.BASE_URL_FILE + guangGaoBeanList.get(i).fileSrc); describeList.add(guangGaoBeanList.get(i).describe); + imgWebUrl.add(guangGaoBeanList.get(i).url); } initBanners(); } diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/MineFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/MineFragment.java index f1bfe08..89e9bde 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/MineFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/MineFragment.java @@ -175,7 +175,7 @@ public class MineFragment extends BaseMVPCompatFragment<LoginAndRegisterContract break; case R.id.layout_update: - UpdateManager.getInstance().setContext(getContext()).isUpdate(true); + UpdateManager.getInstance().setContext(getContext()).isUpdate(false); break; default: break; diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java index fcc41fa..d2e33cf 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/StartFragment.java @@ -1,5 +1,6 @@ package com.shunzhi.parent.ui.fragment; +import android.media.MediaMetadataRetriever; import android.os.Bundle; import android.os.CountDownTimer; import android.support.annotation.NonNull; @@ -12,6 +13,7 @@ import android.widget.TextView; import com.share.mvpsdk.base.BasePresenter; import com.share.mvpsdk.base.fragment.BaseMVPCompatFragment; +import com.share.mvpsdk.view.MyVieoView; import com.shunzhi.parent.AppConfig; import com.shunzhi.parent.R; import com.shunzhi.parent.bean.GuangGaoBean; @@ -28,6 +30,7 @@ import java.util.ArrayList; import java.util.List; import cn.jzvd.JZVideoPlayerStandard; +import timber.log.Timber; public class StartFragment extends BaseMVPCompatFragment<ConsultContract.ConsultPresenter, ConsultContract.IConsultModel> implements ConsultContract.IConsultView { @@ -38,13 +41,15 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult boolean isQidong = false; - JZVideoPlayerStandard jiecaoVideo; +// JZVideoPlayerStandard jiecaoVideo; + MyVieoView myVideoView = null; - CountDownTimer countDownTimer=new CountDownTimer(5*1000,1000) { + + CountDownTimer countDownTimer = new CountDownTimer(5 * 1000, 1000) { @Override public void onTick(long l) { - tvJump.setText("跳转"+l/1000+"s"); + tvJump.setText("跳转" + l / 1000 + "s"); } @Override @@ -64,21 +69,13 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult xBanner = view.findViewById(R.id.xBanner); tvJump = view.findViewById(R.id.tvJump); - jiecaoVideo = view.findViewById(R.id.jiecaoVideo); - jiecaoVideo.tinyBackImageView.setVisibility(View.GONE); - jiecaoVideo.backButton.setVisibility(View.GONE); - jiecaoVideo.replayTextView.setVisibility(View.GONE); - jiecaoVideo.batteryLevel.setVisibility(View.GONE); - jiecaoVideo.thumbImageView.setVisibility(View.GONE); - jiecaoVideo.loadingProgressBar.setVisibility(View.GONE); - countDownTimer.start(); + myVideoView = view.findViewById(R.id.myVideoView); isQidong = TextUtils.isEmpty(AppConfig.getAppConfig(getContext()).get(AppConfig.APP_IS_START)); - - if (isQidong)mPresenter.getBanners("0", ""); + if (isQidong) mPresenter.getBanners("0", ""); else mPresenter.getBanners("1", ""); showVideos(); - tvJump=view.findViewById(R.id.tvJump); + tvJump = view.findViewById(R.id.tvJump); tvJump.setOnClickListener(new View.OnClickListener() { @Override @@ -90,17 +87,12 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult } - private void showVideos(){ + private void showVideos() { if (isQidong) { - jiecaoVideo.setVisibility(View.VISIBLE); xBanner.setVisibility(View.GONE); -// mPresenter.getBanners("0", AppContext.getInstance().district==""?"余杭区":AppContext.getInstance().district); mPresenter.getBanners("0", ""); } else { - jiecaoVideo.setVisibility(View.GONE); xBanner.setVisibility(View.VISIBLE); -// mPresenter.getBanners("1", ""); -// mPresenter.getBanners("1", AppContext.getInstance().district==""?"余杭区":AppContext.getInstance().district); } } @@ -129,12 +121,15 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult public void showContext(List<ChannelContextBean> list) { } - List<String> imgUrl = new ArrayList<>(); + + List<String> imgUrl = new ArrayList<>(); List<String> describeList = new ArrayList<>(); + private void initBannes(List<GuangGaoBean> guangGaoBeanList) { try { imgUrl = new ArrayList<>(); describeList = new ArrayList<>(); +// Timber.d("66666%s","guangGaoBeanList="+guangGaoBeanList); if (isQidong) { AppConfig.getAppConfig(getContext()).set(AppConfig.APP_IS_START, "1"); String fileUrl = "", describe = ""; @@ -144,16 +139,17 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult describe = guangGaoBeanList.get(i).describe; imgUrl.add(fileUrl); describeList.add(describe); - }else { + } else { imgUrl.add(AppConfig.BASE_URL_FILE + guangGaoBeanList.get(i).fileSrc); describeList.add(guangGaoBeanList.get(i).describe); } } - if (!TextUtils.isEmpty(fileUrl)){ - jiecaoVideo.setUp(fileUrl, JZVideoPlayerStandard.SCREEN_WINDOW_NORMAL, describe); - jiecaoVideo.startVideo(); - }else { - isQidong=false; + if (!TextUtils.isEmpty(fileUrl)) { + myVideoView.setVideoPath(fileUrl); + myVideoView.start(); + myVideoView.requestFocus(); + } else { + isQidong = false; startNewActivity(StartActivity.class); // showVideos(); // showBanners(); @@ -166,13 +162,14 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult } showBanners(); } - + countDownTimer.start(); } catch (Exception e) { e.printStackTrace(); + countDownTimer.start(); } } - private void showBanners(){ + private void showBanners() { xBanner.setData(imgUrl, describeList); xBanner.stopAutoPlay(); xBanner.setmAutoPalyTime(10000); @@ -188,6 +185,6 @@ public class StartFragment extends BaseMVPCompatFragment<ConsultContract.Consult @Override public void onDestroy() { super.onDestroy(); - if (null!=countDownTimer)countDownTimer.cancel(); + if (null != countDownTimer) countDownTimer.cancel(); } } diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java index 81b584e..3179595 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/consult/ConsultOneLevelFragment.java @@ -6,6 +6,7 @@ import android.support.annotation.Nullable; import android.support.v7.widget.LinearLayoutManager; import android.support.v7.widget.RecyclerView; import android.text.TextUtils; +import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; @@ -130,7 +131,6 @@ public class ConsultOneLevelFragment extends BaseMVPCompatFragment<ConsultOneCon } private void initRecyclerView(List<GuangGaoBean> guangGaoBeanList) { - if (null == myGrallyAdapter) myGrallyAdapter = new MyGrallyAdapter(); myGrallyAdapter.addAll(guangGaoBeanList); recyclerViewGrally.setAdapter(myGrallyAdapter); @@ -150,7 +150,6 @@ public class ConsultOneLevelFragment extends BaseMVPCompatFragment<ConsultOneCon @Override public void showConsultContent(List<ChannelContextBean> list) { -// Log.d("66666", "ChannelContextBean=" + list); if (null != list) { myConsultBeanList.addAll(list); if (myConsultAdapter == null) { @@ -216,8 +215,8 @@ public class ConsultOneLevelFragment extends BaseMVPCompatFragment<ConsultOneCon tv_grally_title = itemView.findViewById(R.id.tv_grally_title); frame_root = itemView.findViewById(R.id.frame_root); FrameLayout.LayoutParams params = new FrameLayout.LayoutParams(-1, -1); -// params.width = DisplayUtils.getScreenWidthPixels(getActivity()) - 100; -// params.setMargins(10, 0, 10, 0); + params.width = DisplayUtils.getScreenWidthPixels(getActivity()) - 100; + params.setMargins(10, 0, 10, 0); frame_root.setLayoutParams(params); } diff --git a/app/src/main/java/com/shunzhi/parent/ui/fragment/report/ChengZhangFragment.java b/app/src/main/java/com/shunzhi/parent/ui/fragment/report/ChengZhangFragment.java index 50a450e..28c4a66 100644 --- a/app/src/main/java/com/shunzhi/parent/ui/fragment/report/ChengZhangFragment.java +++ b/app/src/main/java/com/shunzhi/parent/ui/fragment/report/ChengZhangFragment.java @@ -166,7 +166,7 @@ public class ChengZhangFragment extends BaseMVPCompatFragment<ReportContract.Rep Handler handler = null; public void showShaixuan(Handler handler) { - mPresenter.getReports(); this.handler = handler; + mPresenter.getReports(); } } diff --git a/app/src/main/java/com/shunzhi/parent/util/SystemHelper.java b/app/src/main/java/com/shunzhi/parent/util/SystemHelper.java index 6a9d95f..b9f2007 100644 --- a/app/src/main/java/com/shunzhi/parent/util/SystemHelper.java +++ b/app/src/main/java/com/shunzhi/parent/util/SystemHelper.java @@ -23,6 +23,7 @@ import android.net.NetworkInfo.State; import android.net.Uri; import android.os.Build; import android.support.v4.app.ActivityCompat; +import android.support.v4.content.FileProvider; import android.telephony.TelephonyManager; import android.util.DisplayMetrics; import android.view.Window; @@ -41,6 +42,7 @@ import timber.log.Timber; /** * 获取系统信息的工具类 + * * @author hjgang */ public class SystemHelper { @@ -50,6 +52,7 @@ public class SystemHelper { /** * 创建本应用的桌面快捷方式<br/> * 注意:需要添加权限<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT"/> + * * @param */ public static void createShortcut(Context context, Class<?> clazz) { @@ -74,6 +77,7 @@ public class SystemHelper { /** * 字符串转换成date + * * @param time * @return */ @@ -92,6 +96,7 @@ public class SystemHelper { /** * 将字符串转为 时间戳 + * * @param time * @return */ @@ -111,7 +116,7 @@ public class SystemHelper { /** * 将时间戳转为 字符串 * yyyy-MM-dd HH:mm - * */ + */ public static String getTimeStr(String time) { String newtime = null; @@ -125,7 +130,7 @@ public class SystemHelper { /** * 将时间戳转为 字符串 * yyyy-MM-dd - * */ + */ public static String getTimeStr3(String time) { String newtime = null; SimpleDateFormat sdfDateFormat = new SimpleDateFormat("yyyy-MM-dd"); @@ -177,11 +182,11 @@ public class SystemHelper { } /** - * @author LuoB. * @param oldTime 较小的时间 * @param newTime 较大的时间 (如果为空 默认当前时间 ,表示和当前时间相比) * @return -1 :同一天. 0:昨天 . 1 :至少是前天. * @throws ParseException 转换异常 + * @author LuoB. */ public static int isYeaterday(Date oldTime, Date newTime) throws ParseException { if (newTime == null) { @@ -204,6 +209,7 @@ public class SystemHelper { /** * 检查是否已经创建了桌面快捷方式<br/> * 注意:需要添加权限<uses-permission android:name="com.android.launcher.permission.READ_SETTINGS"/> + * * @param context * @return */ @@ -336,6 +342,7 @@ public class SystemHelper { /** * 返回当前程序版本代码,如:1 + * * @param context * @return 当前程序版本代码 */ @@ -347,7 +354,7 @@ public class SystemHelper { versionCode = pi.versionCode; } catch (Exception e) { - Timber.d("66666%s" ,e.toString()+ ""); + Timber.d("66666%s", e.toString() + ""); } return versionCode; } @@ -375,13 +382,20 @@ public class SystemHelper { * 安装指定的APK文件,主要用于本应用程序的更新 * * @param context - * @param apk - * apk文件的全路径名 + * @param apk apk文件的全路径名 */ public static void installAPK(Context context, String apk) { Intent intent = new Intent(Intent.ACTION_VIEW); intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); - intent.setDataAndType(Uri.fromFile(new File(apk)), "application/vnd.android.package-archive"); + Uri data; + + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) { + data = FileProvider.getUriForFile(context, "com.shunzhi.parent.fileprovider", new File(apk)); +// 给目标应用一个临时授权 + intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION); + } else data = Uri.fromFile(new File(apk)); + + intent.setDataAndType(data, "application/vnd.android.package-archive"); context.startActivity(intent); android.os.Process.killProcess(android.os.Process.myPid()); } diff --git a/app/src/main/res/layout/fragment_cheng_zhang.xml b/app/src/main/res/layout/fragment_cheng_zhang.xml index 8beca5b..3636389 100644 --- a/app/src/main/res/layout/fragment_cheng_zhang.xml +++ b/app/src/main/res/layout/fragment_cheng_zhang.xml @@ -3,12 +3,12 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" - android:padding="@dimen/size_dp_10" tools:context="com.shunzhi.parent.ui.fragment.report.ChengZhangFragment"> <include layout="@layout/layout_chengzhang"/> <LinearLayout + android:layout_margin="@dimen/size_dp_10" android:id="@+id/layout_report" android:layout_width="match_parent" android:layout_height="match_parent" @@ -49,7 +49,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/bgColor" - android:padding="@dimen/size_dp_10"> + > </android.support.v7.widget.RecyclerView> diff --git a/app/src/main/res/layout/fragment_consult_one_level.xml b/app/src/main/res/layout/fragment_consult_one_level.xml index 86772ae..e27a65e 100644 --- a/app/src/main/res/layout/fragment_consult_one_level.xml +++ b/app/src/main/res/layout/fragment_consult_one_level.xml @@ -10,6 +10,7 @@ android:id="@+id/recyclerViewGrally" android:layout_width="match_parent" android:layout_height="180dp" + android:background="@color/bgColor" ></android.support.v7.widget.RecyclerView> <include layout="@layout/layout_textandimgshow"/> diff --git a/app/src/main/res/layout/fragment_report.xml b/app/src/main/res/layout/fragment_report.xml index aed0799..ea22c27 100644 --- a/app/src/main/res/layout/fragment_report.xml +++ b/app/src/main/res/layout/fragment_report.xml @@ -69,7 +69,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" - android:visibility="gone" + android:visibility="visible" > diff --git a/app/src/main/res/layout/fragment_start.xml b/app/src/main/res/layout/fragment_start.xml index 735040c..37f66d2 100644 --- a/app/src/main/res/layout/fragment_start.xml +++ b/app/src/main/res/layout/fragment_start.xml @@ -1,33 +1,37 @@ <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" + xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/bgColor" - xmlns:app="http://schemas.android.com/apk/res-auto" tools:context="com.shunzhi.parent.ui.fragment.StartFragment"> - <com.stx.xhb.xbanner.XBanner + <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" - android:id="@+id/xBanner" - ></com.stx.xhb.xbanner.XBanner> + android:orientation="vertical"> - <cn.jzvd.JZVideoPlayerStandard - android:id="@+id/jiecaoVideo" - android:visibility="gone" - android:layout_width="match_parent" - android:layout_height="match_parent"></cn.jzvd.JZVideoPlayerStandard> + <com.stx.xhb.xbanner.XBanner + android:id="@+id/xBanner" + android:layout_width="match_parent" + android:layout_height="match_parent"></com.stx.xhb.xbanner.XBanner> + + <com.share.mvpsdk.view.MyVieoView + android:id="@+id/myVideoView" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:visibility="visible" /> + </LinearLayout> <TextView android:id="@+id/tvJump" android:layout_width="@dimen/size_dp_50" android:layout_height="@dimen/size_dp_50" - android:text="跳过" - android:gravity="center" - android:textColor="@color/white" - android:textSize="@dimen/size_dp_12" android:layout_gravity="right" android:layout_margin="@dimen/size_dp_10" android:background="@drawable/shape_xueqing_radius25" - /> + android:gravity="center" + android:text="跳过" + android:textColor="@color/white" + android:textSize="@dimen/size_dp_12" /> </FrameLayout> diff --git a/app/src/main/res/layout/item_grally.xml b/app/src/main/res/layout/item_grally.xml index 7b4bc53..8fc4f02 100644 --- a/app/src/main/res/layout/item_grally.xml +++ b/app/src/main/res/layout/item_grally.xml @@ -2,9 +2,8 @@ <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="match_parent" - android:layout_margin="@dimen/size_dp_10" android:id="@+id/frame_root" - android:background="@color/txt_black"> + android:background="@color/white"> <ImageView @@ -22,8 +21,8 @@ android:paddingBottom="@dimen/size_dp_3" android:paddingLeft="@dimen/size_dp_10" android:paddingTop="@dimen/size_dp_3" - android:text="撒飞洒发发" - android:textColor="@color/white" + android:text="" + android:textColor="@color/textColor" android:textSize="@dimen/textSize16" /> </FrameLayout> \ No newline at end of file diff --git a/app/src/main/res/layout/item_report_deyu.xml b/app/src/main/res/layout/item_report_deyu.xml index 9c53772..2ef866d 100644 --- a/app/src/main/res/layout/item_report_deyu.xml +++ b/app/src/main/res/layout/item_report_deyu.xml @@ -1,7 +1,8 @@ <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" - android:layout_height="wrap_content"> + android:layout_height="wrap_content" + android:background="@color/bgColor"> <LinearLayout android:layout_width="match_parent" diff --git a/app/src/main/res/layout/layout_chengzhang.xml b/app/src/main/res/layout/layout_chengzhang.xml index 4da6c3b..df08c6f 100644 --- a/app/src/main/res/layout/layout_chengzhang.xml +++ b/app/src/main/res/layout/layout_chengzhang.xml @@ -4,6 +4,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:background="@color/white" + android:layout_margin="@dimen/size_dp_10" android:orientation="vertical"> <TextView @@ -20,8 +21,8 @@ android:id="@+id/layout_kaoqin" android:layout_width="match_parent" android:layout_height="?android:actionBarSize" - android:layout_marginLeft="@dimen/size_dp_15" - android:layout_marginRight="@dimen/size_dp_15" + android:layout_marginLeft="@dimen/size_dp_10" + android:layout_marginRight="@dimen/size_dp_10" android:layout_marginTop="@dimen/size_dp_10" android:background="@drawable/shape_corner_bg" android:orientation="horizontal"> @@ -50,8 +51,8 @@ android:id="@+id/layout_buka" android:layout_width="match_parent" android:layout_height="?android:actionBarSize" - android:layout_marginLeft="@dimen/size_dp_15" - android:layout_marginRight="@dimen/size_dp_15" + android:layout_marginLeft="@dimen/size_dp_10" + android:layout_marginRight="@dimen/size_dp_10" android:layout_marginTop="@dimen/size_dp_10" android:background="@drawable/shape_corner_bg" android:orientation="horizontal"> @@ -79,8 +80,8 @@ android:id="@+id/layout_qingjia" android:layout_width="match_parent" android:layout_height="?android:actionBarSize" - android:layout_marginLeft="@dimen/size_dp_15" - android:layout_marginRight="@dimen/size_dp_15" + android:layout_marginLeft="@dimen/size_dp_10" + android:layout_marginRight="@dimen/size_dp_10" android:layout_marginTop="@dimen/size_dp_10" android:background="@drawable/shape_corner_bg" android:orientation="horizontal"> diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 50f49aa..0e6b462 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -5,6 +5,6 @@ <string name="hello_blank_fragment">Hello blank fragment</string> <string name="ceping">慧测慧练</string> - <string name="consult_huati">咨询话题</string> + <string name="consult_huati">热门资讯</string> <string name="order_detail">订单详情</string> </resources> diff --git a/app/src/main/res/xml/filepaths.xml b/app/src/main/res/xml/filepaths.xml new file mode 100644 index 0000000..d2aa924 --- /dev/null +++ b/app/src/main/res/xml/filepaths.xml @@ -0,0 +1,4 @@ +<?xml version="1.0" encoding="utf-8"?> +<path> + <external-path path="download/" name="files_path"/> +</path> \ No newline at end of file diff --git a/mvpsdk/src/main/java/com/share/mvpsdk/view/MyVieoView.java b/mvpsdk/src/main/java/com/share/mvpsdk/view/MyVieoView.java new file mode 100644 index 0000000..90bf6b2 --- /dev/null +++ b/mvpsdk/src/main/java/com/share/mvpsdk/view/MyVieoView.java @@ -0,0 +1,115 @@ +package com.share.mvpsdk.view; + +import android.content.Context; +import android.media.MediaMetadataRetriever; +import android.media.MediaPlayer; +import android.net.Uri; +import android.text.TextUtils; +import android.util.AttributeSet; +import android.util.Log; +import android.widget.MediaController; +import android.widget.VideoView; + +/** + * Created by ToaHanDong on 2018/4/10. + */ + +public class MyVieoView extends VideoView { + + private Context mContext = null; + + //最终的视频资源宽度 + private int mVideoWidth = 480; + + //最终视频资源高度 + private int mVideoHeight = 480; + + //视频资源原始宽度 + private int videoRealW = 1; + + //视频资源原始高度 + private int videoRealH = 1; + + private String url = "http://clips.vorwaerts-gmbh.de/big_buck_bunny.mp4"; + + public MyVieoView(Context context) { + super(context); + mContext = context; + } + + public MyVieoView(Context context, AttributeSet attrs) { + super(context, attrs); + mContext = context; + } + + public MyVieoView(Context context, AttributeSet attrs, int defStyleAttr) { + super(context, attrs, defStyleAttr); + mContext = context; + } + + public void setVideoPath(String urlPath) { + +// if (TextUtils.isEmpty(urlPath)) urlPath = url; + setVideoURI(Uri.parse(urlPath)); + //创建视频播放时的控制器,这个控制器可以自定义。此处是默认的实现 + setMediaController(null); + //请求焦点 + requestFocus(); + //设置播放监听 + setOnPreparedListener(new MediaPlayer.OnPreparedListener() { + @Override + public void onPrepared(MediaPlayer mediaPlayer) { + // optional need Vitamio 4.0 + //设置重放速度 +// mediaPlayer.setPlaybackSpeed(1.0f); + } + }); + //加载结束后开始播放,这行代码可以控制视频的播放。 + start(); + + } + + + @Override + protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { + int width = getDefaultSize(0, widthMeasureSpec); + int height = getDefaultSize(0, heightMeasureSpec); + if (height > width) { + //竖屏 + if (videoRealH > videoRealW) { + //如果视频资源是竖屏 + //占满屏幕 + mVideoHeight = height; + mVideoWidth = width; + } else { + //如果视频资源是横屏 + //宽度占满,高度保存比例 + mVideoWidth = width; + float r = videoRealH / (float) videoRealW; +// mVideoHeight = (int) (mVideoWidth * r); + mVideoHeight=height; + } + } else { + //横屏 + if (videoRealH > videoRealW) { + //如果视频资源是竖屏 + //宽度占满,高度保存比例 + mVideoHeight = height; + float r = videoRealW / (float) videoRealH; + mVideoWidth = (int) (mVideoHeight * r); + } else { + //如果视频资源是横屏 + //占满屏幕 + mVideoHeight = height; + mVideoWidth = width; + } + } + setMeasuredDimension(mVideoWidth, mVideoHeight); +// if (videoRealH == videoRealW && videoRealH == 1) { +// //没能获取到视频真实的宽高,自适应就可以了,什么也不用做 +// super.onMeasure(widthMeasureSpec, heightMeasureSpec); +// } else { +// setMeasuredDimension(mVideoWidth, mVideoHeight); +// } + } +} -- libgit2 0.21.0