Giter VIP home page Giter VIP logo

autumnbox's Introduction




免费,简单,易用的图形化ADB工具箱。

贡献者


简介

秋之盒是一个对谷歌安卓调试桥(Android Debug Bridge)命令行工具进行图形化封装的微软视窗操作系统应用。
“方便小白,帮助老鸟”

  • 技术关键词: C# / .NET 5 / WPF / ADB
  • 支持的操作系统: Windows 7 - Windows 10
  • 运行环境/框架技术: .Net 5 (发布时已自带运行时)

能做什么?

  • 为您的设备刷入第三方Recovery
  • 向设备推送文件
  • 一键激活黑域服务
  • 一键激活冰箱
  • 解锁System,获取完整root控制权
  • 以拓展模块为中心的功能开发**,将来将会支持越来越多的功能

进行AutumnBox拓展模块开发

如果您也是一位开发者,欢迎下载SDK开始开发秋之盒拓展模块。
AutumnBox开发文档

为什么要开发秋之盒模块,而不是写bat/sh/ps1脚本?

  • 无需关心用户设备连接情况
  • 快速达成优雅的图形化交互
  • 你可以根据需要构建自己的”秋之盒发行版“,并向特定用户群发布

对秋之盒主体进行贡献

1.克隆到本地

git clone https://github.com/zsh2401/AutumnBox.git

2.初始化ADB环境

在DEBUG秋之盒的过程中使用的ADB环境来自于外部仓库。在开始你的开发前,需要手动配置环境。 请在仓库根目录,使用powershell执行代码:

./scripts/get_adb.ps1

3.打开项目

使用Visual Studio 2019打开src/AutumnBox.sln即可。

4.编译与运行

将启动项目设置为AutumnBox.GUI,然后按下F5即可以调试模式启动AutumnBox
标准拓展模块会被./src/AutumBox.GUI/build_ext.ps1构建并放置到合适的文件夹,如果修改了模块代码,请重新生成整个项目。

5.贡献

5.1 分支结构

目前秋之盒有以下主要分支:

  • master,稳定可编译的代码,可供新入开发者进行最基础的调试,源码阅读。
  • dev,最新的,正在开发的代码,通常领先于master,并会定期合并到master
  • X.X.X-LTS,特定LTS的维护分支,不再添加新的特性,只是进行问题修复与安全更新。

被以二进制形式大规模分发的稳定版本通常来自于master分支。而canary版本则是来自于dev分支。

5.2 提交代码

请在dev分支的基础上进行开发,Pull Request也请提交到dev分支。

autumnbox's People

Contributors

cryolitia avatar dependabot[bot] avatar monologuechi avatar tragiclifehu avatar zsh2401 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  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

autumnbox's Issues

关于设置失败的一些小毛病

1支付宝占用导致设置设备管理员失败
2失败时没有输出失败原因
3对某些设备,重启等功能正常,adb手动激活设备管理员成功,但是自动激活时提示检测不到应用,强行进行输出结果“可能失败”,实际激活失败---测试机型lg v35(美版)测试app 太极阴阳之门、第二空间。
顺便截屏功能也裂开了
4第二空间的计算器版咋没了

【建议】新增AB槽位切换功能

AB无缝更新机制如今已成为主流。
判定槽位可通过以下命令实现:

fastboot getvar current-slot

如果需要输出到文本文档以便读取,则需要

fastboot getvar current-slot 2>path\to\current-slot.txt

如果返回结果为:
current-slot: a 或 current-slot: b
则可以启用此功能,执行命令为:

fastboot --set-active=b

fastboot --set-active=a

但如果返回结果为空:
current-slot:

则此为传统的单分区机型,可以不启用此功能。
批处理的实现方式仅供参考:

fastboot getvar current-slot 2>%temp%\cslot.txt
set /p cslot=<%temp%\cslot.txt
del %temp%\cslot.txt
if "%cslot%"=="current-slot: " (
echo Unsupported.
goto EOF
)
if "%cslot%"=="current-slot: a" (
fastboot --set-active=b
if not %errorlevel%==0 goto failed
) else (
fastboot --set-active=a
if not %errorlevel%==0 goto failed
)
goto EOF
:failed
echo ERROR: Slot switch failed. Please check if you have unlocked bootloader.
:EOF

