[英]How to place a Market link inside an App?
在我的應用程序中,我希望有一些類似“點擊此處”的內容,其中“HERE”是市場中應用程序的鏈接。
所以我做到了:
TextView link = (TextView) findViewById(R.id.appbrain);
link.setText("market://details?id=com.appspot.swisscodemonkeys.apps&hl=pt_PT");
Linkify.addLinks(link, Linkify.ALL);
但這不起作用。 我應該怎么做?
使用鏈接的Web版本: http://market.android.com/details?id=<package name>
: http://market.android.com/details?id=<package name>
。 將提示用戶是否希望在瀏覽器或市場應用程序中打開鏈接,或者如果他們已經選擇了默認值,它將立即打開。
您還可以使用一些HTML並設置TextView的文本,如下所示:
textView.setText(Html.fromHtml("<a href=\\"market://details?id=com.appspot.swisscodemonkeys.apps&hl=pt_PT\\">CLICK HERE</a>"));
您只需定義一個模式,因為此URL是為市場應用程序定義的自定義。
Pattern appWordMatcher = Pattern.compile("\\b[A-Z]+[a-z0-9]+[A-Z][A-Za-z0-9]+\\b");
String appMarketURL = "market://details?id=com.appspot.swisscodemonkeys.apps&hl=pt_PT";
Linkify.addLinks(txtView, appWordMatcher, appMarketURL);
有關更多信息,請參閱WikiNotes:鏈接您的文本!
好的,兩個答案都是正確的; 兩者的問題是鏈接不可點擊。 但是,我發現了這個問題。
當我們想要(直接)鏈接URL時,我們必須這樣做:
TextView link = (TextView) findViewById(R.id.url);
link.setText("http://google.pt");
Linkify.addLinks(link, Linkify.ALL);
但是當我們想要“玩”我們需要使用的鏈接時(如另一個答案所述)我們可以使用HTML:
TextView link = (TextView) findViewById(R.id.appbrain);
link.setText(Html.fromHtml("" +
"- Download <a href=\"https://market.android.com/details?id=com.appspot.swisscodemonkeys.apps\">Appbrain</a>" +
" to update all your apps!"));
即使我們使用以下代碼,該鏈接也不會被點擊。
Linkify.addLinks(link, Linkify.ALL);
解決方案只是使用以下代碼:
link.setMovementMethod(LinkMovementMethod.getInstance());
另一個選擇是只創建一個按鈕或可單擊的文本字段,然后從那里啟動一個活動。
try
{
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=com.mypackage.myapp")));
} catch (ActivityNotFoundException e) {
Toast.makeText(this, "Cannot load Play Store", Toast.LENGTH_SHORT).show();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.