当前位置:  编程技术>移动开发
本页文章导读:
    ▪手机经过笔记本电脑无线网卡联网        手机通过笔记本电脑无线网卡联网 手机通过笔记本电脑无线网卡联网     比方,笔记本通过有线宽带(或3G上网卡)联网,而现场没有无线路由器,这时我们的手机如何通过笔记本电脑联.........
    ▪ ubuntu下配置git服务器        ubuntu上配置git服务器 1       需求硬件需求:一台Ubuntu或者debian电脑(虚拟机),能通过网络访问到。软件需求:git-core, gitosis, openssh-server, openssh-client2       安装配置git服务器安装g.........
    ▪ objective-c的arc项目中使用不支持arc的依赖库时编译异常的解决       objective-c的arc项目中使用不支持arc的依赖库时编译错误的解决 在Target->build phases->Compile Source中设置不支持arc的代码的Compile flag为“-fno-objc-arc” ......

[1]手机经过笔记本电脑无线网卡联网
    来源: 互联网  发布时间: 2014-02-18
手机通过笔记本电脑无线网卡联网

手机通过笔记本电脑无线网卡联网

 

 

比方,笔记本通过有线宽带(或3G上网卡)联网,而现场没有无线路由器,这时我们的手机如何通过笔记本电脑联网?

 

我们知道,无线网卡支持AD-hoc模式(即点对点模式),将两台电脑的无线网卡设置为Ad-hoc模式,即可让它们通过无线网卡直接连网(不必通过无线路由器的支持)。

 

但是安卓手机并不支持windows的ad-hoc模式,我总结了下,要让安卓手机支持ad-hoc模式,有两种:

 

1. 通过替换手机的/system/bin/wpa_supplicant文件,使得手机支持ad-hoc模式,我反复试了后,发现部分手机并不可行,导致WLAN无法关闭,或是无法激活,故而放弃。强烈建议不要使用替换wpa_supplicant的方式。

2. 通过在手机上安装busybox, adhoc switcher两个工具,实现手机支持windows的AD-hoc网络,我的手机是联想A789, 通过此方法实验成功,特此分享出来。

 

故本文描述通过方法2实现目标。

 

手机上的准备工作:

1. 对手机进行root处理,请自行参照网上的教程,此步的目的是为了顺利安装busybox(busybox需要有root权限,而adhoc switcher需要busybox的支持。Busybox就是给安卓的linux系统扩展出一些额外的命令),可参照:http://shuaji.lexun.cn/article/4768

 

2. 给手机安装busybox, adhoc switcher两个工具。提示获取超级用户权限时一律点击允许。

 

3. 配置笔记本电脑的无线网卡模式为AD-hoc
右键点击桌面上的网上邻居图标,选择属性,打开网络连接配置窗口。
右击“无线网络连接”图标,选择属性,切换到“无线网络配置”选项卡,选中“用windows配置我的无线网络设置”。再点击下方高级按钮,选中“仅计算机到计算机(特定)”, 清除“自动连接到非首选的网络”复选框。再点击关闭,返回到“无线网络配置”选项卡中。

接下来添加一个点到点无线网络访问点:点击“添加”打开无线网络属性对话框,网络名(SSID)输入wap, 或输入你自己喜欢的名称即可。网络身份验证选择开放式,数据加密选择为WEP, 清除“自动为我提供密钥”复选框,然后在网络密钥中输入5个字符,如5个6。最后点击确定。

然后回到“网络连接”窗口中,右击“无线网络连接”,选择“查看可用的无线连接”,即在无线列表中显示出一个名为wap的电脑图标形式的无线连接,选中它并点击下方的连接按钮,等待windows连接之(这一步实质上是正式启用电脑的adhoc连接点)。好了,到这电脑上的配置就完成了。

 

4. 共享笔记本电脑的有线连接或3G连接,我的笔记本使用中国电信的3G上网卡上网的,无线网卡暂时处于空闲状态。

在网络连接窗口中的本地连接或USB-KEY DIAL图标上右击,选择属性,再切换到高级选项卡中,选中“允许其它网络用户通过此计算机的internet来连接”,如果出现提示“请选择一个专用网络”,请选择“无线网络连接”,确定后计算机上的设置就完毕了。

 

