Coder Social home page Coder Social logo

tucao's Introduction

Tucao

Travis GitHub release license

特色

  • 首页六大模块,推荐、新番、影剧、游戏、动画、频道
  • 全站排行榜,支持每日/每周排序
  • 放映时间表,可以查看周一到周日新番的更新情况
  • 频道列表,支持按照发布时间/播放量/弹幕排序
  • 视频搜索,支持分频道搜索
  • 视频查看,使用IjkPlayer播放视频,DanmakuFlameMaster播放弹幕,自动拼接多段视频(使用concat协议)
  • 视频离线缓存,支持缓存弹幕
  • 增量更新(Google File By File Patch

截图

待做列表

  • 同步收藏(接口不全)
  • 发私信(接口不全)
  • 查看私信(接口不全)
  • 准备播放时会弹回主界面(无法重现)
  • 修复播放时跳回开头的问题(无法100%重现,原因不明)

常见问题

更新历史

开发指南

Android Studio 版本: 3.0

由于项目中使用了子模块,请务必使用以下命令克隆项目

git clone --recursive -j8 https://github.com/blackbbc/Tucao.git

注意:由于Studio 3.0使用google()作为maven库,请自行扶墙!!!!!!!!

如果使用Windows进行开发,由于Data Binding在Windows上存在UTF8编码问题,不能编译通过,请参考如下两个Issue自行解决: #4 #7

  • 热烈庆祝Kotlin成为Android开发一级语言,撒花~~~
  • 设计编码均独立完成,如果你觉得太丑,欢迎砸设计稿
  • 架构基于MVVM模式,使用DataBinding + RxJava2 + Dagger2 + Retrofit实现

免责声明

该项目仅供交流学习使用,如果该项目有侵犯Tucao版权问题,本人会及时删除此页面与整个项目。

感谢以下开源项目

tucao's People

Contributors

blackbbc avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tucao's Issues

问一下1.1.3下载视频需要什么系统模块。

我下载从1.1.2开始就出现一点下载APP就停止响应问题,权限什么的都给了。

系统是安卓6.0.1。

不清楚是什么导致的,是不是某些系统模块缺失的问题。

其它APP比如A站和B站的都下载视频正常。

缺少DaggerBaseComponent报错

Error:(1, 1) Some error(s) occurred while processing annotations. Please see the error messages above.
进去发现compenent包下缺少标题中的类

代码跑不起来 不知道什么原因,希望能解惑

报错信息:

Error:Failed to complete Gradle execution.

Cause:
String index out of range: -1

gradle 控制台错误信息:

e: 错误: Exception while handling step android.databinding.annotationprocessor.ProcessExpressions@1e87f01c javax.xml.bind.UnmarshalException
e: 

e:    - with linked exception:
e:   [com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 字节的 UTF-8 序列的字节 3 无效。]

MalformedByteSequenceException: 3 字节的 UTF-8 序列的字节 3 无效。

e: java.lang.IllegalStateException: failed to analyze: android.databinding.tool.util.LoggedErrorException: failure, see logs for details.
Exception while handling step android.databinding.annotationprocessor.ProcessExpressions@214213fe javax.xml.bind.UnmarshalException

  • with linked exception:
    [com.sun.org.apache.xerces.internal.impl.io.MalformedByteSequenceException: 3 字节的 UTF-8 序列的字节 3 无效。]

有遇到这个问题吗?编译报错org.jetbrains.kotlin.kapt3.diagnostic.KaptError: Error while annotation processing

:D:\wordplace\other\tucao\Tucao\app\build\tmp\kapt3\stubs\debug\me\sweetll\tucao\di\component\ApiComponent.java:5: 错误: 不兼容的类型: NonExistentClass无法转换为Annotation
e:

e: @error.NonExistentClass()
e: ^
e: java.lang.IllegalStateException: failed to analyze: org.jetbrains.kotlin.kapt3.diagnostic.KaptError: Error while annotation processing
at org.jetbrains.kotlin.analyzer.AnalysisResult.throwIfError(AnalysisResult.kt:57)
at org.jetbrains.kotlin.cli.jvm.compiler.KotlinToJVMBytecodeCompiler.compileModules(KotlinToJVMBytecodeCompiler.kt:144)

库不兼容,资源还找不到

不得不说这个项目是好的,但是下载下来,各种报错,fragment库不兼容,好不容易调 好了,布局文件资源引用不到。还是看看代码吧,不运行了,真心醉

rxlifecycle依赖问题

我把依赖改成最新版的2.1.0之后无法依赖成功。
提示failed to resolve: android.arch.lifecycle:runtime:1.0.0-alpha1
但是使用你这个项目里面的2.0.1是可以依赖成功的。。。
是因为需要翻墙吗,但是我开蓝灯竟然也不行。。
这个问题我不会用英语描述,所以就没跑到rxlifecycle上面提issue了。。。
dalao看看你会不会也出这个问题

留言板拉到有图时闪退

#######RuntimeEnvironmentInformation#######
crash time=2018-03-15 13:40:44.817
model=ZUK Z2121
android version=8.0.0(26)
brand=ZUK
manufacturer=ZUK
board=QC_Reference_Phone
hardware=qcom
device=z2_row
version name=1.1.5
supported_abis=arm64-v8a & armeabi-v7a & armeabi
#######ForceCloseCrashLog#######
FATAL EXCEPTION: main
Process: me.sweetll.tucao, PID: 26214
java.lang.IllegalArgumentException: width and height must be > 0
at android.graphics.Bitmap.createBitmap(Bitmap.java:1001)
at android.graphics.Bitmap.createBitmap(Bitmap.java:968)
at android.graphics.Bitmap.createBitmap(Bitmap.java:918)
at android.graphics.Bitmap.createBitmap(Bitmap.java:839)
at me.sweetll.tucao.widget.d$a.a(GlideImageGetter.kt:46)
at me.sweetll.tucao.widget.d$a.a(GlideImageGetter.kt:35)
at com.bumptech.glide.f.f.a(SingleRequest.java:542)
at com.bumptech.glide.f.f.a(SingleRequest.java:516)
at com.bumptech.glide.c.b.j.b(EngineJob.java:184)
at com.bumptech.glide.c.b.j$b.handleMessage(EngineJob.java:288)
at android.os.Handler.dispatchMessage(Handler.java:101)
at android.os.Looper.loop(Looper.java:164)
at android.app.ActivityThread.main(ActivityThread.java:6654)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:770)

