SHARE_INTENT & URL-Shortner

StefMa

StefMa

Dauergast
450
Hi,

ich möchte meinen Inhalt der App sharen. Dazu benutze ich einfach das SHARE_INTENT.
Dazu sage ich auch setType("text/plain").
Leider werden Links, die darin enthalten sind, aber nicht als Links angezeigt sondern eben nur als Plain Text :D
Weiß jemand wie ich aus den Links einen Link mache, der rest aber als plan text?!
Mein Ergebniss sollte so aussehen
Das könnte dich interessieren
Google

Desweiteren möchte ich dann die URL, die ich übergebe, vorher shorten. Kennt da jmd eine gute Libary oder hat jemand nen Quelltext den ich "einfach" einbinden kann?

Danke und Gruß
 
  • Danke
Reaktionen: GENiALi
Also, ja das funktioniert! Mit tinyurl!

Du brauchst erstmal diese Library: HttpClient - HttpClient Home

dann importierst du in der .class Datei folgende Dinge:

Code:
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpMethod;
import org.apache.commons.httpclient.NameValuePair;
import org.apache.commons.httpclient.methods.GetMethod;

und hier ist der Code:

Code:
public abstract class TinyURLUtils {
	public static String getTinyUrl(String fullUrl) throws HttpException, IOException {
		HttpClient httpclient = new HttpClient();
 
		// Prepare a request object
		HttpMethod method = new GetMethod("http://tinyurl.com/api-create.php"); 
		method.setQueryString(new NameValuePair[]{new NameValuePair("url",fullUrl)});
		httpclient.executeMethod(method);
		String tinyUrl = method.getResponseBodyAsString();
		method.releaseConnection();
		return tinyUrl;
	}
}

dann kannst du einfach das hier aufrufen und bekommst deinen gekürzten link:

Code:
String tinyUrl = TinyURLUtils.getTinyUrl("http://www.diewebsite.com");
System.out.println(tinyUrl); // --> http://tinyurl.com/6gf83

In Java sollte es eig. funktionieren, habs aber mit Android nicht getestet :flapper:
 
  • Danke
Reaktionen: StefMa
Hey vielen dank.
Werd es mal testen und berichten wie und ob es funktioniert :p

Jemand mit den links eine idee?

Gesendet von meinem Galaxy Nexus mit der Android-Hilfe.de App
 
Hey,
Wenn die App aus dem Text eine URL herausparsen kann, dann wird der Link auch als Link dargestellt. Das ganze hängt also von der Interpreation der App ab, die deinen geshareden Text. Ich _glaube_ du hast da keine Möglichkeit Einfluss zu nehmen. Wenn die App HTML kann, dann könntest du überlegen den Link zu parsen und ein a href drum herum zu bauen.
 
Hey,

ja ist mir im nachinein auch eingefallen.
Ich share es zwar als plain text, aber der andere betrachtet mein geteiltes ja via G+/Facebook/what ever und diese Apps/Brwoser/what ever² können ja die Links interpretieren :)

danke Gruß

Ice

Der ursprüngliche Beitrag von 18:50 Uhr wurde um 19:32 Uhr ergänzt:

Also es geht auch ohne iwelche Importe von klassen. Android bzw Java bietet schon alles "von haus aus".

Code:
import java.io.IOException;

import org.apache.http.HttpEntity;
import org.apache.http.HttpException;
import org.apache.http.HttpResponse;
import org.apache.http.client.HttpClient;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.impl.client.DefaultHttpClient;
import org.apache.http.util.EntityUtils;


public abstract class TinyUrlCreater 
{
	public static String getTinyUrl(String fullUrl) throws HttpException, IOException 
	{
		String response = "STATIC";
		HttpClient client = new DefaultHttpClient(); 
		String getURL = "http://tinyurl.com/api-create.php?url="+fullUrl;
		HttpGet get = new HttpGet(getURL);
		HttpResponse responseGet = client.execute(get);  
		HttpEntity resEntityGet = responseGet.getEntity();   
		if (resEntityGet != null) 
		{
			response = EntityUtils.toString(resEntityGet);     
		}

		return response;
	}

}

Dennoch danke m1s73r :)
 
  • Danke
Reaktionen: GENiALi

Ähnliche Themen

H
Antworten
2
Aufrufe
911
swa00
swa00
S
Antworten
0
Aufrufe
728
stikker
S
Erdal.Cam
Antworten
9
Aufrufe
1.482
lordzwieback
lordzwieback
Zurück
Oben Unten