2012年6月19日星期二

为什么中国人宁花4000买手机 不花6元买游戏


网易游戏频道做了一个有意思的专题:“宁花4000买手机 不花6元买游戏”,来讨论中国iOS游戏市场上的怪现象。中国大陆已成为iPhone全球销量排名第二的地区,仅次于美国。而与硬件的热销形成对比,中国大陆的iOS应用市场的规模,仅占全球市场的3%。
  曾经毁了中国PC游戏市场的那些东西,如今又在iOS游戏市场一一重现:盗版、外挂、抄袭、强制消费、恶意竞争……这是整个中国游戏业的一个缩影。全球有10%的iPhone进行过“越狱”,而在中国,这一比例高达60%,这里最奇怪的一个问题是,为什么中国人会花费4000元以上来购买iPhone手机,却不肯花6元钱买游戏?
  游戏的价格是否合理?
  早期电脑上的盗版游戏大多是通过盗版光盘来销售,一张盗版游戏的价格也在5元、10元左右,其价位和目前主流iOS游戏大体一致。得益于iOS低廉的销售发布渠道,iPhone游戏的价格大多是0.99美元(6元人民币),一些游戏“大作”价格会高一些,但也少见超过9.99美元(60元人民币)。其总体价格可以说比较符合中国人的消费水平,早先购买盗版光盘的游戏用户应该不会认为这个价格会较高。
  观念的落伍?
  买得起iPhone应该不算是低收入人群,不买应用有很大可能是没观念,在中国人心中,与硬件相比,软件不值得尊重。中国人花60元购买iPhone贴膜不会有任何问题,但用来购买10个游戏却会觉得价格高,这也是常年盗版环境下的惯性思维,在一个漠视知识产权的国度,看不见、摸不着的“软件”是没有价值的。
  用户使用水平过低?
  还有一种可能,就是用户的使用操作水平过低,不会安装应用。很多人只是将iPhone当做一个4000元的电话,只是使用其电话功能,而不会或不懂如何安装应用。这部分用户应该并不多,iPhone的使用界面已经足够简单易用了,稍稍学习一下的话,用户应该可以学会如何进行应用的购买。
  iPhone对于中国用户的体验不佳?
  从另一方面上讲,苹果iPhone在中国的越狱率很高,也和苹果本身不重视中国市场有关,举一个最简单的例子:“拼音输入法”,在iPhone里面,繁体输入法中有台湾流行的“仓颉输入法”,可见苹果是可以将一些本地流行的输入法整合到iOS中,但iOS至今没有整合那怕一个中国大陆流行的输入法,而苹果自己的中文拼音输入法到底有多烂,恐怕大家都深有体会,百度拼音、搜狗拼音、腾讯拼音等任何一个输入法都比苹果的强。
  另一个本地化功能是“来电归属地”问题,这对于饱受垃圾短信和电话骚扰的中国用户来说,是一个非常重要的功能,苹果不但自己不提供,还不开放接口让第三方开发商提供。
  对于中国用户来说,这两个功能只有越狱之后才能使用,既然越狱之后iPhone的使用体验能大幅提高,那为什么不越呢?这就是中国特色。
  可见中国地区越狱率极高的原因,苹果自身也难咎其责,如果苹果公司能稍微重视一下中国用户,改善一下其烂到极点的中文输入法,内置一个“来电归属地”功能,估计大部分中国用户就不会越狱了,越狱也是技术活,谁愿意没事瞎折腾啊。

当然还有中国人民的聪明才智,原来的系统,游戏,等等都是在等网上的盗版出来才体验的,听说在国外用盗版是受到鄙视的,不知是不是真的哈?中国人善于改别人的东西,而且还是外表的东西,没有一些实质的东西。也就是没有创造性思维,但是创造性思维又是来自模仿,哈哈自己说的哦

Game