pull到1.5.1了后,运行报错,卸载原来的在运行还是报错。。。

没看出来哪里越界了。。。

11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at me.sweetll.tucao.business.home.MainActivity.initView(MainActivity.kt:221)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at me.sweetll.tucao.base.BaseActivity.onCreate(BaseActivity.kt:24)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.Activity.performCreate(Activity.java:6357)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1108)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2436)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2543)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread.access$1000(ActivityThread.java:156)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1407)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.os.Handler.dispatchMessage(Handler.java:102)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.os.Looper.loop(Looper.java:157)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.ActivityThread.main(ActivityThread.java:5637)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at java.lang.reflect.Method.invoke!(Native method)
11-08 17:38:46.629 1597-1597/? A/art: art/runtime/runtime.cc:366]   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:746)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:636)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366] Pending exception java.lang.ArrayIndexOutOfBoundsException: length=490; index=1613
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void me.sweetll.tucao.business.home.MainActivity.checkUpdate(boolean) (MainActivity.kt:516)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void me.sweetll.tucao.business.home.MainActivity.initView(android.os.Bundle) (MainActivity.kt:221)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void me.sweetll.tucao.base.BaseActivity.onCreate(android.os.Bundle) (BaseActivity.kt:24)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.app.Activity.performCreate(android.os.Bundle) (Activity.java:6357)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.app.Instrumentation.callActivityOnCreate(android.app.Activity, android.os.Bundle) (Instrumentation.java:1108)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at android.app.Activity android.app.ActivityThread.performLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2436)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.app.ActivityThread.handleLaunchActivity(android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:2543)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.app.ActivityThread.access$1000(android.app.ActivityThread, android.app.ActivityThread$ActivityClientRecord, android.content.Intent) (ActivityThread.java:156)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.app.ActivityThread$H.handleMessage(android.os.Message) (ActivityThread.java:1407)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.os.Handler.dispatchMessage(android.os.Message) (Handler.java:102)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.os.Looper.loop() (Looper.java:157)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void android.app.ActivityThread.main(java.lang.String[]) (ActivityThread.java:5637)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at java.lang.Object java.lang.reflect.Method.invoke!(java.lang.Object, java.lang.Object[]) (Method.java:-2)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run() (ZygoteInit.java:746)
11-08 17:38:46.630 1597-1597/? A/art: art/runtime/runtime.cc:366]   at void com.android.internal.os.ZygoteInit.main(java.lang.String[]) (ZygoteInit.java:636)```

能否增加支持tv遥控操作

感谢作者,使用下来很舒服。不知能否加入支持tv遥控操作, 这样就能在大屏幕看隔壁没拿下的番了。

为什么提示找不到.so文件呢?

E/AndroidRuntime: FATAL EXCEPTION: main
Process: me.sweetll.tucao, PID: 7742
java.lang.UnsatisfiedLinkError:
dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/base.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_dependencies_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_0_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_1_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_2_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_3_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_4_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_5_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_6_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_7_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_8_apk.apk",
zip file "/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/split_lib_slice_9_apk.apk"],
nativeLibraryDirectories=[/data/app/me.sweetll.tucao-JRf82aI4PhqqEs_GqF24Ew==/lib/x86, /system/lib, /vendor/lib]]]
couldn't find "libijkffmpeg.so"

F:\androidProject\Tucao\ijkplayer-armv7a\src\main\libs\armeabi-v7a\libijkffmpeg.so
在文件中是有so文件的。

gsyVideoPlayer报错

Unable to resolve dependency for ':app@debug/compileClasspath': Could not resolve project :gsyVideoPlayer. Open File Show Details

Unable to resolve dependency for ':app@debugAndroidTest/compileClasspath': Could not resolve project :gsyVideoPlayer. Open File Show Details

Unable to resolve dependency for ':app@debugUnitTest/compileClasspath': Could not resolve project :gsyVideoPlayer. Open File Show Details

华为荣耀

安卓9.0,视频暂停截图后再次播放视频,系统媒体音量会被重置为0,要手动重新调整音量

1.1.6的问题

1,依旧不能下ONEDRIVE源。
2,对比1.1.5,1.1.6下如果上传的UP没上传好头像就不能进去那位UP的主页,例如能通过视频页面的UP主头像进永恒之光主页而不能进零元帅的主页。

我试着编译了项目,但是有好多库过时了。编译比较困难

在更换完库版后编译通过了,但是有两个问题。
1、离线存储路径设置出错了。系统不能遍历手机文件目录。(已经给权限了)
2、编译后播放节目,选择全屏后,屏幕左下角会出现初始化播放器加载弹幕等字,消除不掉。

建议,将tucao站的域名设定为外部参数。可以在设置里修改的参数。防止域名变更后app失效的问题。

最后你的app是我手机上保留最长的软件之一,和站很搭。只是c站域名变化频繁。app适应力有些跟不上了。

git clone --recursive -j8 https://github.com/blackbbc/Tucao.git出现问题

$ git clone --recursive -j8 https://github.com/blackbbc/Tucao.git
Cloning into 'Tucao'...
remote: Counting objects: 10047, done.
remote: Total 10047 (delta 0), reused 0 (delta 0), pack-reused 10047
Receiving objects: 100% (10047/10047), 33.04 MiB | 909.00 KiB/s, done.
Resolving deltas: 100% (5265/5265), done.
Checking connectivity... done.
Submodule 'GSYVideoPlayer' (https://github.com/blackbbc/GSYVideoPlayer.git) registered for path 'GSYVideoPlayer'
Cloning into 'E:/项目收集/kotlin/tc/Tucao/GSYVideoPlayer'...

bug

1.1.6安装完成打不开,闪退,求修复

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.