Можно ли добавить значок приложения, как показано в Live Aquarium Wallpaper (https://play.google.com/store/apps/details?id=fishnoodle.aquarium_free&feature=search_result#?t=W251bGwsMSwxLDEsImZpc2hub29kbGUuYXF1YXJpdW1fZnJlZSJd) Когда я устанавливаю это обои, он показывает и значок, который открывает страницу настроек при нажатии на нее. Кто-нибудь делал это раньше?
Как добавить значок приложения в живые обои Android, как обычные приложения
comment
извините, правильная ссылка: [play.google.com/store/apps/
- person SoH   schedule 10.05.2012
Ответы (3)
Вам нужно будет объявить Activity в вашем AndroidManifest.xml
со значением по умолчанию intent-filter< /а>:
<activity
android:name="com.your.company.ui.SettingsActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
person
Blundell
schedule
10.05.2012
Прежде всего, вы должны создать Activity
:
public class SetLiveWallpaperActivity extends Activity{
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = new Intent();
if(Build.VERSION.SDK_INT >= 16)
{
intent.setAction(WallpaperManager.ACTION_CHANGE_LIVE_WALLPAPER);
intent.putExtra(WallpaperManager.EXTRA_LIVE_WALLPAPER_COMPONENT, new ComponentName(this, LibGDXWallpaperService.class));
}
else
{
intent.setAction(WallpaperManager.ACTION_LIVE_WALLPAPER_CHOOSER);
}
startActivity(intent);
finish();
}
}
Затем в вашем AndroidManifest.xml
вы должны добавить следующий код:
<activity
android:name=".SetLiveWallpaperActivity"
android:label="@string/app_name"
android:theme="@android:style/Theme.Light.WallpaperSettings" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Он создает значок, который открывает страницу настроек при нажатии на нее. Надеюсь, это поможет вам или кому-то еще.
person
Nolesh
schedule
23.12.2013
Для тех, кто все еще ищет правильный ответ:
Вам нужно объявить тег <meta-data>
внутри вашего объявления тега службы обоев внутри файла манифеста:
<service
android:name=".MyWallpaperService"
android:enabled="true"
android:label="My Wallpaper"
android:permission="android.permission.BIND_WALLPAPER" >
<intent-filter>
<action android:name="android.service.wallpaper.WallpaperService"/>
</intent-filter>
<meta-data
android:name="android.service.wallpaper"
android:resource="@xml/wallpaper" >
</meta-data>
</service>
Этот тег указывает на xml-файл, содержащий информацию об значке обоев, который отображается в разделе «Живые обои»:
<?xml version="1.0" encoding="UTF-8"?>
<wallpaper
xmlns:android="http://schemas.android.com/apk/res/android"
android:label="GIF Wallpaper"
android:thumbnail="@android:drawable/btn_star">
</wallpaper>
Итак, android:thumbnail
— это место, где вы устанавливаете ресурс для значка.
person
revolutionary
schedule
23.08.2017