每次吃一点Androidの小知识

目录:
1、Service
2、AndroidManifest
3、Github搜索技巧
4、AndroidStudio主题设置

Android小仙

1. Service

Service lifeCycle

从上图可以看到,onStart()方法被onStartCommand()方法取代了。
那么问题来了,onStart()onStartCommand()的区别是什么呢?
onStart()是android2.0以下的版本使用的,而onStartCommand()则是android2.0以上的版本使用的。
两个可以同时使用不会有冲突,执行的时候先调用onStartCommand(),再调用onStart()

1.1. onStartCommand()方法

public @StartResult int onStartCommand(Intent intent, @StartArgFlags int flags, int startId) {
        onStart(intent, startId);
        return mStartCompatibility ? START_STICKY_COMPATIBILITY : START_STICKY;
    }

主要看四种返回值类型

  • START_STICKY:如果service进程被kill掉,保留service的状态为开始状态,但不保留递送的intent对象。随后系统会尝试重新创建service,由于服务状态为开始状态,所以创建服务后一定会调用onStartCommand(Intent,int,int)方法。如果在此期间没有任何启动命令被传递到service,那么参数Intent将为null。
  • START_NOT_STICKY:“非粘性的”。使用这个返回值时,如果在执行完onStartCommand后,服务被异常kill掉,系统不会自动重启该服务
  • START_REDELIVER_INTENT:重传Intent。使用这个返回值时,如果在执行完onStartCommand后,服务被异常kill掉,系统会自动重启该服务,并将Intent的值传入。
  • START_STICKY_COMPATIBILITY:START_STICKY的兼容版本,但不保证服务被kill后一定能重启。

1.2. Service永不被kill的方法

  • 将service优先级设置到最高,1000
  • onStartCommand return START_STICKY
  • 在Service的onDestroy中,发送广播重启自己
  • 设置android:persistent="true"
  • Service提升为前台进程级别
    就是在onStartCommand里面调用 startForeground()方法把Service提升为前台进程级别,然后再onDestroy里面要记得调用stopForeground ()方法。

关于进程保活的两三事——新手升级经验卡

1.3. 相对强大的进程保活方案

参考资料:
双进程守护,驻留,杀不死服务:MarsDaemon
其他:参考同类APP的做法,如:<a>闪铃</a>

1.4. 用户配置保活

  • 设置悬浮窗
  • 设置自启动
  • 设置常驻服务
  • 设置允许高耗电

2. AndroidManifest

2.1. Application节点说明

先上例子

    <application
        android:name=".MyApplication"
        android:allowBackup="true"
        android:allowClearUserData="false"
        android:excludeFromRecents="true"
        android:hardwareAccelerated="true"
        android:largeHeap="true"
        android:icon="@drawable/icon"
        android:label="@string/app_name"
        android:persistent="true"
        android:theme="@style/AppTheme" >
    </application>

简单的不说,来看看下面的

  • android:allowBackup="true"
    允许应用程序参与备份。如果将该属性设置为false,则即使备份整个系统,也不会执行这个应用程序的备份操作,而整个系统备份能导致所有应用程序数据通过ADB来保存。其默认值为true。
  • android:excludeFromRecents="true"
    使应用从最近使用应用列表中剔除
  • android:hardwareAccelerated="true"
    使用硬件加速功能。指示硬件加速渲染功能是否对应用程序中的所有Activity和View启用。其默认值是false。
  • android:persistent="true"
    将应用设置为永久性应用,开机自启。实质就是拥有persistent=true属性的app将不能被kill或kill后会自动重启。其默认值是false。
  • android:largeHeap="true"此属性指示应用程序是否使用一个比较大的堆创建。它的默认值是false。
  • android:supportsRtl=true:支持屏幕从右到左
    参考资料:Android清单文件详解(五)----<application>的属性详解

2.2. 创建桌面快捷方式适配不同机型

各个手机产商自定义的创建桌面快捷方式的权限
参考:Permissions used in Alipay 9.6.6

