簡體   English   中英

從App啟動Android Market

[英]Start Android Market from App

我正在為Android上的應用開發精簡版。 如何啟動Intent以打開Android Market,最好顯示我的應用程序的完整版本? 這很難在模擬器上測試(這與我擁有的設備最接近),因為似乎沒有合法的方式在其上安裝市場。

上面的查詢有效,但是當我嘗試它時,它似乎是根據名稱提出搜索結果。

如果你使用類似的東西

intent.setData(Uri.parse("market://details?id=com.wolinlabs.SuperScorepad")); 

相反,它將直接進入您的應用的Android Market頁面。

我認為這更像是你想要的(?)

找到答案到底:

Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setData(Uri.parse("market://search?q=pname:MyApp")); 
startActivity(intent);

但是,無法在模擬器上進行測試。

嗨,我正在嘗試實現相同,但有一個小的差異

我不想在我的應用程序上打開它

public void start(JSONArray args, CallbackContext callback) {

    Intent launchIntent;
    String packageName;
    String activity;
    String uri;
    ComponentName comp;

    try {
        packageName = args.getString(0); //com.android.vending
        activity    = args.getString(1); //com.google.android.finsky.activities.LaunchUrlHandlerActivity
        uri         = args.getString(2); //'market://details?id=com.triplingo.enterprise'

        launchIntent = this.cordova.getActivity().getPackageManager().getLaunchIntentForPackage(packageName);
        comp = new ComponentName(packageName, activity);
        launchIntent.setComponent(comp);
        launchIntent.setData(Uri.parse(uri));

        this.cordova.getActivity().startActivity(launchIntent);
        callback.success();
    } catch (Exception e) {
        callback.error(e.toString());
    }
}

這里的不同之處是你開始一個新的應用程序不僅僅是在你的應用程序中顯示GOOGLE

這段代碼是Cordova插件的一部分,但是你需要做的就是本機使用它。

重要的線索

launchIntent = this.cordova.getActivity().getPackageManager().getLaunchIntentForPackage(packageName);
comp = new ComponentName(packageName, activity);
launchIntent.setComponent(comp);
launchIntent.setData(Uri.parse(uri));

問候

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM