读取URI来提取参数

问题描述:

我想从自定义uri中读取参数并显示在应用程序中。我正在从这样的浏览器调用应用程序 “worklight:// this/is/important” 现在我想提取android应用程序中的参数。我在网上看过很多例子。我在我的应用程序的HTML页面试过这样:读取URI来提取参数

Uri data = getIntent().getData(); List<String> params = data.getPathSegments(); String first = params.get(0); String second = params.get(1);

,但我不是成功为止。 我的错误日志:

Uncaught Exception: Uncaught SyntaxError: Unexpected identifier at 
    (compiled_code):72. 

72线基本上是Uri data = getIntent().getData(); 我已经尝试了很多方法,但我没有成功。请让我知道如何成功传递参数并在混合应用程序中读取它们(工作灯,但现在仅适用于Android)。

清单:

 </intent-filter> 
     <intent-filter> 
      <category android:name="android.intent.category.BROWSABLE" /> 
      <action android:name="android.intent.action.VIEW" /> 
      <action android:name="com.scan.scan.NOTIFICATION"/> 
      <category android:name="android.intent.category.DEFAULT"/> 
      <data android:scheme="worklight"/> 
     </intent-filter> 

scan.java:

公共类扫描扩展CordovaActivity实现WLInitWebFrameworkListener {

@Override 
public void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 

    WL.createInstance(this); 

    WL.getInstance().showSplashScreen(this); 

    WL.getInstance().initializeWebFramework(getApplicationContext(), this); 

} 
+0

是的,谢谢你先生。 – user3869280 2014-09-10 15:40:59

+0

嘿,我不是先生...欢迎.. :)快乐编码... – 2014-09-10 15:43:41

尝试:

Intent intent = getIntent(); Bundle bundle = intent.getExtras(); Uri uri = (Uri)bundle.get(Intent.EXTRA_STREAM);

+0

我仍然得到与getIntent()相同的错误;我认为这个代码的放置也很重要。你能让我知道我应该把这个代码放在哪里吗?我是手机新手,并没有意识到这一点。 – user3869280 2014-09-05 19:45:53

+0

好的,发布一些更相关的代码。 – 2014-09-05 19:48:36

+0

我有index.html这是应用程序的主屏幕。作为worklight的工作方式,这个html页面是从主java类加载的。让我知道还需要什么。谢谢你的时间 – user3869280 2014-09-05 19:54:51