Commit d2f4c819f2dc305b32d604c1d26c69b2d48c0880
1 parent
ff67cca7
before play movie play ads ,and some other bugs fix
Showing
9 changed files
with
191 additions
and
160 deletions
| ... | ... | @@ -55,7 +55,7 @@ android { |
| 55 | 55 | } |
| 56 | 56 | |
| 57 | 57 | defaultConfig { |
| 58 | - applicationId "com.qnbar.fangtang.cinema" | |
| 58 | +// applicationId "com.qnbar.fangtang.cinema" | |
| 59 | 59 | minSdkVersion ANDROID_MIN_SDK_VERSION as int |
| 60 | 60 | targetSdkVersion ANDROID_TARGET_SDK_VERSION as int |
| 61 | 61 | versionCode APP_VERSION_CODE |
| ... | ... | @@ -93,7 +93,7 @@ android { |
| 93 | 93 | // manifestPlaceholders = [label: "青柠影咖", icon: "@drawable/ic_luancher", channel: "QNJM"] |
| 94 | 94 | buildConfigField 'String', 'MACHINE_TYPE', "\"gimi\"" |
| 95 | 95 | buildConfigField 'boolean', 'USE_GLIDE', "false" |
| 96 | - manifestPlaceholders = [label: "在线影院", icon: "@drawable/ic_launcher", channel: "JSZC"] | |
| 96 | + manifestPlaceholders = [label: "方糖", icon: "@drawable/ic_launcher", channel: "JSZC"] | |
| 97 | 97 | minifyEnabled false |
| 98 | 98 | signingConfig signingConfigs.myConfig |
| 99 | 99 | proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt' | ... | ... |
| ... | ... | @@ -438,6 +438,22 @@ public class NewDBManager { |
| 438 | 438 | * |
| 439 | 439 | * @return persons |
| 440 | 440 | */ |
| 441 | + public List<LocalMovieMessage> queryRandomMovies() { | |
| 442 | +// String sql = "SELECT * FROM movie_message order by cast(movie_dl_time as int) desc limit " + 1;/* + " path like '%" + key + "%'";*/ | |
| 443 | +// ArrayList<LocalMovieMessage> persons = new ArrayList<LocalMovieMessage>(); | |
| 444 | +// StringBuffer sb = new StringBuffer(sql); | |
| 445 | +// | |
| 446 | +// Cursor c = db.rawQuery(sb.toString(), null); | |
| 447 | +// readCursor2List(persons, c); | |
| 448 | +// c.close(); | |
| 449 | + return queryTJLimit(1); | |
| 450 | + } | |
| 451 | + | |
| 452 | + /** | |
| 453 | + * query all recommend qn | |
| 454 | + * | |
| 455 | + * @return persons | |
| 456 | + */ | |
| 441 | 457 | public List<LocalMovieMessage> queryAllDemandMovies() { |
| 442 | 458 | String sql = "SELECT * FROM movie_message order by cast(" + NewDBHelper.MOVIE_COUNT + " as int) desc, cast(movie_dl_time as int) desc limit " + PXB_MOVIE_COUNT;/* + " path like '%" + key + "%'";*/ |
| 443 | 459 | ArrayList<LocalMovieMessage> persons = new ArrayList<LocalMovieMessage>(); |
| ... | ... | @@ -623,7 +639,7 @@ public class NewDBManager { |
| 623 | 639 | db.beginTransaction(); |
| 624 | 640 | ContentValues cv = constructCv(lmm); |
| 625 | 641 | // db.update(NewDBHelper.TABLE_NAME, cv, "id = ? ", new String[]{String.valueOf(lmm.getId())}); |
| 626 | - db.updateWithOnConflict(NewDBHelper.TABLE_NAME, cv, "id = ? ", new String[]{String.valueOf(lmm.getId())},SQLiteDatabase.CONFLICT_REPLACE); | |
| 642 | + db.updateWithOnConflict(NewDBHelper.TABLE_NAME, cv, "id = ? ", new String[]{String.valueOf(lmm.getId())}, SQLiteDatabase.CONFLICT_REPLACE); | |
| 627 | 643 | db.setTransactionSuccessful(); // changes get rolled back if this not called |
| 628 | 644 | result = true; |
| 629 | 645 | db.endTransaction(); // commit or rollback | ... | ... |
| ... | ... | @@ -7,6 +7,7 @@ import android.net.Uri; |
| 7 | 7 | import android.text.TextUtils; |
| 8 | 8 | import com.gimi.common.cinema.model.Constant; |
| 9 | 9 | import com.xgimi.gimicinema.BuildConfig; |
| 10 | +import com.xgimi.gimicinema.activity.AdsPreVideoPlayerActivity; | |
| 10 | 11 | |
| 11 | 12 | import java.util.ArrayList; |
| 12 | 13 | import java.util.List; |
| ... | ... | @@ -24,6 +25,15 @@ public class OpenMMUtils { |
| 24 | 25 | // context.startActivity(intent); |
| 25 | 26 | } |
| 26 | 27 | |
| 28 | + | |
| 29 | + public static void openMMWithAds(Context context, String videoPath, String subtitlePath) { | |
| 30 | + //Splash Video Ads? find Ads,no ads play movie;ads exists play | |
| 31 | +// openMM(context, videoPath, null, subtitlePath); | |
| 32 | + Intent intent = new Intent(context, AdsPreVideoPlayerActivity.class); | |
| 33 | + intent.putExtra(AdsPreVideoPlayerActivity.MOVIE_PLAY_PATH, videoPath); | |
| 34 | + context.startActivity(intent); | |
| 35 | + } | |
| 36 | + | |
| 27 | 37 | public static void openMM(Context context, String videoPath, ArrayList<String> list, String subtitlePath) { |
| 28 | 38 | //Splash Video Ads? find Ads,no ads play movie;ads exists play |
| 29 | 39 | openPlayer(context, videoPath, list, 0); | ... | ... |
| ... | ... | @@ -24,7 +24,8 @@ import android.view.View.OnClickListener; |
| 24 | 24 | import android.view.Window; |
| 25 | 25 | import android.widget.Button; |
| 26 | 26 | import android.widget.SeekBar; |
| 27 | - | |
| 27 | +import android.widget.TextView; | |
| 28 | +import com.gimi.common.cinema.utils.Utils; | |
| 28 | 29 | import com.qnbar.smc.model.Light; |
| 29 | 30 | import com.qnbar.smc.model.Lights; |
| 30 | 31 | import com.qnbar.smc.service.TelinkLightService; |
| ... | ... | @@ -37,6 +38,8 @@ public class DeviceSettingActivity extends Activity implements OnClickListener { |
| 37 | 38 | |
| 38 | 39 | private SeekBar brightnessBar; |
| 39 | 40 | private SeekBar temperatureBar; |
| 41 | + private TextView temperatureTv; | |
| 42 | + private TextView brightnessTv; | |
| 40 | 43 | private Button remove; |
| 41 | 44 | private View delete; |
| 42 | 45 | private SeekBar.OnSeekBarChangeListener barChangeListener = new SeekBar.OnSeekBarChangeListener() { |
| ... | ... | @@ -81,17 +84,18 @@ public class DeviceSettingActivity extends Activity implements OnClickListener { |
| 81 | 84 | if (view == brightnessBar) { |
| 82 | 85 | opcode = (byte) 0xD2; |
| 83 | 86 | params = new byte[]{(byte) progress}; |
| 84 | - | |
| 87 | + brightnessTv.setText("亮度:" + progress); | |
| 85 | 88 | TelinkLightService.Instance().sendCommandNoResponse(opcode, addr, params, immediate); |
| 86 | 89 | |
| 87 | 90 | } else if (view == temperatureBar) { |
| 91 | + temperatureTv.setText("色温:" + progress); | |
| 88 | 92 | |
| 89 | 93 | opcode = (byte) 0xE2; |
| 90 | 94 | params = new byte[]{0x05, (byte) progress}; |
| 91 | 95 | |
| 92 | 96 | TelinkLightService.Instance().sendCommandNoResponse(opcode, addr, params, immediate); |
| 93 | 97 | } |
| 94 | - } | |
| 98 | + } | |
| 95 | 99 | }; |
| 96 | 100 | private int meshAddress; |
| 97 | 101 | |
| ... | ... | @@ -113,13 +117,22 @@ public class DeviceSettingActivity extends Activity implements OnClickListener { |
| 113 | 117 | // txtTitle.setText(TextUtils.isEmpty(light.getLabel2()) ? "" : light.getLabel2()); |
| 114 | 118 | // } |
| 115 | 119 | |
| 120 | + this.temperatureTv = (TextView) findViewById(R.id.temperatureTv); | |
| 121 | + this.brightnessTv = (TextView) findViewById(R.id.brightnessTv); | |
| 122 | + | |
| 116 | 123 | this.brightnessBar = (SeekBar) findViewById(R.id.sb_brightness); |
| 117 | 124 | this.temperatureBar = (SeekBar) findViewById(R.id.sb_temperature); |
| 125 | + int brightness = Utils.getInt(this, "brightness", 50); | |
| 126 | + int temperature = Utils.getInt(this, "temperature", 50); | |
| 127 | + temperatureTv.setText("色温:" + temperature); | |
| 128 | + brightnessTv.setText("亮度:" + brightness); | |
| 129 | + | |
| 130 | + brightnessBar.setProgress(brightness); | |
| 131 | + temperatureBar.setProgress(temperature); | |
| 118 | 132 | |
| 119 | 133 | this.brightnessBar.setOnSeekBarChangeListener(barChangeListener); |
| 120 | 134 | this.temperatureBar.setOnSeekBarChangeListener(barChangeListener); |
| 121 | 135 | |
| 122 | - | |
| 123 | 136 | this.remove = (Button) findViewById(R.id.btn_remove); |
| 124 | 137 | this.remove.setOnClickListener(this); |
| 125 | 138 | |
| ... | ... | @@ -174,6 +187,13 @@ public class DeviceSettingActivity extends Activity implements OnClickListener { |
| 174 | 187 | |
| 175 | 188 | } |
| 176 | 189 | |
| 190 | + @Override | |
| 191 | + protected void onDestroy() { | |
| 192 | + super.onDestroy(); | |
| 193 | + Utils.saveInt(this,"brightness",brightnessBar.getProgress()); | |
| 194 | + Utils.saveInt(this,"temperature",temperatureBar.getProgress()); | |
| 195 | + } | |
| 196 | + | |
| 177 | 197 | public void changeBrightness(View view) { |
| 178 | 198 | brightnessUp(); |
| 179 | 199 | } | ... | ... |
| ... | ... | @@ -147,6 +147,6 @@ public class AdsPreVideoPlayerActivity extends BaseActivity { |
| 147 | 147 | } |
| 148 | 148 | |
| 149 | 149 | public String getAdsVideoUrl() { |
| 150 | - return "/mnt/samba/192.168.4.214/root/fl/ads.ts"; | |
| 150 | + return Utils.getSambaMsg(this).getLocalPath() + "ads.mp4"; | |
| 151 | 151 | } |
| 152 | 152 | } |
| \ No newline at end of file | ... | ... |
| ... | ... | @@ -47,6 +47,7 @@ import com.bluetoothle.BLEOpenRecord; |
| 47 | 47 | import com.bluetoothle.GREENBluetoothLeService; |
| 48 | 48 | import com.bluetoothle.greencity.GREENBLE; |
| 49 | 49 | import com.bluetoothle.greencity.GREENCITYBLEProtocolFactory; |
| 50 | +import com.gimi.common.cinema.db.NewDBManager; | |
| 50 | 51 | import com.gimi.common.cinema.model.ClassificationItem; |
| 51 | 52 | import com.gimi.common.cinema.model.Constant; |
| 52 | 53 | import com.gimi.common.cinema.model.FolderItem; |
| ... | ... | @@ -55,6 +56,7 @@ import com.gimi.common.cinema.model.MessageEvent; |
| 55 | 56 | import com.gimi.common.cinema.utils.AuthUtils; |
| 56 | 57 | import com.gimi.common.cinema.utils.LeeImageLoader; |
| 57 | 58 | import com.gimi.common.cinema.utils.M1905Utils; |
| 59 | +import com.gimi.common.cinema.utils.OpenMMUtils; | |
| 58 | 60 | import com.gimi.common.cinema.utils.ScreenUtils; |
| 59 | 61 | import com.gimi.common.cinema.utils.SystemUtils; |
| 60 | 62 | import com.qnbar.smc.model.Light; |
| ... | ... | @@ -882,5 +884,9 @@ public class MainActivity extends BaseActivity implements IMainView, EventListen |
| 882 | 884 | |
| 883 | 885 | }); |
| 884 | 886 | GREENBLE.send(this, "DC:F6:70:C1:AA:D6", openCMD.getBytes()); |
| 887 | + List<LocalMovieMessage> localMovieMessages = new NewDBManager(this).queryRandomMovies(); | |
| 888 | + if (localMovieMessages != null && localMovieMessages.size() > 0) { | |
| 889 | + OpenMMUtils.openMMWithAds(this, localMovieMessages.get(0).getPlayPath(), null); | |
| 890 | + } | |
| 885 | 891 | } |
| 886 | 892 | } | ... | ... |
| ... | ... | @@ -83,16 +83,16 @@ public class UpdateModelImpl implements IUpdateModel { |
| 83 | 83 | |
| 84 | 84 | @Override |
| 85 | 85 | public void updateAppVersion(Context context, boolean bool) { |
| 86 | - if (appUpdateUtils == null) { | |
| 87 | - appUpdateUtils = new AppUpdateUtils(context); | |
| 88 | - } | |
| 89 | - appUpdateUtils.setShowNoUpdate(bool); | |
| 90 | - ThreadUtils.subThread(new ThreadUtils.DoSomeThing() { | |
| 91 | - @Override | |
| 92 | - public void doSomeThing() { | |
| 93 | - appUpdateUtils.updateAppVersion(); | |
| 94 | - } | |
| 95 | - }); | |
| 86 | +// if (appUpdateUtils == null) { | |
| 87 | +// appUpdateUtils = new AppUpdateUtils(context); | |
| 88 | +// } | |
| 89 | +// appUpdateUtils.setShowNoUpdate(bool); | |
| 90 | +// ThreadUtils.subThread(new ThreadUtils.DoSomeThing() { | |
| 91 | +// @Override | |
| 92 | +// public void doSomeThing() { | |
| 93 | +// appUpdateUtils.updateAppVersion(); | |
| 94 | +// } | |
| 95 | +// }); | |
| 96 | 96 | } |
| 97 | 97 | |
| 98 | 98 | @Override | ... | ... |
| ... | ... | @@ -17,22 +17,19 @@ |
| 17 | 17 | package com.xgimi.gimicinema.service; |
| 18 | 18 | |
| 19 | 19 | import android.app.Service; |
| 20 | -import android.content.ComponentName; | |
| 21 | 20 | import android.content.Context; |
| 22 | 21 | import android.content.Intent; |
| 23 | -import android.content.ServiceConnection; | |
| 24 | 22 | import android.os.Handler; |
| 25 | 23 | import android.os.IBinder; |
| 26 | 24 | import android.os.RemoteException; |
| 27 | 25 | import android.util.Log; |
| 28 | - | |
| 26 | +import com.gimi.common.cinema.utils.Utils; | |
| 29 | 27 | import com.qnbar.smc.model.Light; |
| 30 | 28 | import com.qnbar.smc.model.Lights; |
| 31 | 29 | import com.qnbar.smc.service.TelinkLightService; |
| 32 | 30 | import com.telink.bluetooth.light.ConnectionStatus; |
| 33 | 31 | import com.telink.bluetooth.light.DeviceInfo; |
| 34 | 32 | import com.xgimi.gimicinema.ICinemaControl; |
| 35 | -import com.xgimi.gimicinema.ICinemaSMC; | |
| 36 | 33 | import com.xgimi.gimicinema.application.FangTangApplication; |
| 37 | 34 | |
| 38 | 35 | import java.util.ArrayList; |
| ... | ... | @@ -79,7 +76,6 @@ public class CinemaControlService extends Service { |
| 79 | 76 | return currentState; |
| 80 | 77 | } |
| 81 | 78 | |
| 82 | - //TODO 当状态改变时上报服务器状态,开始播放时,启动轮询上报当前状态及时间 | |
| 83 | 79 | @Override |
| 84 | 80 | public void setCurrentStatus(int state) throws RemoteException { |
| 85 | 81 | Log.d("aidl", "setCurrentStatus: " + state); |
| ... | ... | @@ -95,15 +91,12 @@ public class CinemaControlService extends Service { |
| 95 | 91 | // } |
| 96 | 92 | switch (state) { |
| 97 | 93 | case 0://空闲 |
| 98 | -// open(); | |
| 99 | 94 | fadeIn(); |
| 100 | 95 | break; |
| 101 | 96 | case 1://播放 |
| 102 | 97 | fadeOut(); |
| 103 | -// close(); | |
| 104 | 98 | break; |
| 105 | 99 | case 2://暂停 |
| 106 | -// open(); | |
| 107 | 100 | fadeIn(); |
| 108 | 101 | break; |
| 109 | 102 | } |
| ... | ... | @@ -150,7 +143,7 @@ public class CinemaControlService extends Service { |
| 150 | 143 | @Override |
| 151 | 144 | public void run() { |
| 152 | 145 | setLightValue(value); |
| 153 | - if (value-- == 50) { | |
| 146 | + if (value-- == maxValue) { | |
| 154 | 147 | handler.postDelayed(this, 4 * 1000); |
| 155 | 148 | } else { |
| 156 | 149 | if (value == 0) { |
| ... | ... | @@ -161,7 +154,7 @@ public class CinemaControlService extends Service { |
| 161 | 154 | } |
| 162 | 155 | }, 3 * 1000); |
| 163 | 156 | } else { |
| 164 | - handler.postDelayed(this, 200); | |
| 157 | + handler.postDelayed(this, 80); | |
| 165 | 158 | } |
| 166 | 159 | } |
| 167 | 160 | } |
| ... | ... | @@ -170,12 +163,12 @@ public class CinemaControlService extends Service { |
| 170 | 163 | private Runnable openRunnable = new Runnable() { |
| 171 | 164 | @Override |
| 172 | 165 | public void run() { |
| 173 | - if (value++ == 0) { | |
| 166 | + if (value++ == 10) { | |
| 174 | 167 | open(); |
| 175 | - handler.postDelayed(this, 4 * 1000); | |
| 168 | + handler.postDelayed(this, 2 * 1000); | |
| 176 | 169 | } else { |
| 177 | 170 | setLightValue(value); |
| 178 | - if (value != 50) { | |
| 171 | + if (value != maxValue) { | |
| 179 | 172 | handler.postDelayed(this, 200); |
| 180 | 173 | } |
| 181 | 174 | } |
| ... | ... | @@ -183,13 +176,12 @@ public class CinemaControlService extends Service { |
| 183 | 176 | }; |
| 184 | 177 | |
| 185 | 178 | private FangTangApplication mApplication; |
| 179 | + private Context context; | |
| 186 | 180 | |
| 187 | 181 | @Override |
| 188 | 182 | public void onCreate() { |
| 189 | 183 | super.onCreate(); |
| 190 | - if (!mBound) { | |
| 191 | - attemptToBindService(); | |
| 192 | - } | |
| 184 | + context = this; | |
| 193 | 185 | mApplication = (FangTangApplication) getApplication(); |
| 194 | 186 | } |
| 195 | 187 | |
| ... | ... | @@ -198,36 +190,6 @@ public class CinemaControlService extends Service { |
| 198 | 190 | return cinemaControl; |
| 199 | 191 | } |
| 200 | 192 | |
| 201 | - //由AIDL文件生成的Java类 | |
| 202 | - private ICinemaSMC cinemaSMC = null; | |
| 203 | - | |
| 204 | - //标志当前与服务端连接状况的布尔值,false为未连接,true为连接中 | |
| 205 | - private boolean mBound = false; | |
| 206 | - | |
| 207 | - | |
| 208 | - private ServiceConnection mServiceConnection = new ServiceConnection() { | |
| 209 | - @Override | |
| 210 | - public void onServiceConnected(ComponentName name, IBinder service) { | |
| 211 | - cinemaSMC = ICinemaSMC.Stub.asInterface(service); | |
| 212 | - mBound = true; | |
| 213 | - } | |
| 214 | - | |
| 215 | - @Override | |
| 216 | - public void onServiceDisconnected(ComponentName name) { | |
| 217 | - mBound = false; | |
| 218 | - } | |
| 219 | - }; | |
| 220 | - | |
| 221 | - /** | |
| 222 | - * 尝试与服务端建立连接 | |
| 223 | - */ | |
| 224 | - private void attemptToBindService() { | |
| 225 | - Intent intent = new Intent(); | |
| 226 | - intent.setPackage("com.qnbar.smc"); | |
| 227 | - intent.setAction("com.xgimi.cinemasmc"); | |
| 228 | - bindService(intent, mServiceConnection, Context.BIND_AUTO_CREATE); | |
| 229 | - } | |
| 230 | - | |
| 231 | 193 | // private boolean isSMCRun(Context context) { |
| 232 | 194 | // return isServiceRunning(context, "com.qnbar.smc.service.SMCService"); |
| 233 | 195 | // } |
| ... | ... | @@ -259,7 +221,7 @@ public class CinemaControlService extends Service { |
| 259 | 221 | int address = 0xFFFF; |
| 260 | 222 | byte[] params = new byte[]{0x01, 0x00, 0x00}; |
| 261 | 223 | if (TelinkLightService.Instance().sendCommandNoResponse(opcode, address, params)) { |
| 262 | -// show("open all success"); | |
| 224 | + Log.d("aidl","open all success"); | |
| 263 | 225 | } |
| 264 | 226 | } |
| 265 | 227 | |
| ... | ... | @@ -268,10 +230,12 @@ public class CinemaControlService extends Service { |
| 268 | 230 | int address = 0xFFFF; |
| 269 | 231 | byte[] params = new byte[]{0x00, 0x00, 0x00}; |
| 270 | 232 | if (TelinkLightService.Instance().sendCommandNoResponse(opcode, address, params)) { |
| 271 | -// show("open all success"); | |
| 233 | + Log.d("aidl","open all success"); | |
| 272 | 234 | } |
| 273 | 235 | } |
| 274 | 236 | |
| 237 | + private int maxValue = 50; | |
| 238 | + | |
| 275 | 239 | private void fadeIn() { |
| 276 | 240 | DeviceInfo connectDevice = mApplication.getConnectDevice(); |
| 277 | 241 | if (connectDevice == null) { |
| ... | ... | @@ -280,11 +244,13 @@ public class CinemaControlService extends Service { |
| 280 | 244 | } |
| 281 | 245 | Light byMeshAddress = Lights.getInstance().getByMeshAddress(connectDevice.meshAddress); |
| 282 | 246 | if (byMeshAddress.status == ConnectionStatus.ON) { |
| 247 | + handler.removeCallbacks(closeRunnable); | |
| 283 | 248 | return; |
| 284 | 249 | } |
| 250 | + maxValue = Utils.getInt(context, "brightness", 50); | |
| 285 | 251 | // int status = mApplication.getConnectDevice().status; |
| 286 | 252 | // Log.d("status_charge", "fadeIn: " + status); |
| 287 | - value = 0; | |
| 253 | + value = 10; | |
| 288 | 254 | handler.post(openRunnable); |
| 289 | 255 | } |
| 290 | 256 | |
| ... | ... | @@ -296,11 +262,14 @@ public class CinemaControlService extends Service { |
| 296 | 262 | } |
| 297 | 263 | Light byMeshAddress = Lights.getInstance().getByMeshAddress(connectDevice.meshAddress); |
| 298 | 264 | if (byMeshAddress.status == ConnectionStatus.OFF) { |
| 265 | + handler.removeCallbacks(openRunnable); | |
| 299 | 266 | return; |
| 300 | 267 | } |
| 268 | + maxValue = Utils.getInt(context, "brightness", 50); | |
| 269 | + | |
| 301 | 270 | // int status = connectDevice.status; |
| 302 | 271 | // Log.d("status_charge", "fadeOut: " + status); |
| 303 | - value = 50; | |
| 272 | + value = maxValue; | |
| 304 | 273 | handler.post(closeRunnable); |
| 305 | 274 | } |
| 306 | 275 | |
| ... | ... | @@ -316,8 +285,8 @@ public class CinemaControlService extends Service { |
| 316 | 285 | TelinkLightService.Instance().sendCommandNoResponse(opcode, addr, params, true); |
| 317 | 286 | |
| 318 | 287 | |
| 319 | - opcode = (byte) 0xE2; | |
| 320 | - params = new byte[]{0x05, (byte) value}; | |
| 321 | - TelinkLightService.Instance().sendCommandNoResponse(opcode, addr, params, true); | |
| 288 | +// opcode = (byte) 0xE2; | |
| 289 | +// params = new byte[]{0x05, (byte) value}; | |
| 290 | +// TelinkLightService.Instance().sendCommandNoResponse(opcode, addr, params, true); | |
| 322 | 291 | } |
| 323 | 292 | } | ... | ... |
| ... | ... | @@ -15,138 +15,148 @@ |
| 15 | 15 | --> |
| 16 | 16 | |
| 17 | 17 | <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" |
| 18 | - android:layout_width="match_parent" | |
| 19 | - android:layout_height="match_parent" | |
| 20 | - android:orientation="vertical"> | |
| 18 | + android:layout_width="match_parent" | |
| 19 | + android:layout_height="match_parent" | |
| 20 | + android:orientation="vertical"> | |
| 21 | 21 | |
| 22 | 22 | <LinearLayout |
| 23 | - android:layout_width="match_parent" | |
| 24 | - android:layout_height="wrap_content" | |
| 25 | - android:orientation="vertical"> | |
| 26 | - | |
| 27 | - <!-- Brightness --> | |
| 28 | - | |
| 29 | - <LinearLayout | |
| 30 | 23 | android:layout_width="match_parent" |
| 31 | 24 | android:layout_height="wrap_content" |
| 32 | - android:layout_marginLeft="5dp" | |
| 33 | - android:layout_marginRight="5dp" | |
| 34 | 25 | android:orientation="vertical"> |
| 35 | 26 | |
| 36 | - <TextView | |
| 27 | + <!-- Brightness --> | |
| 28 | + | |
| 29 | + <LinearLayout | |
| 37 | 30 | android:layout_width="match_parent" |
| 38 | 31 | android:layout_height="wrap_content" |
| 39 | - android:padding="5dp" | |
| 40 | - android:text="亮度" /> | |
| 32 | + android:layout_marginLeft="5dp" | |
| 33 | + android:layout_marginRight="5dp" | |
| 34 | + android:orientation="vertical"> | |
| 35 | + | |
| 36 | + <TextView | |
| 37 | + android:layout_width="match_parent" | |
| 38 | + android:layout_height="wrap_content" | |
| 39 | + android:padding="5dp" | |
| 40 | + android:id="@+id/brightnessTv" | |
| 41 | + android:text="亮度"/> | |
| 41 | 42 | |
| 42 | 43 | <SeekBar |
| 43 | - android:id="@+id/sb_brightness" | |
| 44 | - android:layout_width="match_parent" | |
| 45 | - android:layout_height="wrap_content" | |
| 46 | - android:max="100" | |
| 47 | - android:padding="5dp" | |
| 48 | - android:progress="10" /> | |
| 44 | + android:id="@+id/sb_brightness" | |
| 45 | + android:layout_width="match_parent" | |
| 46 | + android:layout_height="wrap_content" | |
| 47 | + android:max="100" | |
| 48 | + android:padding="5dp" | |
| 49 | + android:progress="10"/> | |
| 49 | 50 | </LinearLayout> |
| 50 | 51 | |
| 51 | 52 | <View |
| 52 | - android:layout_width="match_parent" | |
| 53 | - android:layout_height="1dp" | |
| 54 | - android:layout_marginBottom="10dp" | |
| 55 | - android:layout_marginTop="10dp" | |
| 56 | - android:background="@color/gray" /> | |
| 53 | + android:layout_width="match_parent" | |
| 54 | + android:layout_height="1dp" | |
| 55 | + android:layout_marginBottom="10dp" | |
| 56 | + android:layout_marginTop="10dp" | |
| 57 | + android:background="@color/gray"/> | |
| 57 | 58 | |
| 58 | 59 | |
| 59 | 60 | <View |
| 60 | - android:layout_width="match_parent" | |
| 61 | - android:layout_height="1dp" | |
| 62 | - android:layout_marginBottom="10dp" | |
| 63 | - android:layout_marginTop="10dp" | |
| 64 | - android:background="@color/gray" /> | |
| 61 | + android:layout_width="match_parent" | |
| 62 | + android:layout_height="1dp" | |
| 63 | + android:layout_marginBottom="10dp" | |
| 64 | + android:layout_marginTop="10dp" | |
| 65 | + android:background="@color/gray"/> | |
| 65 | 66 | |
| 66 | 67 | <!-- Temperature --> |
| 67 | 68 | |
| 68 | 69 | <LinearLayout |
| 69 | - android:layout_width="match_parent" | |
| 70 | - android:layout_height="wrap_content" | |
| 71 | - android:layout_marginLeft="5dp" | |
| 72 | - android:layout_marginRight="5dp" | |
| 73 | - android:orientation="vertical"> | |
| 74 | - | |
| 75 | - <TextView | |
| 76 | 70 | android:layout_width="match_parent" |
| 77 | 71 | android:layout_height="wrap_content" |
| 78 | - android:padding="5dp" | |
| 79 | - android:text="色温" /> | |
| 72 | + android:layout_marginLeft="5dp" | |
| 73 | + android:layout_marginRight="5dp" | |
| 74 | + android:orientation="vertical"> | |
| 75 | + | |
| 76 | + <TextView | |
| 77 | + android:layout_width="match_parent" | |
| 78 | + android:layout_height="wrap_content" | |
| 79 | + android:padding="5dp" | |
| 80 | + android:id="@+id/temperatureTv" | |
| 81 | + android:text="色温"/> | |
| 80 | 82 | |
| 81 | 83 | <SeekBar |
| 82 | - android:id="@+id/sb_temperature" | |
| 83 | - android:layout_width="match_parent" | |
| 84 | - android:layout_height="wrap_content" | |
| 85 | - android:max="100" | |
| 86 | - android:padding="5dp" | |
| 87 | - android:progress="10" /> | |
| 84 | + android:id="@+id/sb_temperature" | |
| 85 | + android:layout_width="match_parent" | |
| 86 | + android:layout_height="wrap_content" | |
| 87 | + android:max="100" | |
| 88 | + android:padding="5dp" | |
| 89 | + android:progress="10"/> | |
| 88 | 90 | </LinearLayout> |
| 91 | + <TextView android:layout_width="match_parent" | |
| 92 | + android:padding="15dp" | |
| 93 | + android:textColor="@android:color/holo_red_dark" | |
| 94 | + android:layout_marginTop="30dp" | |
| 95 | + android:layout_height="wrap_content" | |
| 96 | + android:text="调节亮度进度条可设置开灯时的亮度,10以下表示关闭,调节色温进度条可设置恒定色温,设置后返回即可保存" | |
| 97 | + | |
| 98 | + /> | |
| 89 | 99 | |
| 90 | 100 | <View |
| 91 | - android:layout_width="match_parent" | |
| 92 | - android:layout_height="1dp" | |
| 93 | - android:layout_marginBottom="10dp" | |
| 94 | - android:layout_marginTop="10dp" | |
| 95 | - android:background="@color/gray" /> | |
| 101 | + android:layout_width="match_parent" | |
| 102 | + android:layout_height="1dp" | |
| 103 | + android:layout_marginBottom="10dp" | |
| 104 | + android:layout_marginTop="10dp" | |
| 105 | + android:background="@color/gray"/> | |
| 96 | 106 | |
| 97 | 107 | |
| 98 | 108 | <View |
| 99 | - android:layout_width="match_parent" | |
| 100 | - android:layout_height="1dp" | |
| 101 | - android:layout_marginBottom="10dp" | |
| 102 | - android:layout_marginTop="10dp" | |
| 103 | - android:background="@color/gray" /> | |
| 109 | + android:layout_width="match_parent" | |
| 110 | + android:layout_height="1dp" | |
| 111 | + android:layout_marginBottom="10dp" | |
| 112 | + android:layout_marginTop="10dp" | |
| 113 | + android:background="@color/gray"/> | |
| 104 | 114 | |
| 105 | 115 | |
| 106 | 116 | <View |
| 107 | - android:layout_width="match_parent" | |
| 108 | - android:layout_height="1dp" | |
| 109 | - android:layout_marginBottom="10dp" | |
| 110 | - android:layout_marginTop="10dp" | |
| 111 | - android:background="@color/gray" /> | |
| 117 | + android:layout_width="match_parent" | |
| 118 | + android:layout_height="1dp" | |
| 119 | + android:layout_marginBottom="10dp" | |
| 120 | + android:layout_marginTop="10dp" | |
| 121 | + android:background="@color/gray"/> | |
| 112 | 122 | |
| 113 | 123 | |
| 114 | 124 | <!-- Remove DeviceSchema --> |
| 115 | 125 | |
| 116 | 126 | <Button |
| 117 | - android:id="@+id/btn_remove" | |
| 118 | - android:layout_width="match_parent" | |
| 119 | - android:layout_height="46dp" | |
| 120 | - android:layout_margin="10dp" | |
| 121 | - android:background="@color/theme_positive_color" | |
| 122 | - android:text="Remove Device(Kick out)" | |
| 123 | - android:textColor="@android:color/white" /> | |
| 127 | + android:id="@+id/btn_remove" | |
| 128 | + android:layout_width="match_parent" | |
| 129 | + android:layout_height="46dp" | |
| 130 | + android:layout_margin="10dp" | |
| 131 | + android:background="@color/theme_positive_color" | |
| 132 | + android:text="Remove Device(Kick out)" | |
| 133 | + android:textColor="@android:color/white"/> | |
| 124 | 134 | |
| 125 | 135 | <Button |
| 126 | - android:id="@+id/btn_delete" | |
| 127 | - android:layout_width="match_parent" | |
| 128 | - android:layout_height="46dp" | |
| 129 | - android:layout_margin="10dp" | |
| 130 | - android:background="@color/theme_positive_color" | |
| 131 | - android:text="Remove Device(Pair Delete)" | |
| 132 | - android:textColor="@android:color/white" /> | |
| 136 | + android:id="@+id/btn_delete" | |
| 137 | + android:layout_width="match_parent" | |
| 138 | + android:layout_height="46dp" | |
| 139 | + android:layout_margin="10dp" | |
| 140 | + android:background="@color/theme_positive_color" | |
| 141 | + android:text="Remove Device(Pair Delete)" | |
| 142 | + android:textColor="@android:color/white"/> | |
| 133 | 143 | |
| 134 | 144 | <Button |
| 135 | - android:layout_width="match_parent" | |
| 136 | - android:layout_height="46dp" | |
| 137 | - android:layout_margin="10dp" | |
| 138 | - android:background="@color/theme_positive_color" | |
| 139 | - android:text="change brightness" | |
| 140 | - android:onClick="changeBrightness" | |
| 141 | - android:textColor="@android:color/white" /> | |
| 145 | + android:layout_width="match_parent" | |
| 146 | + android:layout_height="46dp" | |
| 147 | + android:layout_margin="10dp" | |
| 148 | + android:background="@color/theme_positive_color" | |
| 149 | + android:text="change brightness" | |
| 150 | + android:onClick="changeBrightness" | |
| 151 | + android:textColor="@android:color/white"/> | |
| 142 | 152 | <Button |
| 143 | - android:layout_width="match_parent" | |
| 144 | - android:layout_height="46dp" | |
| 145 | - android:layout_margin="10dp" | |
| 146 | - android:background="@color/theme_positive_color" | |
| 147 | - android:text="change color temperature" | |
| 148 | - android:onClick="changeTemperature" | |
| 149 | - android:textColor="@android:color/white" /> | |
| 153 | + android:layout_width="match_parent" | |
| 154 | + android:layout_height="46dp" | |
| 155 | + android:layout_margin="10dp" | |
| 156 | + android:background="@color/theme_positive_color" | |
| 157 | + android:text="change color temperature" | |
| 158 | + android:onClick="changeTemperature" | |
| 159 | + android:textColor="@android:color/white"/> | |
| 150 | 160 | </LinearLayout> |
| 151 | 161 | |
| 152 | 162 | </LinearLayout> |
| \ No newline at end of file | ... | ... |
Please
register
or
login
to post a comment