অটোমেটারে তৈরি URL হ্যান্ডলার অ্যাপ্লিকেশনটিতে কীভাবে ক্লিক করা URL টি অ্যাক্সেস করবেন access


14

আমি বর্তমানে ওএস এক্স-তে ডিফল্ট ইউআরএল হ্যান্ডলিং আচরণটি পরিবর্তন করার চেষ্টা করছি a কোনও ওয়েব ব্রাউজারের বাইরের যে কোনও লিঙ্কে ক্লিক করার সময় আমি এই URL টি ডিফল্ট ওয়েব ব্রাউজারে না খোলার পরিবর্তে পেস্টবোর্ডে অনুলিপি করতে চাই - উদাহরণস্বরূপ স্কাইপ কথোপকথনের লিঙ্কটিতে ক্লিক করা উচিত ফায়ারফক্সে এটি খোলার পরিবর্তে এই URL টি অনুলিপি করা উচিত (এটি বর্তমানে আমার ডিফল্ট ওয়েব ব্রাউজার)।

আমি সমাধানগুলি সম্পর্কে চিন্তাভাবনা করেছি, তবে আমি বর্তমানে এটি কার্যকর করতে অক্ষম। যদি আমি এমন একটি অ্যাপ্লিকেশন তৈরি করতে পারি যা এতে প্রেরিত পেস্টবোর্ডে ইউআরএল রাখে এবং এই অ্যাপ্লিকেশনটিকে ডিফল্ট ওয়েব ব্রাউজার হিসাবে সেট করতে পারি তবে আমি আমার লক্ষ্য অর্জন করতে সক্ষম হব।

আমি অটোমেটরের সাহায্যে একটি অ্যাপ্লিকেশন তৈরি করেছি যা শেল কমান্ড কার্যকর করে pbcopyএবং এই অ্যাপ্লিকেশনটিকে আমার ডিফল্ট ওয়েব ব্রাউজার হিসাবে সেট করেছে, তবে আমি প্রত্যাশিত ফলাফল পাইনি। আমি কিছু পরীক্ষা করেছি এবং আমি নিশ্চিত করতে পারি যে অ্যাপ্লিকেশনটি কোনও লিঙ্কে ক্লিক করার পরে চলছে, তবে আমি অ্যাপ্লিকেশনটি / শেল স্ক্রিপ্টে URL টি পাস করতে পারি না। আমি উভয় স্টিডিন বা পাস হওয়া যুক্তি দিয়ে চেষ্টা করেছি, তবে সাফল্য ছাড়াই।

যখন কোনও অ্যাপ্লিকেশনটি pbcopyইউআরএলগুলির জন্য (ডিফল্ট) হ্যান্ডলার হিসাবে সেট করা থাকে , তখন কোনও ক্লিকযুক্ত ইউআরএলটি পুনরুদ্ধার করতে এবং এটিকে প্রেরণ করার জন্য অটোমেটরের সাথে তৈরি কোনও অ্যাপ্লিকেশনের কি উপায় আছে ?

বিকল্পভাবে, কোনও জাল ওয়েব ব্রাউজার তৈরি করার কী আরও ভাল উপায় আছে যা ইনপুট নেয় এবং এটি অটোমেটরের চেয়ে পেস্টবোর্ডে রাখে? বা অন্য কোনও উপায় আছে যে আমি কাস্টম অ্যাপ্লিকেশন / স্ক্রিপ্ট ছাড়া আমার লক্ষ্য অর্জন করতে পারি?


এটি কোনও সম্পূর্ণ সমাধান নয় বলে এটি উত্তর হিসাবে রাখছে না, তবে এটি একটি সূচনা - আমি ডিফল্ট ব্রাউজার হিসাবে একটি অটোমেটার অ্যাপ্লিকেশন সেট করতে রুবিকোড / সফটওয়্যার / আরসিডিএফএল্ট অ্যাপ ব্যবহার করেছি । অটোমেটারে, ক্লিপবোর্ডে অনুলিপি করার জন্য একটি ক্রিয়া রয়েছে। আমি কেবল কোনও স্বয়ংক্রিয় অ্যাপটিতে কোনও পাঠ্য ইনপুট পেতে পারি না।
পেঙ্গুইনরোব

দিতো, তবে আমি চুসি ব্যবহার করেছি। আমি মোটামুটি পরীক্ষা করেছি এবং আমি নিম্নলিখিতগুলি পেয়েছি: 1) অটোমেটার অ্যাপ্লিকেশনটি চালিত হয়। 2) এটি মোটেও কোনও ধরণের ইনপুট পাবেন বলে মনে হয় না। 3) তবে, যখন কোনও ব্রাউজারকে একটি "লিঙ্ক" প্রেরণ করা হয়, তখন এটি সরলরেখায় একটি URL প্রেরণ করা হয় না। এটি অবশ্যই অন্যরকমভাবে পরিচালনা করা উচিত এবং প্রশ্নটি আসলে এটিই।
তীমথিয় মুয়েলার-হার্ডার

উত্তর:


13

ম্যাক ওএস এক্সে ইউআরএল খোলার উপায়টি আসলে আপনি যতটা ভাবেন তার চেয়ে জটিল। আপনি যখন কোনও ইউআরএল ক্লিক করেন, ম্যাক ওএস এক্স ব্রাউজারটি URL খোলার জন্য কেবল পাস করে না; পরিবর্তে, এটি kAEGetURLURL সহ আইডি সহ এটি একটি অ্যাপল ইভেন্ট প্রেরণ করে ।