uses-permission: name='com.alipay.permission.ALIPAY_UPDATE_CREDENTIALS'
uses-permission: name='com.android.launcher.permission.INSTALL_SHORTCUT'
uses-permission: name='android.permission.BLUETOOTH'
uses-permission: name='android.permission.CHANGE_WIFI_STATE'
uses-permission: name='android.permission.CAMERA'
uses-permission: name='android.permission.ACCESS_NETWORK_STATE'
uses-permission: name='android.permission.MODIFY_AUDIO_SETTINGS'
uses-permission: name='com.yunos.permission.TYID_MGR_SERVICE'
uses-permission: name='android.permission.RECEIVE_SMS'
uses-permission: name='android.permission.AUTHENTICATE_ACCOUNTS'
uses-permission: name='com.alipay.permission.ALIPAY_USE_CREDENTIALS'
uses-permission: name='com.aliyun.permission.TYID_MGR_SERVICE'
uses-permission: name='android.permission.BATTERY_STATS'
uses-permission: name='android.permission.READ_PHONE_STATE'
uses-permission: name='android.permission.WRITE_EXTERNAL_STORAGE'
uses-permission: name='android.permission.NFC'
uses-permission: name='android.permission.RECORD_AUDIO'
uses-permission: name='android.permission.READ_SMS'
uses-permission: name='com.taobao.permission.UPDATE_CREDENTIALS'
uses-permission: name='com.yunos.permission.STORAGE_SERVICE'
uses-permission: name='com.sonyericsson.home.permission.BROADCAST_BADGE'
uses-permission: name='com.android.launcher.permission.UNINSTALL_SHORTCUT'
uses-permission: name='android.permission.READ_CONTACTS'
uses-permission: name='android.permission.USE_CREDENTIALS'
uses-permission: name='android.permission.VIBRATE'
uses-permission: name='com.yunos.permission.TYID_SERVICE'
uses-permission: name='android.permission.ACCESS_FINE_LOCATION'
uses-permission: name='android.permission.FLASHLIGHT'
uses-permission: name='com.taobao.permission.USE_CREDENTIALS'
uses-permission: name='android.permission.ACCESS_COARSE_LOCATION'
uses-permission: name='android.permission.MANAGE_ACCOUNTS'
uses-permission: name='android.permission.CALL_PHONE'
uses-permission: name='android.permission.READ_LOGS'
uses-permission: name='android.permission.GET_ACCOUNTS'
uses-permission: name='android.permission.GET_TASKS'
uses-permission: name='android.permission.ACCESS_WIFI_STATE'
uses-permission: name='com.android.launcher.permission.READ_SETTINGS'
uses-permission: name='com.htc.launcher.permission.READ_SETTINGS'
uses-permission: name='com.majeur.launcher.permission.UPDATE_BADGE'
uses-permission: name='com.aliyun.permission.TYID_SERVICE'
uses-permission: name='android.permission.WAKE_LOCK'
uses-permission: name='android.permission.BLUETOOTH_ADMIN'
uses-permission: name='android.permission.RECEIVE_BOOT_COMPLETED'
uses-permission: name='android.permission.INTERNET'
uses-permission: name='android.permission.SYSTEM_ALERT_WINDOW'
uses-permission: name='com.htc.launcher.permission.UPDATE_SHORTCUT'
uses-permission: name='android.permission.WRITE_SETTINGS'
uses-permission: name='com.anddoes.launcher.permission.UPDATE_COUNT'
uses-permission: name='android.permission.READ_PROFILE'
uses-permission: name='android.permission.BROADCAST_STICKY'
uses-permission: name='com.aliyun.permission.STORAGE_SERVICE'
uses-permission: name='nxp.permission.ACCESS_WALLET_SERVICE'
uses-permission: name='com.samsung.android.authservice.permission.READ_CONTENT_PROVIDER'
uses-permission: name='android.permission.USE_FINGERPRINT'
uses-permission: name='android.permission.MANAGE_FINGERPRINT'
permission: com.eg.android.AlipayGphone.permission.MIPUSH_RECEIVE
uses-permission: name='com.eg.android.AlipayGphone.permission.MIPUSH_RECEIVE'
uses-permission: name='com.miui.mihome2.permission.READ_SETTINGS'
uses-permission: name='com.miui.mihome2.permission.WRITE_SETTINGS'
uses-permission: name='com.aliyun.homeshell.permission.WRITE_SETTINGS'
uses-permission: name='com.aliyun.homeshell.permission.READ_SETTINGS'
uses-permission: name='com.lenovo.launcher.permission.READ_SETTINGS'
uses-permission: name='com.lenovo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.iLoong.permission.WRITE_SETTINGS'
uses-permission: name='com.iLoong.permission.READ_SETTINGS'
uses-permission: name='cn.nubia.launcher.permission.WRITE_SETTINGS'
uses-permission: name='cn.nubia.launcher.permission.READ_SETTINGS'
uses-permission: name='com.smartisanos.launcher.WRITE_DATABASE'
uses-permission: name='com.smartisanos.launcher.READ_DATABASE'
uses-permission: name='com.smartisanos.launcher.data.ExportDataProvider'
uses-permission: name='com.teslacoilsw.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.teslacoilsw.launcher.permission.READ_SETTINGS'
uses-permission: name='com.meizu.flyme.launcher.permission.READ_SETTINGS'
uses-permission: name='com.meizu.flyme.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.ztemt.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.ztemt.launcher.permission.READ_SETTINGS'
uses-permission: name='com.zte.lqsoft.launcher.permission.READ_SETTINGS'
uses-permission: name='com.zte.lqsoft.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.baoruan.launcher2.permission.WRITE_SETTINGS'
uses-permission: name='com.baoruan.launcher2.permission.READ_SETTINGS'
uses-permission: name='com.fineos.launcher.permission.READ_SETTINGS'
uses-permission: name='com.fineos.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.ibingo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.ibingo.launcher.permission.READ_SETTINGS'
uses-permission: name='com.zui.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.zui.launcher.permission.READ_SETTINGS'
uses-permission: name='com.qihoo360.screenlock.permission.READ_LOCAL_THEME'
uses-permission: name='com.qihoo360.screenlock.permission.WRITE_LOCAL_THEME'
uses-permission: name='com.zte.mifavor.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.zte.mifavor.launcher.permission.READ_SETTINGS'
uses-permission: name='com.lo.launcher.permission.READ_SETTINGS'
uses-permission: name='com.lo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.android.tpwlauncher2.permission.WRITE_SETTINGS'
uses-permission: name='com.android.tpwlauncher2.permission.READ_SETTINGS'
uses-permission: name='com.android.sprdlauncher1.permission.READ_SETTINGS'
uses-permission: name='com.android.sprdlauncher1.permission.WRITE_SETTINGS'
uses-permission: name='com.s.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.s.launcher.permission.READ_SETTINGS'
uses-permission: name='com.zte.mobile.ZteLauncher3D.permission.READ_SETTINGS'
uses-permission: name='com.zte.mobile.ZteLauncher3D.permission.WRITE_SETTINGS'
uses-permission: name='com.android.launcher23.permission.READ_SETTINGS'
uses-permission: name='com.android.launcher23.permission.WRITE_SETTINGS'
uses-permission: name='com.mgyun.permission.READ_SETTINGS'
uses-permission: name='com.mgyun.permission.WRITE_SETTINGS'
uses-permission: name='com.asus.launcher3.permission.READ_SETTINGS'
uses-permission: name='com.asus.launcher3.permission.WRITE_SETTINGS'
uses-permission: name='com.tsf.shell.permission.READ_SETTINGS'
uses-permission: name='com.tsf.shell.permission.WRITE_SETTINGS'
uses-permission: name='com.tul.aviate.permission.READ_SETTINGS'
uses-permission: name='com.tul.aviate.permission.WRITE_SETTINGS'
uses-permission: name='com.lenovo.launcherhdmarket.permission.READ_SETTINGS'
uses-permission: name='com.lenovo.launcherhdmarket.permission.WRITE_SETTINGS'
uses-permission: name='com.hola.launcher.permission.READ_SETTINGS'
uses-permission: name='com.hola.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.qihoo360.home.permission.WRITE_SETTINGS'
uses-permission: name='com.qihoo360.home.permission.READ_SETTINGS'
uses-permission: name='com.slim.slimlauncher.permission.READ_SETTINGS'
uses-permission: name='com.slim.slimlauncher.permission.WRITE_SETTINGS'
uses-permission: name='com.huaqin.launcherEx.permission.WRITE_SETTINGS'
uses-permission: name='com.huaqin.launcherEx.permission.READ_SETTINGS'
uses-permission: name='com.epic.launcher.tw.permission.WRITE_SETTINGS'
uses-permission: name='com.epic.launcher.tw.permission.READ_SETTINGS'
uses-permission: name='com.android.lewalauncher.permission.READ_SETTINGS'
uses-permission: name='com.android.lewalauncher.permission.WRITE_SETTINGS'
uses-permission: name='com.Dean.launcher.permission.READ_SETTINGS'
uses-permission: name='com.Dean.launcher.permission.WRITE_SETTINGS'
uses-permission: name='app.cobo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='app.cobo.launcher.permission.READ_SETTINGS'
uses-permission: name='com.alphalp.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.alphalp.launcher.permission.READ_SETTINGS'
uses-permission: name='com.lollipop.launcher.permission.READ_SETTINGS'
uses-permission: name='com.lollipop.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.l.launcher.permission.READ_SETTINGS'
uses-permission: name='com.l.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.dlto.atom.launcher.permission.READ_SETTINGS'
uses-permission: name='com.dlto.atom.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.android.sprdlauncher2.permission.WRITE_SETTINGS'
uses-permission: name='com.android.sprdlauncher2.permission.READ_SETTINGS'
uses-permission: name='com.konka.launcher2.permission.READ_SETTINGS'
uses-permission: name='com.konka.launcher2.permission.WRITE_SETTINGS'
uses-permission: name='com.mycheering.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.mycheering.launcher.permission.READ_SETTINGS'
uses-permission: name='com.microsoft.launcher.permission.READ_SETTINGS'
uses-permission: name='com.microsoft.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.nicelauncher.lolauncher.permission.READ_SETTINGS'
uses-permission: name='com.nicelauncher.lolauncher.permission.WRITE_SETTINGS'
uses-permission: name='com.jui.launcher3.permission.READ_SETTINGS'
uses-permission: name='com.jui.launcher3.permission.WRITE_SETTINGS'
uses-permission: name='com.android.launcher2.permission.READ_SETTINGS'
uses-permission: name='com.android.launcher2.permission.WRITE_SETTINGS'
uses-permission: name='com.qihoo360.launcher.permission.READ_SETTINGS'
uses-permission: name='com.qihoo360.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.lge.launcher.permission.READ_SETTINGS'
uses-permission: name='com.lge.launcher.permission.WRITE_SETTINGS'
uses-permission: name='net.qihoo.launcher.permission.READ_SETTINGS'
uses-permission: name='net.qihoo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='org.adw.launcher_donut.permission.READ_SETTINGS'
uses-permission: name='org.adw.launcher_donut.permission.WRITE_SETTINGS'
uses-permission: name='com.huawei.launcher3.permission.READ_SETTINGS'
uses-permission: name='com.huawei.launcher3.permission.WRITE_SETTINGS'
uses-permission: name='com.sec.android.app.twlauncher.settings.READ_SETTINGS'
uses-permission: name='com.sec.android.app.twlauncher.settings.WRITE_SETTINGS'
uses-permission: name='com.anddoes.launcher.permission.READ_SETTINGS'
uses-permission: name='com.anddoes.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.tencent.qqlauncher.permission.READ_SETTINGS'
uses-permission: name='com.tencent.qqlauncher.permission.WRITE_SETTINGS'
uses-permission: name='com.huawei.launcher2.permission.READ_SETTINGS'
uses-permission: name='com.huawei.launcher2.permission.WRITE_SETTINGS'
uses-permission: name='com.ebproductions.android.launcher.permission.READ_SETTINGS'
uses-permission: name='com.ebproductions.android.launcher.permission.WRITE_SETTINGS'
uses-permission: name='telecom.mdesk.permission.READ_SETTINGS'
uses-permission: name='telecom.mdesk.permission.WRITE_SETTINGS'
uses-permission: name='dianxin.permission.ACCESS_LAUNCHER_DATA'
uses-permission: name='com.modaco.android.launchergb.permission.READ_SETTINGS'
uses-permission: name='com.modaco.android.launchergb.permission.WRITE_SETTINGS'
uses-permission: name='com.sec.android.app.launcher.permission.READ_SETTINGS'
uses-permission: name='com.sec.android.app.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.bbk.launcher2.permission.READ_SETTINGS'
uses-permission: name='com.bbk.launcher2.permission.WRITE_SETTINGS'
uses-permission: name='com.android.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.htc.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.sec.android.app.twlauncher.WRITE_SETTINGS'
uses-permission: name='com.sec.android.app.twlauncher.READ_SETTINGS'
uses-permission: name='org.adw.launcher.permission.READ_SETTINGS'
uses-permission: name='org.adw.launcher.permission.WRITE_SETTINGS'
uses-permission: name='org.adwfreak.launcher.permission.READ_SETTINGS'
uses-permission: name='org.adwfreak.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.gau.go.launcherex.permission.READ_SETTINGS'
uses-permission: name='com.gau.go.launcherex.permission.WRITE_SETTINGS'
uses-permission: name='com.fede.launcher.permission.READ_SETTINGS'
uses-permission: name='com.fede.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.oppo.launcher.permission.READ_SETTINGS'
uses-permission: name='com.oppo.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.nd.android.launcher.permission.READ_SETTINGS'
uses-permission: name='com.nd.android.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.android.mylauncher.permission.READ_SETTINGS'
uses-permission: name='com.android.mylauncher.permission.WRITE_SETTINGS'
uses-permission: name='com.huawei.android.launcher.permission.READ_SETTINGS'
uses-permission: name='com.huawei.android.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.huawei.launcher.permission.READ_SETTINGS'
uses-permission: name='com.huawei.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.mx.launcher.permission.READ_SETTINGS'
uses-permission: name='com.mx.launcher.permission.WRITE_SETTINGS'
uses-permission: name='com.android.launcher3.permission.READ_SETTINGS'
uses-permission: name='com.android.launcher3.permission.WRITE_SETTINGS'
uses-permission: name='com.google.android.launcher.permission.READ_SETTINGS'
uses-permission: name='com.google.android.launcher.permission.WRITE_SETTINGS'
uses-permission: name='android.permission.MOUNT_UNMOUNT_FILESYSTEMS'
uses-permission: name='android.permission.READ_EXTERNAL_STORAGE'

3. Github搜索技巧

  • 搜索时星星数量越多越好
  • 对应作者的其他项目的反馈情况有参考价值
  • 看issues一栏里面已关闭和未关闭的问题
  • 翻开库直接看源码查质量

4.AndroidStudio主题设置和字体设置

4.1、设置主题色

Darcula主题是背景色为黑色的主题
Default默认的主题是背景色为白色的主题
设置方法:Android Studio -- Preferences -- Appearance&Behavior -- Appearance -- UI Options --Theme

4.2、字体大小设置

Android Studio -- Preferences -- Editor -- ColorScheme -- ColorSchemeFont -- size

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,547评论 6 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,399评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,428评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,599评论 1 274
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,612评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,577评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,941评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,603评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,852评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,605评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,693评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,375评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,955评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,936评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,172评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,970评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,414评论 2 342

推荐阅读更多精彩内容