micolog 安装插件

坑爹啊。。。才搞清楚,原来是把下载的插件放在micolog的plugin代码里,然后重新deploy一次项目。。。

theme也是这样。。。我x。。。。。

scala with android!!! 终于成功了!!!我fuck!!!

 

相当的激动,哈哈,能用scala开发android了!!!哈哈。搞了两天啊!!!尼码。。。都怪android,每次tools更新ant都要改动,导致网上的2010年和2011年的文章都不能用。。。我fuck。。。还好找到一篇最近的。就是用最新的android tools作的! scala还是相当给力的!哈哈

原文在这里:

http://ricky.ez2.us/2012/04/25/%E4%BD%BF%E7%94%A8-scala-%E9%96%8B%E7%99%BC-android-%E7%9A%84%E7%92%B0%E5%A2%83%E5%BB%BA%E6%A7%8B/

非常给力!

 

自己做了一个更简单的,可以看俺的,原理跟上面一样,如下:

先在eclipse中新建android项目,加入scala的nature,然后下载这个文件,把文件夹afei_ant_android_scala中的所有东西解压到project根目录中,修改local.property文件,然后 ant debug 就行了!!!编译完的文件放在bin里头,给力!!!

 

 

失控 笔记 及 感悟 (持续更新)

对于必须绝对控制的工作,仍然采用可靠的老式钟控系统。

在需要终极适应性的地方,你所需要的是失控的群件。

 

第40页:

只有把产品当做服务来做,才能取得最佳的效果。你卖给顾客什么并不重要,重要的是你为顾客做了些什么。

我的天。这竟是在1995年出版的书上面。太牛x了。。。

android下多点触摸

一开始搞的想死,相当的莫名其妙,搞清楚了发现很强大,呵呵。

 

@Override
        public boolean onTouchEvent(MotionEvent event) {
            int action = event.getActionMasked();
            if (action == MotionEvent.ACTION_DOWN || action == MotionEvent.ACTION_POINTER_DOWN) {
                int i = event.getActionIndex();
                Point p = new Point((int) event.getX(i), (int) event.getY(i));
                for (int j = 0; j < mRect.length; j++) {
                    if (mRect[j].contains(p.x, p.y) ) {
                        click(j);
                    }
                }
            }

最关键的是这个MotionEvent  这个东西,半猜半试的。

每当有一个action时,都会触发一个event,这个时候拿 event.getAction() 时会是 他的code,为了区分是哪个pointer发生的这个event,会加上个mask 这里第一个手指按下,第二个手指点击时getAction = 261 就是0xff00 + 5,5是 action_pointer_down ,所有就要调用一个函数 event.getActionMasked() 得到这个action,然后判断这个action是不是我们想要的,如果是,就拿到event.getActionIndex(),然后根据此index去拿这个点的相关信息就可以了。

嘿嘿,搞定,收获还是很大的,哈哈

 

利用ffmpeg检查mp3的codec是否为mp3的python的脚本

很简单如下:就是执行命令,然后检查。执行shell命令时文件名中的空格就很悲剧,要用”””转义

 

import  sys

import os

import commands

 

print ‘hello’

for i in sys.argv:

    print i

#

f = open(‘error_file’, ‘w’)

str = os.popen(“ls”).read();

filesList = str.split(“n”);

for file in filesList:

        if (file.find(“.mp3”) > 0):

                mp3Info = commands.getoutput(“ffmpeg -i ” + “”” + file + “””);

                print file;

                #print ‘mp3info = ‘

                #print  mp3Info

                if (not (mp3Info.find(“Audio: mp3”) > 0)):

                        f.write(file + ‘n’)

 

f.close()

android mat

怀疑内存泄漏,使用了一个mat。。。原来木有怎么用过,呵呵

主要有一点,就是通过ddms 点击dump hprof时生成的hprof文件 mat 不认。。。我x。。。搜了一下,才发现要通过android tools里面的小工具转换一下才行,呵呵

如下:hprof-conv in.hprof out.hprof 这样就能打开了!呵呵。

mat下载在这里:http://www.eclipse.org/mat/downloads.php

被线程同步的问题搞死了都快。。。我X

小米扩展包之 求同存异

恩,事情是这个样子,出来了米杀v2,我想今天试一下。但是大部分人的意思是先做成牌,然后再玩,

然后我就很愤怒,想的技能不就是用来打的吗?跟做出来有什么关系?难道是借口?拖延,然后就相当的失望。disapiontment….

我的想法是先打打,试一下技能,然后再做修改,最后做成纸牌。

但大家的意思是先做成牌,然后再玩。。。你妈。。。

 

现在又想了想。。。别人跟我的想法不一样,大家习惯了看卡打牌,他们也不管是不是平衡,只管看到牌,恩,打!!!恩,求同存异。。。

下面还是先做出来吧。。。X。。。

 

最重要的不是技能是否有创意,游戏是否平衡,而是是否做出来,能玩!!!x。。。。

三国杀之小米扩展包 v2 版

小米展包:

 

沫沫:3

摘花采果:每受一点。可看上任意一个人的一手牌,黑色则归为己有,为红弃之。(比司的反馈还弱哎。。。

红颜祸: 使用色的杀时,方需要出两个才可抵消.

 

大芮:3

胡打:在自己回合,有且只有一次机会将一手牌作其上一牌打出。(比如打了一南蛮,可以再扔一牌,相当于上一牌又打了一次)在自己回合外,不限次数。

操蛋(限定技):指定除主公外的任意两名角色角色。

(主公技):所有女性角色,可以在她回合你吃桃回血。

 

然: 3

明察秋豪:在回合开始前,可以看一个玩家的牌。 继续阅读“三国杀之小米扩展包 v2 版”

android 控件

gallery 的默认child 都为 wrap_content

viewPager child的param 默认为 fill_parent

有疑问时仅供参考

无论你xml怎么设,他们默认都是这个param。。。

android程序使用gae

Google plugin for eclipse 这个插件很牛,使我们直接创建 android连接 gae的程序,他会建立两个project,一个是android,一个是webApp。

google 相关 doc在:https://developers.google.com/eclipse/docs/appengine_connected_android

教学视频在:http://www.youtube.com/watch?v=M7SxNNC429U

文本在:http://bradabrams.com/2011/05/google-io-session-overview-android-app-engine-a-developers-dream-combination/

理论中跟着教程走就ok,但是小弟发现有几个坑在里面,很奇怪。。。他是怎么演示成功的?fuck。。。

1.新建 App Engine Connected Android Project 时提示android-sdk-mac/tools/lib/proguard.cfg (not found), 这个很坑爹,绝对是插件问题。在其它的android项目中都有这个proguard.cfg,随便找一个拷贝到那里就ok了,否则很难搞。 继续阅读“android程序使用gae”