解锁系统分区功能不可用

手机已经root并且解锁BL。re文件管理器可以正常更改读写挂载system分区,但是任何写操作仍然失败。使用NFC emulator等工具检查环境也显示system分区可写。

尝试秋盒解锁系统分区功能长时间没有反应(半小时+)。后安装超级adbd再次尝试该功能,马上显示失败并输出“error:closed”信息。跪求大大失败原因~~

刷入REC功能不可用

有些手机刷REC需要使用fastboot flash recovery_ramdisk指令,但是秋之盒却没有区分,导致部分手机无法使用该功能

官网SSL证书链异常

如图,FireFox Mainline版本访问时,会提示中间证书丢失而不受信任。
QQ截图20240112165415
QQ截图20240112165425

原因是服务器并没有发送中间证书(如图三,SSL Labs的测试结果所示)。

QQ截图20240112165652

解决方法:将中间证书补全到服务器上的SSL证书即可(MySSL提供证书链修复工具)。
https://myssl.com/chain_download.html

QQ截图20240112165730

红米K20 Pro更新MIUI12.5.4后秋之盒激活黑阈失败

正在初始化
checking for server..started, pid: 19537
checking for stable..quited

[command] pm path me.piebridge.brevent
package:/data/app/me.piebridge.brevent-_FbosDILt67x-soJeufMkw==/base.apk
please report bug to https://github.com/brevent/Brevent/issues/new with logs below

