Я хочу использовать этот код Java, чтобы получить данные URI в единстве
я пишу этот код сценария для вызова этого метода, но не работает
* Java
public String GetUri(){
Intent intent = getIntent();
Uri intentData = intent.getData();
return intentData.getQueryParameter("token");
}
* с #
TextShow.text += ajc.Call<string>("GetUri");
После многих испытаний я обнаружил, что только статический метод может вызывать в единстве
как это
* ява
public static String DoSthInAndroid3()
{
return "33333";
}
* с #
TextShow.text += ajc.Call<string>("DoSthInAndroid3");
я пробую нестатический метод, но не работаю
public String DoSthInAndroid3()
{
return "33333";
}
TextShow.text += ajc.Call<string>("DoSthInAndroid3");
как использовать плагин Android для получения данных URI?
кажется, что getIntent () не может вызываться в статическом методе, как мне его получить?
------------ обновление -----------------
Java
package com.s.mylibrary;
import android.net.Uri;
import com.unity3d.player.UnityPlayerActivity;
public class AndroidPlugin extends UnityPlayerActivity {
public static String GetString(){
return"TestThisPlugin";
}
public String GetUri(){
Uri intentData = getIntent().getData();
return intentData.getQueryParameter("token");
}
}
с #
void GetAndroidUri()
{
var ajc = new AndroidJavaClass("com.s.mylibrary.AndroidPlugin"); //(1)
TextShow.text += ajc.CallStatic<string>("GetString");
TextShow.text += ajc.CallStatic<string>("GetUri");
TextShow.text += ajc.Call<string>("GetUri");
}
AndroidManifest
<intent-filter>
<action android:name="android.intent.action.VIEW"/>
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="justlovepaohuzi" android:host="hmok" android:pathPrefix="/UserToekn"/>
</intent-filter>
HTML
<a href="justlovepaohuzi://hmok/UserToekn/?token=123456999"> Open3 </a>
----------------- обновление ---------------
я исправляю имя метода и пробую новый код печати, но я все еще не могу получить нестатический метод, у меня нет сообщения об ошибке, но все равно отличается от ожидаемого
Java
package com.s.mylibrary;
import android.net.Uri;
import com.unity3d.player.UnityPlayerActivity;
public class AP extends UnityPlayerActivity{
public static String GetString(){
return "TestThisAP";
}
public String GetString2(){
return "AAAAAA";
}
public String GetUri(){
Uri uri = getIntent().getData();
return uri.getQueryParameter("token")+"XDDX";
}
}
с #
void GetAndroidUri()
{
var ajc = new AndroidJavaClass("com.s.mylibrary.AP");
TextShow.text += ajc.CallStatic<string>("GetString");
TextShow.text += ajc.Call<string>("GetString2");
TextShow.text += ajc.Call<string>("GetUri");
TextShow.text += "Last";
}
строка результата
ожидается
"TestThisAPAAAAAA (маркер) XDDXLast"
relult
"TestThisAPLast"