import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import java.util.Random;
import java.util.Timer;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Catch_Me extends JFrame implements Runnable
{
    Random R=new Random();
    Random RR=new Random();
ImageIcon bird_img = new ImageIcon("03.gif");//小鼠图片
ImageIcon mouse_img = new ImageIcon("07.gif");//老猫图片
ImageIcon milipic = new ImageIcon("star1.gif");//星星图片
ImageIcon sun= new ImageIcon("sunshine_0.png");//太阳图片
ImageIcon dog=new ImageIcon("dog.gif");
ImageIcon bread=new ImageIcon("bread.gif");
ImageIcon bread2=new ImageIcon("bread2.gif");
ImageIcon bread3=new ImageIcon("bread3.gif");
ImageIcon bread4=new ImageIcon("bread4.gif");
ImageIcon bread5=new ImageIcon("bread5.gif");



//图片装载到标签中
JLabel jb_bird = new JLabel(bird_img);
JLabel jb2_mouse = new JLabel(mouse_img);
JLabel mili = new JLabel(milipic);
JLabel sunl = new JLabel(sun);
JLabel dogl=new JLabel(dog);
JLabel breadl=new JLabel(bread);
JLabel breadl2=new JLabel(bread2);
JLabel breadl3=new JLabel(bread3);
JLabel breadl4=new JLabel(bread4);
JLabel breadl5=new JLabel(bread5);
//JButton button=new JButton("再次挑战");
//JLabel buttonlabel=new JLabel(button);
//设置线程是否运行
static boolean isContinue=true;
static boolean noContinue=true;
static int i=0;
static int j=0;
//初始化对象

public Catch_Me() {
setBak(); // 调用背景方法
this.setSize(980, 670);// 设置窗口大小
this.setTitle("小鼠快跑");
//this.setLayout(null);
this.setResizable(false);

this.setLocationRelativeTo(null);
//设置游戏层

JPanel jp = new JPanel();
jp.setOpaque(false);
this.add(breadl);
        this.add(breadl2);
        this.add(breadl3);
        this.add(breadl4);
        this.add(breadl5);
        //this.getContentPane().setLayout(null);


//jp.add(breadl);

jp.add(sunl);
        jp.add(jb_bird);
        jp.add(jb2_mouse);
        jp.add(mili);
        jp.add(dogl);
        //button.setBounds(440,330,75,45);
        //jp.add(button);
this.getContentPane().add(jp);
breadl.setBounds(R.nextInt(960), R.nextInt(640),205,154);
breadl2.setBounds(R.nextInt(960), R.nextInt(640),205,154);
breadl3.setBounds(R.nextInt(960), R.nextInt(640),205,154);
breadl4.setBounds(R.nextInt(960), R.nextInt(640),205,154);
breadl5.setBounds(R.nextInt(960), R.nextInt(640),205,154);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

//增加鼠标动作
this.addMouseMotionListener(new MouseMotionListener() {
//增加鼠标移动执行的方法
public void mouseMoved(MouseEvent arg0) {
if (arg0.getY() <=670&& arg0.getX() <=980) {
jb_bird.setLocation(arg0.getX() - 50, arg0.getY() - 80);
}
if((jb_bird.getLocation().x>=mili.getLocation().x-15&&jb_bird.getLocation().x<=mili.getLocation().x+15)&&(jb_bird.getLocation().y>=mili.getLocation().y-15&&jb_bird.getLocation().y<=mili.getLocation().y+15)){
Random rnd = new Random();
Random rnd2=new Random();
mili.setLocation(rnd.nextInt(300)+1, rnd2.nextInt(300)+1);
//jb2_mouse.setLocation(rnd.nextInt(544), rnd2.nextInt(420));
}
}

//吃面包
public void mouseDragged(MouseEvent arg0)
{
                if(Math.abs(arg0.getX()-breadl.getX())<=2||Math.abs(arg0.getY()-breadl.getY())<=2)
                {
                    breadl.setVisible(false);
                    j++;
                   
                }
                if(Math.abs(arg0.getX()-breadl2.getX())<=2||Math.abs(arg0.getY()-breadl2.getY())<=2)
                {
                    breadl2.setVisible(false);
                    j++;
                }
                if(Math.abs(arg0.getX()-breadl3.getX())<=2||Math.abs(arg0.getY()-breadl3.getY())<=2)
                {
                    breadl3.setVisible(false);
                    j++;
                }
                if(Math.abs(arg0.getX()-breadl4.getX())<=2||Math.abs(arg0.getY()-breadl4.getY())<=2)
                {
                    breadl4.setVisible(false);
                    j++;
                }
                if(Math.abs(arg0.getX()-breadl5.getX())<=2||Math.abs(arg0.getY()-breadl5.getY())<=2)
                {
                    breadl5.setVisible(false);
                    j++;
                }
               
}
//鼠标拖拉组件执行的方法

});
this.setVisible(true);
}

//设置背靠图片
public void setBak() {
((JPanel) this.getContentPane()).setOpaque(false);//设置透明度的
ImageIcon img = new ImageIcon("body_bg.jpg"); // 添加图片
JLabel background = new JLabel(img);
//JButton button=new JButton("再次挑战");
//background.add(button);
this.getLayeredPane().add(background, new Integer(Integer.MIN_VALUE));
background.setBounds(0, 0, img.getIconWidth(), img.getIconHeight());
}
//线程开始
public void start() {
   new timetest_noeasy(this);
        Timer timer=new Timer();
        timer.schedule(new timetest_noeasy(this), 15000);
while (noContinue) {
if(isContinue)
{
 
Thread thr = new Thread(this);
try {
 
thr.sleep(400);
} catch (InterruptedException e) {
e.printStackTrace();
}
thr.start();

}
}
}
//执行线程
public void run()
{
   this.add(breadl3);
   this.add(breadl4);
   breadl3.setBounds(R.nextInt(960), R.nextInt(640),205,154);
   breadl4.setBounds(R.nextInt(960), R.nextInt(640),205,154);
 
int x = jb_bird.getLocation().x;
int y = jb_bird.getLocation().y;

if(x<490||y>335)
jb2_mouse.setLocation(x, y);
if(y<335||y>490)
dogl.setLocation(x, y);
try {
           Thread.sleep(300);
       } catch (InterruptedException e) {
           e.printStackTrace();
       }

if ((jb_bird.getLocation().x == jb2_mouse.getLocation().x
&& jb_bird.getLocation().y == jb2_mouse.getLocation().y)
||(jb_bird.getLocation().x ==dogl.getLocation().x
               && jb_bird.getLocation().y ==dogl.getLocation().y))
{
isContinue=true;
//JOptionPane.showMessageDialog(null, "小鼠被抓住啦!");
final JFrame frame=new JFrame();
       frame.setTitle("提示信息");
     
       JPanel pane=new JPanel();
       JLabel label=new JLabel("小鼠被抓住啦!");
     
       pane.add(label);
            //pane.add(button);
            frame.add(pane);
            frame.setVisible(true);
            frame.setBounds(500, 300,250, 90);
            frame.setLocationRelativeTo(null);
            try
            {
                Thread.sleep(500);
            }
            catch(InterruptedException e)
            {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
         
            frame.setVisible(false);
     
     
     

i++;

}
}
}








import java.util.TimerTask;


public class timetest_noeasy extends TimerTask
{
    Catch_Me me;
    public timetest_noeasy(Catch_Me catch_Me_Difficult)
    {
        this.me=catch_Me_Difficult;
    }
  public void run()
    {
        me.noContinue=false;
       
    }
}













import javax.swing.JOptionPane;


public class Catch_Me_Main
{
  //main方法
    public static void main(String[] args){
        int j=0;
        Catch_Me c = new Catch_Me();
        c.start();
        j=c.i;
        //JFrame frame=new JFrame(); 
       // frame.setTitle("提示信息");
        
       /* JPanel pane=new JPanel();
        JLabel text=new JLabel("游戏时间到--- ---"+"小鼠被猫捉了"+c.i+"次");
        JLabel text1=new JLabel("再接再厉,下次见");
        JLabel text2=new JLabel("小鼠吃了"+c.j+"个面包");
        pane.add(text);
        pane.add(text2);
        pane.add(text1);*/ 
        JOptionPane.showMessageDialog(null, "游戏时间到,小鼠被猫捉了"+c.i+"次,吃了"+c.j+"个面包","消息",JOptionPane.WARNING_MESSAGE);
       // frame.add(pane);
        //frame.setVisible(true);
        //frame.setBounds(500, 300,250, 90);
        //frame.setLocationRelativeTo(null);
        
    }
}