5. 配置安卓手机上的adhoc switcher:
首先打开手机的WLAN, 启用adhoc switcher, 连接两次点击“continue”,再点击“Switch to Infrastrcture mode”切换至普通的模式(此步的目的是为了便于输入网络SSID,密钥等信息, 如果没有看到Switch to Infrastrcture mode, 请点击try to switch to Ad-hoc mode, 再点击Switch to Infrastrcture mode)。

 

再点击最下方细长条的灰色按钮(不是很醒目,需仔细辨识,我第一次并未发现这个按钮,害得我困惑了半天,建议作用将此按钮设置明显一些)。

点击SSID for Ad-hoc mode, 输入网络名称 wap

选中Use WEP encryption 复选框

点击Set WEP Key ,输入我们设置的网络密钥,如我设置的是66666

设置完毕以后,返回到adhoc switcher主界面中,点击try to switch to Ad-hoc mode,稍等片刻,即可连接上笔记本电脑的无线网卡。

 

 

如果在设置中遇到问题,可联系信箱zhangxugg@163.com, 笔者使用此方法,就可以使用电信3G上网卡联网,而不再使用昂贵的手机流量了,何乐而不为呢?

 

 


    
[2] ubuntu下配置git服务器
    来源: 互联网  发布时间: 2014-02-18
ubuntu上配置git服务器
1       需求

硬件需求:一台Ubuntu或者debian电脑(虚拟机),能通过网络访问到。

软件需求:git-core, gitosis, openssh-server, openssh-client
2       安装配置git服务器

安装git和openssh:

a@server:~$ sudo apt-get install git-core openssh-server openssh-client

新加用户git, 该用户将作为所有代码仓库和用户权限的管理者:

a@server:~$ sudo useradd -m git

a@server:~$ sudo passwd git

建立一个git仓库的存储点:

a@server:~$ sudo mkdir /home/repo

让除了git以外的用户对此目录无任何权限:

a@server:~$ sudo chown git:git /home/repo

a@server:~$ sudo chmod 755 /home/repo   注:此处要把git仓库repo的属性设置成755,不然在gitweb中一直无法找到工程
3       安装配置gitosis

初始化一下服务器的git用户,这一步其实是为了安装gitosis做准备。在任何一 台机器上使用git,第一次必须要初始化一下:

a@server:~$ git config –global user.name “myname”

a@server:~$ git config –global user.email “myname@server“

安装一下python的setup tool, 这个也是为了gitosis做准备:

a@server:~$ sudo apt-get install python-setuptools

获得gitosis包:

a@server:~$ cd /tmp

a@server:/tmp$ git clone git://eagain.net/gitosis.git

a@server:/tmp$ cd gitosis

a@server:/tmp/gitosis$ sudo python setup.py install

切换到git用户下:

a@server:/tmp/gitosis$ su git

默认状态下,gitosis会将git仓库放在 git用户的home下,所以我们做一个链接到/home/repo

$ ln -s /home/repo /home/git/repositories

再次返回到默认用户

$ exit

如果你将作为git服务器的管理员,那么在你的电 脑上(另一台pc)生成ssh公钥:

usr@pc1:~$ ssh-keygen -t rsa

将公钥拷贝到服务器的/tmp下:

usr@pc1:~$ scp .ssh/id_rsa.pub git@<server>:/tmp

回到git服务器上

a@server:/tmp/gitosis$ sudo chmod a+r /tmp/id_rsa.pub

让gitosis运行起来:

a@server:/tmp/gitosis$ sudo -H -u git gitosis-init < /tmp/id_rsa.pub

Initialized empty Git repository in /home/repo/gitosis-admin.git/

Reinitialized existing Git repository in /home/repo/gitosis-admin.git/

gitosis的有趣之处在于,它通过一个git仓库来管理配置文件,仓库就放在了/home/repo/gitosis- admin.git。我们需要为一个文件加上可执行权限:

a@server:/home/git$ sudo passwd root

a@server:/home/git$ su