Click to show logs
--- crash start ---
[command] logcat -b crash -t '06-14 18:13:51.000' -d
--------- beginning of crash
06-14 18:13:52.244 19537 19537 E AndroidRuntime: FATAL EXCEPTION: main
06-14 18:13:52.244 19537 19537 E AndroidRuntime: PID: 19537
06-14 18:13:52.244 19537 19537 E AndroidRuntime: java.lang.reflect.InvocationTargetException
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at java.lang.reflect.Method.invoke(Native Method)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.碌螚巍.do(:21)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.BreventServer.main(:2)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:463)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: Caused by: java.lang.NoSuchMethodError: No interface method isAppInactive(Ljava/lang/String;I)Z in class Landroid/app/usage/IUsageStatsManager; or its super classes (declaration of 'android.app.usage.IUsageStatsManager' appears in /system/framework/framework.jar)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.碌螚渭.do(:20)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.AUX.do(:123)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.AUX.do(:118)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.AUX.do(:172)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.AUX.碌渭(:111)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.AUX.do(:672)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.碌螚巍.do(:5)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	at me.piebridge.brevent.server.BreventServer.main(:1)
06-14 18:13:52.244 19537 19537 E AndroidRuntime: 	... 5 more
06-14 18:13:52.245 19537 19537 E AndroidRuntime: Error reporting crash
06-14 18:13:52.245 19537 19537 E AndroidRuntime: java.lang.RuntimeException: Bad file descriptor
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at android.os.BinderProxy.transactNative(Native Method)
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at android.os.BinderProxy.transact(BinderProxy.java:593)
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at android.app.IActivityManager$Stub$Proxy.handleApplicationCrash(IActivityManager.java:5413)
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at com.android.internal.os.RuntimeInit$KillApplicationHandler.uncaughtException(RuntimeInit.java:222)
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1073)
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
06-14 18:13:52.245 19537 19537 E AndroidRuntime: 	at java.lang.Thread.dispatchUncaughtException(Thread.java:2203)
--- crash end ---
--- brevent start ---
[command] logcat -b main -t '06-14 18:13:51.000' -d -s BreventLoader BreventServer
--------- beginning of main
06-14 18:13:51.481 19527 19527 I BreventLoader: sdk: 30
06-14 18:13:51.498 19532 19532 I BreventLoader: pm path me.piebridge.brevent
06-14 18:13:51.512 19532 19532 I BreventLoader: line: package:/data/app/me.piebridge.brevent-_FbosDILt67x-soJeufMkw==/base.apk
06-14 18:13:51.513 19532 19532 I BreventLoader: loader path: /data/app/me.piebridge.brevent-_FbosDILt67x-soJeufMkw==/base.apk
06-14 18:13:51.514 19537 19537 I BreventLoader: start: 1623665631
06-14 18:13:51.659 19537 19537 I BreventServer: args: [10, me.piebridge.brevent, 1623665631]
06-14 18:13:51.704 19537 19537 I BreventServer: server log name: server.20210614.1813.19537.txt
06-14 18:13:51.705 19537 19537 I BreventServer: starting Brevent Server 3.7.2
06-14 18:13:51.725 19537 19537 I BreventServer: brevent version: 3.7.2
06-14 18:13:51.729 19537 19537 I BreventServer: add sigcont handler
06-14 18:13:51.732 19537 19537 I BreventServer: sdk: 30, genuine: 0
06-14 18:13:51.733 19537 19537 I BreventServer: brevent user: 0, uid: 2000
06-14 18:13:51.898 19537 19537 I BreventServer: core apps: [com.google.android.ext.services, com.android.providers.telephony, com.google.android.ext.shared, com.miui.packageinstaller, com.android.mms.service, vendor.qti.hardware.cacert.server, com.qualcomm.qti.telephonyservice, com.miui.systemAdSolution, android.qvaoverlay.common, com.android.settings.overlay.miui, android.overlay.common, com.wapi.wapicertmanage, android, android.miui.overlay, com.android.ons, org.codeaurora.ims, com.qualcomm.qti.dynamicddsservice, com.qualcomm.qcrilmsgtunnel, com.android.providers.settings, com.android.wifi.resources.overlay.common, com.android.incallui, com.android.inputdevices, com.android.systemui.overlay.miui, com.miui.face.overlay.miui, com.android.server.telecom, com.android.server.telecom.overlay.miui, com.android.wifi.resources, com.android.phone.overlay.common, com.qualcomm.qti.qtisystemservice, android.aosp.overlay, com.android.systemui.overlay.common, com.android.server.telecom.overlay.common, com.qualcomm.qti.devicestatisticsservice, com.android.proxyhandler, com.xiaomi.misettings, com.google.android.documentsui, com.miui.securityinputmethod, com.android.settings, com.qualcomm.qti.cne, com.android.phone, com.android.shell, com.qualcomm.qti.seccamservice, com.android.location.fused, com.android.systemui, com.qualcomm.qti.poweroffalarm, com.android.permissioncontroller]
06-14 18:13:51.898 19537 19537 I BreventServer: important core apps: {com.android.providers.telephony, com.android.mms.service, com.android.settings.overlay.miui, android, com.android.ons, com.android.providers.settings, com.android.wifi.resources.overlay.common, com.android.incallui, com.android.inputdevices, com.android.systemui.overlay.miui, com.android.server.telecom, com.android.server.telecom.overlay.miui, com.android.wifi.resources, com.android.phone.overlay.common, com.android.systemui.overlay.common, com.android.server.telecom.overlay.common, com.android.proxyhandler, com.android.settings, com.android.phone, com.android.shell, com.android.location.fused, com.android.systemui, com.android.permissioncontroller}
06-14 18:13:51.899 19537 19537 I BreventServer: extra important core apps: {com.google.android.ext.services, com.google.android.ext.shared}
06-14 18:13:51.900 19537 19537 I BreventServer: installer: com.miui.packageinstaller
06-14 18:13:51.901 19537 19537 I BreventServer: brevent data directory: /data/user_de/0/com.android.shell
06-14 18:13:51.936 19537 19537 I BreventServer: com.google.firebase.MESSAGING_EVENT: {org.potato.messenger, com.android.vending, com.tencent.mm, com.duokan.phone.remotecontroller, org.mozilla.firefox, com.taptap, com.xiaomi.smarthome}
06-14 18:13:51.938 19537 19537 I BreventServer: com.google.android.c2dm.intent.RECEIVE: {org.potato.messenger, com.android.vending, com.tencent.mm, android, me.piebridge.brevent, com.duokan.phone.remotecontroller, com.google.android.gms, com.google.android.gsf, com.getsurfboard, org.mozilla.firefox, com.google.android.inputmethod.pinyin, com.taptap, com.google.android.inputmethod.japanese, com.xiaomi.smarthome}