আমি কখনই অটোমেটার ব্যবহার করি নি (এটি আমার সাধারণ ব্যবহারের জন্য খুব ধীর এবং সীমাবদ্ধ), সুতরাং আমি এটি সম্পর্কে নিশ্চিত নই, তবে আমি সন্দেহ করি যে এটি অ্যাপল ইভেন্টগুলি পরিচালনা করার ক্ষমতা রাখে। অতএব আপনি যা চান তা অর্জন করতে আপনি অটোমেটার ব্যবহার করতে সক্ষম হবেন না।

অতএব আপনাকে এক্সকোডে একটি সাধারণ উদ্দেশ্য-সি অ্যাপ্লিকেশনটি নিতে হবে।

আপনার দুটি করণীয় করা উচিত:

  1. kAEGetURL ইভেন্টটি পাওয়ার জন্য আপনার অ্যাপ্লিকেশনটিকে নিবন্ধভুক্ত করুন এবং CFBundleURLTypesএতে অন্তর্ভুক্ত করতে httpএবং আপনার অ্যাপ্লিকেশনটির তথ্য.পল্লিস্টে সেট করুন https

  2. কেএজিএইটিআরএল ইভেন্টটি পরিচালনা করে এমন একটি পদ্ধতি প্রয়োগ করুন এবং এটিকে ক্লিপবোর্ডে অনুলিপি করুন।

এই দুটি জিনিস উদ্দেশ্য-সি করতে তুলনামূলকভাবে সহজ; উদাহরণস্বরূপ, আমি একটি নমুনা অ্যাপ্লিকেশন তৈরি করেছি যা এটি করে। আপনি এটি https://github.com/houbysoft/short/tree/master/Copy%20URL%20to%20 ক্লিপবোর্ডে দেখতে পারেন । সর্বাধিক গুরুত্বপূর্ণ ফাইলটি হল https://github.com/houbysoft/short/blob/master/Copy%20URL%20to%20Clipboard/Copy%20URL%20to%20Clipboard/appDelegate.m , সেখানে আপনি কীভাবে নিবন্ধন করবেন তা দেখতে পারেন ইভেন্ট (এটি অ্যাপ্লিকেশনটিতে সম্পন্ন করা হবে উইলফিনিশল্যাঞ্চিং: পদ্ধতি) এবং কীভাবে এটি ক্লিপবোর্ডে অনুলিপি করতে হবে (এটি getUrl এ সম্পন্ন হয়েছে: WithReplyEvent: পদ্ধতি)।

যদি আপনি অলস বোধ করেন এবং কেবল এটি দেখতে চান যে এই কাজ করে, এই ফাইলটি ধরুন, এখান থেকে অ্যাপ্লিকেশনটি এক্সট্রাক্ট করুন , এটি ডিফল্ট ওয়েব ব্রাউজার হিসাবে সেট করুন (সাফারি পছন্দগুলি খুলুন, এবং ডিফল্ট ওয়েব ব্রাউজার ক্ষেত্রে অ্যাপ্লিকেশনটি ব্রাউজ করুন)। তারপরে স্কাইপে আপনার লিঙ্কটিতে ক্লিক করুন এবং এটি সরাসরি আপনার ক্লিপবোর্ডে অনুলিপি করা উচিত।


আপনার উত্তর করার জন্য আপনাকে ধন্যবাদ। ইউএসএল কীভাবে ওএসএক্সে এগিয়ে গেল তা আমি জানতাম না। আমি আপনার কোডটি একবার দেখেছি, তবে আমি ওজেক্টিভ-সি খুব বেশি জানি না। তবে, আপনার ফলস্বরূপ অ্যাপ্লিকেশনটি কবজির মতো কাজ করে এবং যা আমি প্রথম থেকেই চেয়েছিলাম। আবার ধন্যবাদ!
DjDCH

অ্যাপটিতে দুর্দান্ত কাজ (চলুন)। আমি অনুগ্রহ প্রদান করতে চাই, তবে অটোম্যাটর যদি কোনও কেএইজিটিআরএল ইভেন্টটি স্বীকার করতে বাধ্য হয় (বা না পারে) তবে এই প্রশ্নে আমি কিছু নির্দিষ্ট তথ্য মিস করছি।
kopischke

@ কোপিশচে: অ্যাপল ইভেন্টগুলির উল্লেখ করার জন্য আমি কেবল অটোমেটার সহায়তা অনুসন্ধান করেছি, এবং কিছুই পাওয়া যায় নি। আমি মনে করি মোটামুটি অটোমেটর এটি সমর্থন করে না mat
houbysoft

অ্যাপলস্ক্রিপ্টের সাহায্যে এটি করা সম্ভব, এটি এক্সকোড / ওবিজেসি-তে না গিয়ে নিজের অ্যাপ্লিকেশন সংকলন না করে অটোমেটরের ওয়ার্কফ্লো প্রসারিত করার "যৌক্তিক" উপায়। (
এগুলি

এটি 10.11 তে কাজ করছে বলে মনে হচ্ছে না। "/ অ্যাপ্লিকেশনস / ক্লিপবোর্ডে ইউআরএল অনুলিপি করুন HTTP ব্রাউজার হিসাবে উপলব্ধ নয়"
টিজে লুওমা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.