root@server:/home/git# cd repositories

root@server:/home/git/repositories# cd gitosis-admin.git/

root@server:/home/git/repositories/gitosis-admin.git# sudo chmod 755 /home/repo/gitosis-admin.git/hooks/post-update

root@server:/home/git/repositories/gitosis-admin.git# exit
4       在服务器上新建一个测试项目仓库

我们在服务器上新建一个空的项目仓库,叫“teamwork”。

切换到git用户:

a@server:/home/git$ su – git

$ cd /home/repo

$ mkdir teamwork.git

$ cd teamwork.git

$ git init - -bare      注:这是在服务器上运行的,是为了初始化一个根级的git仓库

$ exit

但是,到目前为止,这只是一个空仓库,空仓库是不能clone下来的。为了能做clone,我们必须先让某个有权限的人放一个初始化的版本到仓库中。

所以,我们必须先修改一下gitosis-admin.
5       管理gitosis的配置文件

刚刚提到,gitosis本身的配置也是通过git来实现的。在你自己的开发机里,把gitosis-admin.git这个仓库clone下来,就可以以管理员的身份修改配置了。

在你的电脑里:

usr@pc1:~/work$ git clone git@<server>:gitosis-admin.git

usr@pc1:~/work$ cd gitosis-admin/

该目录下的keydir目录是用来存放所有需要访问git服务器的用户的ssh公钥:

各个用户按照前面提到的办法生成各自的ssh公钥文件后,把所有人的 ssh公钥文件都拿来,按名字命名一下,比如b.pub, lz.pub等,统统拷贝到keydir下:

usr@pc1:~/work/gitosis-admin$ su root

root@pc1:/home/a/work/gitosis-admin# cp /path/to/.ssh/id_rsa.pub ./keydir/b.pub

root@pc1:/home/a/work/gitosis-admin# exit

修改gitosis.conf文件,我的配置大致如下:

[gitosis]

[group gitosis-admin]

writable = gitosis-admin

members = a@server usr@pc1

[group hello]

writable = teamwork

members = a@server b

[group hello_ro]

readonly = teamwork

members = lz

这个配置文件表达了如下含义:gitosis-admin组成员有a, usr,该组对gitosis-admin仓库有读写权限;

team组有a,b两个成员,该组对teamwork仓库有读写权限;

team_ro组有lz一个成员,对teamwork仓库有只读权限。

当然目前这些配置文件的修改只是在你的本地,你必须推送到远程的gitserver上才能真正生效。

加入新文件、提交并push到git服务器:

usr@pc1:~/work/gitosis-admin$ git add .

usr@pc1:~/work/gitosis-admin$ git commit -am “add teamweok prj and users”

usr@pc1:~/work/gitosis-admin$ git push origin master
6       初始化测试项目

好了,现在服务器就搭建完了,并且有一个空的项目teamwork在服务器上。接下来呢?当然是测试一下,空仓库是不能clone的,所以需要某一个有写权限的人初始 化一个版本。就我来做吧,以下是在客户端完成。

usr@pc1:~/work$ mkdir teamwork-ori

usr@pc1:~/work$ cd teamwork-ori/

usr@pc1:~/work/teamwork-ori$ git init           注:这是在用户端的PC上执行的,为的是初始化一个本地的版本库

usr@pc1:~/work/teamwork-ori$ echo “/*add something*/” > hello

usr@pc1:~/work/teamwork-ori$ git add .

usr@pc1:~/work/teamwork-ori$ git commit -am “initial version”

usr@pc1:~/work/teamwork-ori$ git remote add origin git@<server>:teamwork.git

usr@pc1:~/work/teamwork-ori$ git push origin master

到此为止teamwork已经有了一个版本了,team的其他成员只要先clone一下 teamwork仓库,就可以任意玩了。

usr@pc1:~/work/teamwork-ori$ su b

$ cd /home/b

$ git clone git@<server>:teamwork.git

$ cd teamwork

$ vim hello

$ git add .

$ git commit -am “b add”

$ git push origin master

$ exit
7       添加已有git项目