06-14 18:13:51.938 19537 19537 I BreventServer: fcm: {org.potato.messenger, com.android.vending, com.tencent.mm, com.duokan.phone.remotecontroller, org.mozilla.firefox, com.taptap, com.xiaomi.smarthome}
06-14 18:13:51.943 19537 19537 I BreventServer: load /data/user_de/0/com.android.shell/me.piebridge.brevent.list, size: 30
06-14 18:13:51.947 19537 19537 I BreventServer: android.net.wifi.RSSI_CHANGED: {}
06-14 18:13:51.953 19537 19537 I BreventServer: android.net.conn.CONNECTIVITY_CHANGE: {com.miui.powerkeeper, com.xiaomi.vipaccount, com.qiyi.video, com.xiaomi.account, com.migu.music.mini, com.xiaomi.gamecenter.sdk.service, com.miui.gallery, com.android.quicksearchbox, com.android.providers.downloads, com.xiaomi.payment, com.miui.systemAdSolution, com.miui.tsmclient, com.miui.userguide, com.tencent.mm, com.xiaomi.jr, com.miui.hybrid, com.lionmobi.powerclean, com.android.mms, com.mfashiongallery.emag, com.miui.miservice, com.xiaomi.mifisecurity, com.android.calendar, com.miui.virtualsim, com.miui.personalassistant, com.tencent.qqlive, com.miui.bugreport, com.tencent.tim, com.mipay.wallet, com.xiaomi.pass, com.xiaomi.shop, com.google.android.gms, com.xiaomi.finddevice, com.miui.newhome, com.miui.nextpay, com.miui.video, com.xiaomi.market, com.miui.hybrid.accessory, com.coolapk.market, com.xiaomi.youpin, com.xiaomi.gamecenter, com.umiao.app, com.miui.analytics, com.android.settings, com.miui.weather2, com.taptap, com.autonavi.minimap, com.duokan.reader, com.moji.mjweather, com.android.email, com.sina.weibo, com.miui.smarttravel, com.android.deskclock, com.android.thememanager, com.taobao.taobao, com.xiaomi.smarthome, com.netease.cloudmusic, com.eg.android.AlipayGphone, cn.wps.moffice_eng}
06-14 18:13:51.953 19537 19537 I BreventServer: bad receivers: {com.autonavi.minimap, com.eg.android.AlipayGphone}
06-14 18:13:51.953 19537 19537 I BreventServer: load /data/user_de/0/com.android.shell/me.piebridge.brevent.disabled, size: 0
06-14 18:13:51.953 19537 19537 I BreventServer: disabling: {}
06-14 18:13:51.954 19537 19537 I BreventServer: load /data/user_de/0/com.android.shell/me.piebridge.brevent.appops, size: 12
06-14 18:13:51.954 19537 19537 I BreventServer: ppid: 19532
06-14 18:13:51.954 19537 19537 I BreventServer: checking standby, sdk: 30
06-14 18:13:51.966 19537 19537 I BreventServer: init widgets
06-14 18:13:51.972 19537 19537 W BreventServer: no widgets
06-14 18:13:51.974 19537 19537 I BreventServer: init notifications
06-14 18:13:51.991 19537 19537 I BreventServer: recents package name: com.miui.home
06-14 18:13:52.002 19537 19537 W BreventServer: EventTag wanted 15, found 11
06-14 18:13:52.006 19537 19537 I BreventServer: use android.qvaoverlay.common to check upgrade and disable
06-14 18:13:52.006 19537 19537 I BreventServer: update android.qvaoverlay.common to disabled-user, new state: disabled-user
06-14 18:13:52.007 19537 19537 I BreventServer: update android.qvaoverlay.common to enabled, new state: enabled
06-14 18:13:52.024 19537 19560 I BreventServer: system_server: 1788
06-14 18:13:52.025 19537 19560 I BreventServer: android_log_clockid: 0x0
06-14 18:13:52.025 19537 19560 I BreventServer: clockid: 0, realtime: 0
06-14 18:13:52.025 19537 19560 I BreventServer: system_server: 1788, now: 1623665632
06-14 18:13:52.064 19537 19537 I BreventServer: support standby: true
06-14 18:13:52.066 19537 19537 I BreventServer: support stopped: true
06-14 18:13:52.066 19537 19537 I BreventServer: support upgrade: checking
06-14 18:13:52.066 19537 19537 I BreventServer: support appops: true
06-14 18:13:52.066 19537 19537 I BreventServer: support disable: true
06-14 18:13:52.066 19537 19537 I BreventServer: Brevent Server 3.7.2 started
06-14 18:13:52.066 19532 19532 I BreventLoader: received signal: 10, ppid: 19527
06-14 18:13:52.066 19537 19537 I BreventServer: sent 10 to 19532
06-14 18:13:52.066 19527 19527 I BreventLoader: check received signal: 10, ppid: 2456
06-14 18:13:52.231 19537 19537 I BreventServer: brevent disabled packages: {}
06-14 18:13:52.245 19537 19562 E BreventServer: cannot parse activities
06-14 18:13:52.245 19537 19562 E BreventServer: Can't check running activities
06-14 18:13:52.246 19537 19562 E BreventServer: Can't check running activities, check again in 30s
06-14 18:13:52.261 19532 19532 E BreventLoader: worker 19537 exited on signal 9
06-14 18:13:52.262 19532 19532 I BreventLoader: signal arrived, update: 0
06-14 18:13:52.263 19527 19527 I BreventLoader: worker 19532 exited with status 0
--- brevent end ---

