Selam Demirkan,
Neden böyle bir uygulamaya ihtiyaç duyduğunu biraz daha açıklayabilir misin?
Bence yapman gerekenler sırasıyla:
1. Gizleyeceğin uygulamandaki AndroidManifest.xml dosyasından Launcher activity ile ilgili bilgileri silmen. Yani aşağıdaki filterleri kaldırman gerekiyor.
<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>
2. Bir ussd numarası çevrilince bunu yakalayıp senin belirlediğin formata uygun olunca da, intent filterları kaldırdığın activity açman gerekecek. Yani normaldeki launcher activity'in.
USSD receive eden bir şey yazman için bazı linkeri incelemeni gerekecek. Bunu yakalayan bir service olması gerekiyor. Manifest dosyanda şöyle birşey olması gerekiyor.
<service android:name=".CDUSSDService" android:enabled="true" android:exported="true" >
<intent-filter> <action android:name="com.android.ussd.IExtendedNetworkService" /> </intent-filter>
</service>
http://stackoverflow.com/questions/12594250/ussd-service-not-working
http://stackoverflow.com/questions/10722178/android-implementing-ussd-features-binding-a-service-to-the-phoneutils-withou
Not: Bende bir ara bir proje için bu ussd işleri ile uğraşmıştım. Yazdığın servisin ussd'leri yakalayabilmesi için uygulamayı yükledikten sonra telefona bir restart atman gerekiyor.
Eğer araştırmaların sonucunda sorun devam ederse tekrar buraya yazabilirsin :)