自制工具:修改hosts文件,访问google等网站


由于工作原因,需要经常访问google等网站查询问题,因此常见的方法就是使用vpn或者通过修改hosts文件来实现对google 的访问。

但一般情况下免费的vpn很难找到,收费的vpn仅仅是访问google也不划算,因此常用的就是修改hosts的方式,修改hosts的方法也很简单,主要就是找到有效的hosts文件,然后替换掉系统的hosts文件即可,常用系统的host文件的路径如下:

  • windows系统的host文件路径:C:\WINDOWS\system32\drivers\etc
  • Android(安卓)系统hosts路径: /etc/hosts
  • Mac(苹果电脑)系统hosts路径: /etc/hosts
  • iPhone(iOS)系统hosts路径: /etc/hosts
  • Linux系统hosts路径: /etc/hosts
  • 绝大多数Unix系统路径: /etc/hosts

针对windows系统我这边编写了一个工具,用来更新和替换hosts文件,下载地址:
https://whonee.net/wp-content/uploads/2017/06/google.zip


Continue reading "自制工具:修改hosts文件,访问google等网站"

记录:Makefile 增加打印变量及字符串


增加打印变量及字符串

# warning 不会中断编译
$(warning some string)
$(warning some string$(variable Name))
# error 会中断编译
$(error some string)
$(error some string$(variable Name))

服务器共享磁盘网络映射方法集萃!


服务器设置了samba共享之后,客户端想要登录服务器修改内容,需要手动登录,但每次登录需要输入账号和密码比较麻烦,因此常用的方式为建立网络磁盘映射。

在windows平台增加磁盘映射的指令为net use,在你的电脑的开始菜单的运行框中输入cmd,然后在命令提示符界面输入net use,会列举出你所以已经映射的磁盘,如下为我的磁盘映射图片。
要想知道net use 的其他功能,可以输入net use /help 查看,如下图:

建立自己的磁盘映射并开机自动启动。

  • 新建一个文件,输入如下代码,并将文件的后缀改成.bat,如:auto_link.bat
@echo off  
net use H: \\your server IP\shareFile "password" /user:"user name"
  • 在你的电脑的开始菜单的运行框中输入regedit调出注册表编辑器,依次展开HKEY_LOCAL_MACHINE-SOFTWARE-MICROSOFT-WINDOWS-CURRENTVERSION-RUN 在右面新建一个字符串值,数据设置为该批处理文件的路径!

同一服务器,2个共享账号的切换

由于windows不允许2个账号同时登陆一个服务器,你需要按照如下方式新建2个文件,点击文件进行账号的切换,请分别复制代码存为2个bat文件,然后修改成自己的账号密码,即可使用。

ch_a.bat

@echo off
net use Y: /del /y
ping 127.0.0.1 -n 6 >nul 
net use Y: \\your server IP\shareFile "password A" /user:"username A"

ch_b.bat

@echo off
net use Y: /del /y
ping 127.0.0.1 -n 6 >nul 
net use Y: \\your server IP\shareFile "password B" /user:"username B"

说明:
1. net use Y: /del /y 删除就有链接,同一服务器使用同一磁盘名。
2. ping 127.0.0.1 -n 6 >nul 用ping的方法加入代码执行延迟。


若指令执行出现错误,可以手动删除对应密码再重新连接:

  • windows 7 保存网络密码的路径:

点击“控制面板”→“用户帐户” →“管理您的凭据”,或者在"运行"对话框中输入:control keymgr.dll,打开“凭据管理器”

  • windows xp 保存网络密码的路径:

点击“控制面板”→“用户帐户” →“管理我的网络密码”,或者在"运行"对话框中输入:control keymgr.dll,打开“凭据管理器”。

MTK平台新增摄像头指南 -- 已更新android 7.0路径的更改。


增加驱动及配置到Kernel 层:

  • 增加驱动文件夹到如下目录:
mediatek\custom\common\kernel\imgsensor\
mediatek\custom\mt6582[mt8127]\kernel\imgsensor\
mediatek\custom\[project]\kernel\imgsensor\
//说明:
//优先级:[project]/mt6582/mt8127 /common
//建议增加时:yuv 放到 common ,raw 放到:mt6582/mt8127.
//驱动文件夹命名规则为:品牌+型号+ _ +yuv/raw
  • 增加可选摄像头到mediatek\custom\common\kernel\imgsensor\src\kd_sensorlist.h,修改内容如下:

