Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/205.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 应用程序无法在android 4.0上运行_Java_Android_Xml - Fatal编程技术网

Java 应用程序无法在android 4.0上运行

Java 应用程序无法在android 4.0上运行,java,android,xml,Java,Android,Xml,从安卓2.1到安卓2.3,我的程序运行得非常好 但它在更高版本的android上不起作用。 当应用程序在高于2.3的版本上执行时,它不会给出任何异常。 当在2.3或更低版本上运行时,正确拨打号码并正确执行imei或其他查询,但当应用程序在更高版本上运行时,只会打开带有代码的拨号板,但不会拨打号码/代码 我在我的清单文件中使用了 <uses-sdk android:minSdkVersion="7" android:targetSdkVersion="18"

从安卓2.1到安卓2.3,我的程序运行得非常好 但它在更高版本的android上不起作用。 当应用程序在高于2.3的版本上执行时,它不会给出任何异常。 当在2.3或更低版本上运行时,正确拨打号码并正确执行imei或其他查询,但当应用程序在更高版本上运行时,只会打开带有代码的拨号板,但不会拨打号码/代码 我在我的清单文件中使用了

<uses-sdk
        android:minSdkVersion="7"
        android:targetSdkVersion="18" />

对于某些代码,您可以尝试使用
Intent.ACTION\u CALL
而不是
Intent.ACTION\u DIAL

但对于大多数代码,我恐怕你无法做到这一点

你可以看看

。。。起初,可以直接呼叫USSD 来自应用程序的代码(使用intent.ACTION_拨号)[…] 但这实际上被认为是一个错误 系统的漏洞,因为有人可能编写恶意代码 软件,甚至更多,在网站中插入恶意代码,可能导致 甚至擦拭手机或屏蔽sim卡[…] 在这一点上,将很难找到任何设备 仍然脆弱


转到答案以了解更多信息

您不应该使用拨号器执行这些任务。相反,使用适当的Android API来获取此信息。这里有两个问题可以让您快速入门:


有关更多详细信息,请参阅参考文档和Android培训文章。

这很可能是一种安全功能,用于防止应用程序拨打可能会危害手机的代码。。。很遗憾,我找不到任何东西来证实这个想法。谢谢你的回复,先生,你能为这个问题提出任何解决方案吗?
public class Motorola extends Activity implements OnClickListener{
    TextView tvm1,tvm2,tvm3;
    Intent myIntent;
    String m=Uri.encode("#");
    String str;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        // TODO Auto-generated method stub
        super.onCreate(savedInstanceState);
        setContentView(R.layout.motorola);
        tvm1=(TextView) findViewById(R.id.tvmo1);
        tvm2=(TextView) findViewById(R.id.tvmo3);
        tvm3=(TextView) findViewById(R.id.tvmo2);
        AdView adv3=(AdView) findViewById(R.id.ad4);
        adv3.loadAd(new AdRequest());
        tvm1.setOnClickListener(this);
        tvm2.setOnClickListener(this);
        tvm3.setOnClickListener(this);
    }
    @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        /* *#06#:DISPLSYS IMEI NUMBER.
   *#*#4636#*#*:DISPLAY INFORMATION ABOUT PHONE, BATTERY AND USAGE STATISTICS.
   ##7764726:MOTOROLA DROID HIDDEN SERVICE MENU. THE DEFAULT SPC PASSWORD IS SIX ZEROES (000000).*/
        switch(v.getId())
        {
        case R.id.tvmo1:
            str="*"+m+"06"+m;
            myIntent=new Intent(Intent.ACTION_DIAL);
            myIntent.setData(Uri.parse("tel:"+str));
            startActivityForResult(myIntent,1);
            break;          

        case R.id.tvmo2:
            str="*"+m+"*"+m+"4636"+m+"*"+m+"*";
            myIntent=new Intent(Intent.ACTION_DIAL);
            myIntent.setData(Uri.parse("tel:"+str));
            startActivityForResult(myIntent,1);
            break;          
        case R.id.tvmo3:

            str=m+m+7764726;
            myIntent=new Intent(Intent.ACTION_DIAL);
            myIntent.setData(Uri.parse("tel:"+str));
            startActivityForResult(myIntent,1);
            break;
        }
    }
}