Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.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 错误:找不到符号:方法startActivity_Java_Android_Android Intent - Fatal编程技术网

Java 错误:找不到符号:方法startActivity

Java 错误:找不到符号:方法startActivity,java,android,android-intent,Java,Android,Android Intent,我正在开发一个应用程序,以便通过以下代码连接到Google Navigator import android.app.Activity; import android.content.Context; import android.content.Intent; import android.net.Uri; public static void Call_GoogleMapsNavigation(int longitud,int latitud) { Intent i = new Inte

我正在开发一个应用程序,以便通过以下代码连接到Google Navigator

import android.app.Activity; 
import android.content.Context;
import android.content.Intent;
import android.net.Uri;

public static void Call_GoogleMapsNavigation(int longitud,int latitud)
{
Intent i = new Intent(android.content.Intent.ACTION_VIEW, 
Uri.parse("google.navigation:q=" +latitud+ ","+longitud+"")); 
Context.startActivity(i); 
}
。。。但我得到了以下错误:

返回的错误:

GWDCPSET_GlobalProcedures_MobileDevice.java:1223: cannot find symbol
symbol : method startActivity(android.content.Intent)
location: class antay.cfsatv30.wdgen.GWDCPSET_GlobalProcedures_MobileDevice
startActivity(i); 
^
我找不到解决这个问题的办法

非常感谢,请尝试以下方法:

Context oContext;
oContext= mContext;
Intent i = new Intent(android.content.Intent.ACTION_VIEW, 
Uri.parse("google.navigation:q=" + latitud+ "," + longitud));
oContext.startActivity(i);

进一步解释一下上面的答案。 这意味着你不能/不应该静态调用
startActivity(intent)。

您需要一个上下文实例

因此,最简单的方法是向静态方法添加一个参数: (请注意,在Java中,小写字母“c”作为方法名称的约定)

例如,在您的活动或应用程序中包含上下文实例引用的任何组件中,您可以按如下方式调用您的方法

为简单起见,我假设您从活动调用它(始终包含对上下文的引用):

MainActivity扩展了AppCompatActivity{
OnCreate(Bundle savedInstance){
.callGoogleMapsNavigation(this,23,44);//静态调用
}
}
希望这有帮助:)

Uri.parse(“google.navigation:q=“+latitud+”,“+longitud+”)


getContext.startActivity(i)//要获取上下文,该方法在

上下文中被调用。上下文没有名为startActivity()的公共静态方法。它是一个实例方法,请阅读文档。嘿,Ahmed,请提供一些上下文,并解释您的答案。
Context.startActivity(intent); //wrong notice capital 'C'
public static void call_GoogleMapsNavigation(final Context context, int longitud,int latitud) { 

        ...
        context.startActivity(i); //right
}
MainActivity extends AppCompatActivity { 

    OnCreate(Bundle savedInstance) {
        <YourHelperClass>.callGoogleMapsNavigation(this, 23, 44); //static call
    }
}