a. 申明摄像头初始化函数, 注意此函数在摄像头驱动文件中实现,注意检查是否一致,如下增加gc0312摄像头为例。

UINT32 GC0312_YUV_SensorInit(PSENSOR_FUNCTION_STRUCT *pfFunc);

b. 增加摄像头到 camera List(此处宏定义可在 ProjectConfig.mk 文件中找到并对应即可编译此摄像头)

#if defined(GC0312_YUV)
    {GC0312_SENSOR_ID, SENSOR_DRVNAME_GC0312_YUV, GC0312_YUV_SensorInit},
#endif
  • 配置摄像的检测的参数,修改 mediatek\custom\common\kernel\imgsensor\inc\kd_imgsensor.h增加sensor name 和sensor id的定义
#define GC0312_SENSOR_ID                        0xb310
#define SENSOR_DRVNAME_GC0312_YUV               "gc0312yuv"
  • 修改上电文件保证摄像头上电:mediatek\custom\[project]\kernel\camera\camera\kd_camera_hw.c
    根据实际情况调节上电电压和方式。


增加驱动及配置到HAL 层:

  • 增加驱动文件夹到目录:
mediatek\custom\common\hal\imgsensor\
mediatek\custom\mt6582[mt8127]\hal\imgsensor\
mediatek\custom\[project]\hal\imgsensor\
//优先级:[project] > mt6582/mt8127 > common
//建议增加时:yuv 放到 common ,raw 放到:mt6582/mt8127.
//驱动文件夹命名规则为:品牌+型号+ _ +yuv/raw
  • 增加可选摄像头到文件:mediatek\custom\common\hal\imgsensor\src\sensorlist.cpp
#if defined(GC0312_YUV)
    YUV_INFO(GC0312_SENSOR_ID, SENSOR_DRVNAME_GC0312_YUV, NULL),
#endif

注:在 kdSensorList 和 SensorList 里面添加驱动的时候要注意,Sensor 添加的位置要一样。否则驱动会跑乱,轻则 ISP 参数不对,重则 Sensor 无法启动。


到此添加设备到系统已经内容完毕,但编译测试之前需要对 ProjectConfig.mk 进行配置,

打开对应工程的 ProjectConfig.mk 文件,具体路径为:mediatek\config\[project]\ProjectConfig.mk
将对应的文件夹的名字拷贝到等号后面。

Kernel 部分:
CUSTOM_KERNEL_IMGSENSOR =
后置摄像头: CUSTOM_KERNEL_MAIN_IMGSENSOR =
前置摄像头: CUSTOM_KERNEL_SUB_IMGSENSOR =

HAL 部分:
CUSTOM_HAL_IMGSENSOR =
后置摄像头: CUSTOM_HAL_MAIN_IMGSENSOR =
前置摄像头: CUSTOM_HAL_SUB_IMGSENSOR =

注:摄像头的数量不超过 16 个,否则多余的不可识别。

关于编译:

增加或者修改内核部分,编译时:
./mk -o=TARGET_BUILD_VARIANT=user [project] n k bootimg

修改 HAL 层,编译时:
./mk -o=TARGET_BUILD_VARIANT=user [project] mm mediatek/platform/mt6582[mt8127]/hardware/mtkcam/

注,为保证编译有效,编译前需要删除如下文件夹的内容:
out\target\product\[project]\obj\CUSTGEN\custom\hal\imgsensor
out\target\product\[project]\obj\CUSTGEN\custom\kernel\imgsensor


android 7.0 路径的变化

# 增加了kernel和hal同步的kd_imgsensor.h
device/mediatek/common/kernel-headers/kd_imgsensor.h

# kernel 驱动文件位置的更新
kernel-3.18/drivers/misc/mediatek/imgsensor/

#kernel上电文件位置的更新
kernel-3.18/drivers/misc/mediatek/imgsensor/src/mt8163/camera_hw/

# hal 驱动文件的位置的更新
vendor/mediatek/proprietary/custom/mt8163/hal/imgsensor/

# hal层调整摄像头方向等参数文件的更新
vendor/mediatek/proprietary/custom/mt8163/hal/sendepfeature/