另外:如果你有一个现成的git仓库,想放到 gitserver上供team使用(比如你clone了一个官方的kernel仓库,想在内部使用它作为基础仓库),怎么办呢。

首先需要从你的工作仓库中得到一个纯仓库, 比如你的工作目录为~/kernel, 你想导出纯仓库到你的优盘里,然后拷贝到gitserver上去。

$ git clone –bare ~/kernel /media/udisk

然后就拿着优盘,交给gitserver的管理员,让他拷贝到/home/repo/下,同时需要配置 gitosis相关配置文件哦,这个就不用再说了吧。比如:下载ALSA库:

git clone git://android.git.kernel.org/platform/external/alsa-lib.git

git clone git://android.git.kernel.org/platform/external/alsa-utils.git

生成bare库

git clone –bare alsa-lib alsa-lib.git

git clone –bare alsa-utils alsa-utils.git

将bare 库移动到git服务器目录

cp alsa-lib.git /home/repo

注意变更所有者,以获取提交权限。

chown -R git alsa-lib.git

然后就O 了,呵呵.
8       创建gitweb

sudo apt-get install gitweb
8.1 配置 gitweb

默认没有 css 加载,把 gitweb 要用的静态文件连接到 DocumentRoot 下:

cd /var/www/

sudo ln -s /usr/share/gitweb/* .
8.2 修改配置

sudo vi /etc/gitweb.conf

将 $projectroot 改为git仓库存储目录(例如:/home/git/repositories),保存后刷新浏览器。

如果没有找到项目,你需要将$projectroot/*.git 的属性改为755,让apache用户有可读权限。可以只改你需要让别人通过web访问的那个git。http://localhost/cgi-bin/gitweb.cgi
8.3 修改/etc/gitweb.conf 内容

# path to git projects (<project>.git)

#$projectroot = "/var/cache/git";

$projectroot = "/home/git/repositories";

# directory to use for temp files

$git_temp = "/tmp";

# target of the home link on top of all pages

$home_link = $my_uri || "/";

# html text to include at home page

$home_text = "indextext.html";

# file with project list; by default, simply scan the projectroot dir.

$projects_list = $projectroot;

# stylesheet to use

@stylesheets = ("/gitweb/static/gitweb.css");

# javascript code for gitweb

$javascript = "gitweb/static/gitweb.js";

# logo to use

$logo = "/gitweb/static/git-logo.png";

# the 'favicon'

$favicon = "/gitweb/static/git-favicon.png";

# git-diff-tree(1) options to use for generated patches

#@diff_opts = ("-M");

@diff_opts = ();
8.4 配置apache2

ubuntu中默认的web目录是/var/www,默认的cgi目录是 /usr/lib/cgi-bin/,安装完成gitweb后,gitweb的gitweb.cgi会自动放置到该目录下。

如果你的cgi路径不是默认的/usr/lib/cgi-bin/,需要将gitweb安装在/usr/lib/cgi-bin中的gitweb.cgi复制到原来配置的cgi-bin路径,并在apache的配置文件/etc/apache2/apache.conf末尾加上以下内容:

SetEnv  GITWEB_CONFIG   /etc/gitweb.conf

<Directory "/srv/www/cgi-bin/gitweb">         

     Options FollowSymlinks ExecCGI        

     Allow from all                         

     AllowOverride all                     

     Order allow,deny                      

     <Files gitweb.cgi>

          SetHandler cgi-script

     </Files>                  

     RewriteEngine on

     RewriteCond %{REQUEST_FILENAME} !-f

     RewriteCond %{REQUEST_FILENAME} !-d

     RewriteRule ^.* /gitweb.cgi/$0 [L,PT]

</Directory>
8.5 重新启动apache

sudo /etc/init.d/apache2 restart

访问http://localhost/cgi-bin/gitweb.cgi

    
[3] objective-c的arc项目中使用不支持arc的依赖库时编译异常的解决
    来源: 互联网  发布时间: 2014-02-18
objective-c的arc项目中使用不支持arc的依赖库时编译错误的解决
在Target->build phases->Compile Source中设置不支持arc的代码的Compile flag为“-fno-objc-arc”

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3