1

我正在编写一个针对 iPhone 和 Android 的 Rhomobile 应用程序。
我需要创建一个自定义 url 方案,这样我就可以创建看起来像test://some-params这样的 url,它将启动我的程序并将其传递给 params。

据我了解,这是通过 BundleURLScheme 参数在 build.yml 中完成的,然后通过 System.get_start_params() 获取这些参数。但是,据我所知,这仅适用于 iPhone。有没有办法让这个在安卓上也能工作?

非常感谢!

4

1 回答 1

1

好的,我自己找到了答案,以防有人也需要这个:

  • 按照此处的说明创建应用程序的扩展:http: //docs.rhomobile.com/rhodes/extensions#generating-a-native-extension-template
  • 添加一个 android_manifest_changes 文件,如上述链接中所述。
  • 在该文件中添加以下行:

    <manifest xmlns:android='http://schemas.android.com/apk/res/android'
    android:versionName='1.0' package='com.rhomobile.webbrowserpoc'
    android:versionCode='10000' android:installLocation='auto'>
    <application android:name='com.rhomobile.rhodes.RhodesApplication'
        android:label='@string/app_name' android:icon='@drawable/icon'
        android:debuggable='true'>
        <activity android:name='com.rhomobile.rhodes.RhodesActivity'
            android:label='@string/app_name' android:launchMode='singleTask'
            android:configChanges='orientation|keyboardHidden'
            android:screenOrientation='unspecified'>
            <intent-filter>
                <action android:name='android.intent.action.VIEW' />
                <category android:name='android.intent.category.BROWSABLE' />
                <category android:name='android.intent.category.DEFAULT' />
                <data android:pathPrefix='' android:scheme=''
                    android:host='' />
            </intent-filter>
        </activity>
    </application>
    

只有该<data android:pathPrefix='' android:scheme='' android:host='' />行应填写正确的属性。

于 2011-12-22T10:58:05.317 回答