please report bug to https://github.com/brevent/Brevent/issues/new with logs above

执行完成,退出码:1

以前都能激活成功,现在不知道为什么不行了

使用激活shizuku过程中遇到的问题及自行解决思路

机型:product::HONOR,KOZ-AL00

问题如下:
正在初始化
sh: /sdcard/Android/data/moe.shizuku.privileged.api/files/start.sh: No such file or directory
执行完成,退出码:127

解决办法:
将/sdcard/Android/data/moe.shizuku.privileged.api/下的start.sh和starter两个文件
转移到/sdcard/Android/data/moe.shizuku.privileged.api/files/这个路径下

议论:完全就搞不清楚这个到底是为什么发生的 bug,但是经过这样调试之后,确实就好了,确实能够运行成功了
屏幕截图 2024-02-01 132252

考虑开发Electron版本AutumnBox

WPF很棒,但跨平台性几乎不存在,而MAUI等解决方案也令我失望至极。
如果有朝一日秋之盒复活,可能会采用Electron技术。

希望能通过adb利用提权漏洞root设备

希望能通过adb利用提权漏洞root设备.想给电视root删除开机广告,结果没有几个APP能够一键root,而电脑版的root软件却不支持用网络adb连接电视.鉴于这是一款对小白友好的工具箱,因此希望能集成这个功能.(ps:电视是安卓5.1.1的)

Advice: use tcp connection communicate with adb.exe instead of directly calling adb.exe

The whole ADB system has three roles,

  1. adb client:on PC or anywhere;
  2. adb server: on PC;
  3. adbd: on android device;

The first time we call adb.exe devices, (here is the adb client)
it will launch a daemon process like adb -L tcp:5037 fork-server server --reply-fd 252 in background.(here is the adb server)

The daemon process open a localhost TCP connection listenning on port 5037,
and actually, the adb.exe devices command is doing like this:

client:000chost:version
server:OKAY00040027

client:000chost:devices
server:OKAY00189TXXX7	device

Notice:there is a \t in each line of devices results.

so, it's clear now.
Send 000chost:devices to localhost:5037, and we could read the result to device list.

For more command,anyone could use wireshark to capture the tcp communication.

连不上设备

驱动精灵单文件版、360手机助手等等都试过了
华为畅玩4X移动版 TL00

手机识别问题

有些时候其它刷机软件能够检测到手机连接,但是秋之盒检测不到,具体情况暂时无法还原

建议增加ADB快捷命令维护

以shizuku为例:
通常激活shizuku的命令为:
adb shell sh /sdcard/Android/data/moe.shizuku.privileged.api/files/start.sh

但是最新版的命令为:
adb shell sh /storage/emulated/0/Android/data/moe.shizuku.privileged.api/start.sh

建议能够增加一个地方维护这些常用命令。

Ask

“powershell D:\GIT\Repository\AutumnBox\src\AutumnBox.GUI\afterbuild.ps1 D:\GIT\Repository\AutumnBox\src\AutumnBox.GUI\bin\Debug\netcoreapp3.1\ Debug”已退出,代码为 1。 AutumnBox.GUI D:\GIT\Repository\AutumnBox\src\AutumnBox.GUI\AutumnBox.GUI.csproj 211

求问,报这个错误怎么解决?

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.