2011-08-02 30 views
6

Tôi đang phát triển một ứng dụng để tải xuống hình ảnh. Tôi đã kích hoạt thành công ứng dụng của mình khi người dùng nhấp vào liên kết tải xuống hình ảnh.Tôi làm cách nào để lọc URL cụ thể?url bộ lọc android trong "intent-filter"

đây đang biểu hiện của tôi:

<activity android:theme="@style/Transparent" android:name=".DownloadImage" 
     android:label="@string/app_name"> 
     <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:mimeType="image/*" android:host="*" 
       android:scheme="http" /> 
     </intent-filter> 
</activity> 

ứng dụng của tôi sẽ khởi động và tải về hình ảnh khi người dùng nhấp vào bất kỳ liên kết trong trình duyệt nhưng không kích hoạt trên url cụ thể, ví dụ như "http://www.ABC.com "hoặc các mục cụ thể 'http://www.ABC.com/image/background.jpg'

Trả lời

7

khi ứng dụng của bạn được gọi là cho hình ảnh tải về, bạn nên khám phá liên kết:

Intent intent = getIntent(); 
    String link = intent.getDataString(); 
2

Xem hữu ích khác ttributes (pathPattern, pathPrefix) của thẻ dữ liệu tại đây: http://developer.android.com/guide/topics/manifest/data-element.html.

+0

Link chỉ câu trả lời là không được chào đón để Stack Overflow. – hims056

+1

@kaviddiss - chào mừng bạn đến với StackOverflow, và đó là một câu trả lời hay, nhưng đối với nhiều upvotes, bạn có thể mở rộng nó một chút có lẽ với các ví dụ cụ thể trong câu hỏi? SO thích có câu trả lời đầy đủ hơn, không chỉ liên kết, cảm ơn. BTW, đây là câu hỏi thường gặp về [Tại sao liên kết xấu?] (Http://meta.stackexchange.com/questions/7515/why-is-linking-bad) –

1

dụ đơn giản bằng cách get url từ lọc ý:

public class openUrl extends Activity{ 

    String link; 
    TextView text; 

    public void onCreate(Bundle savedInstanceState){ 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.xmlname); 

     Intent intent = getIntent(); 
      link = intent.getDataString(); 

      text = (TextView)findViewById(R.id.textViewId); 
      text.setText(link.toString()); 
    } 
} 
Các vấn đề liên quan